Basically sync with r21-2-19-utf-2000-0_12-0. r21-4-10-kanon-0_12-0s
authortomo <tomo>
Thu, 19 Dec 2002 16:49:41 +0000 (16:49 +0000)
committertomo <tomo>
Thu, 19 Dec 2002 16:49:41 +0000 (16:49 +0000)
86 files changed:
lisp/ChangeLog
lisp/bytecomp.el
lisp/dump-paths.el
lisp/dumped-lisp.el
lisp/mule/ethiopic.el
lisp/mule/mule-charset.el
lisp/mule/mule-conf.el
lisp/setup-paths.el
lisp/startup.el
lisp/utf-2000/auto-autoloads.el [new file with mode: 0644]
lisp/utf-2000/ccs-viscii.el [deleted file]
lisp/utf-2000/char-db-util.el [new file with mode: 0644]
lisp/utf-2000/u00020-Basic-Latin.el
lisp/utf-2000/u000A0-Latin-1-Supplement.el
lisp/utf-2000/u00100-Latin-Extended-A.el
lisp/utf-2000/u00180-Latin-Extended-B.el
lisp/utf-2000/u00250-IPA-Extensions.el
lisp/utf-2000/u002B0-Spacing-Modifier-Letters.el
lisp/utf-2000/u00300-Combining-Diacritical-Marks.el
lisp/utf-2000/u00370-Greek.el
lisp/utf-2000/u00400-Cyrillic.el [new file with mode: 0644]
lisp/utf-2000/u00530-Armenian.el [new file with mode: 0644]
lisp/utf-2000/u00590-Hebrew.el [new file with mode: 0644]
lisp/utf-2000/u00600-Arabic.el [new file with mode: 0644]
lisp/utf-2000/u00700-Syriac.el [new file with mode: 0644]
lisp/utf-2000/u00780-Thaana.el [new file with mode: 0644]
lisp/utf-2000/u00900-Devanagari.el [new file with mode: 0644]
lisp/utf-2000/u00980-Bengali.el [new file with mode: 0644]
lisp/utf-2000/u00A00-Gurmukhi.el [new file with mode: 0644]
lisp/utf-2000/u00A80-Gujarati.el [new file with mode: 0644]
lisp/utf-2000/u00B00-Oriya.el [new file with mode: 0644]
lisp/utf-2000/u00B80-Tamil.el [new file with mode: 0644]
lisp/utf-2000/u00C00-Telugu.el [new file with mode: 0644]
lisp/utf-2000/u00C80-Kannada.el [new file with mode: 0644]
lisp/utf-2000/u00D00-Malayalam.el [new file with mode: 0644]
lisp/utf-2000/u00D80-Sinhala.el [new file with mode: 0644]
lisp/utf-2000/u00E00-Thai.el [new file with mode: 0644]
lisp/utf-2000/u00E80-Lao.el [new file with mode: 0644]
lisp/utf-2000/u00F00-Tibetan.el [new file with mode: 0644]
lisp/utf-2000/u01000-Myanmar.el [new file with mode: 0644]
lisp/utf-2000/u010A0-Georgian.el [new file with mode: 0644]
lisp/utf-2000/u01100-Hangul-Jamo.el [new file with mode: 0644]
lisp/utf-2000/u01200-Ethiopic.el [new file with mode: 0644]
lisp/utf-2000/u013A0-Cherokee.el [new file with mode: 0644]
lisp/utf-2000/u01400-Canadian.el [new file with mode: 0644]
lisp/utf-2000/u01680-Ogham.el [new file with mode: 0644]
lisp/utf-2000/u016A0-Runic.el [new file with mode: 0644]
lisp/utf-2000/u01780-Khmer.el [new file with mode: 0644]
lisp/utf-2000/u01800-Mongolian.el [new file with mode: 0644]
lisp/utf-2000/u01E00-Latin-Extended-Additional.el [new file with mode: 0644]
lisp/utf-2000/u01F00-Greek-Extended.el [new file with mode: 0644]
lisp/utf-2000/u02000-General-Punctuation.el [new file with mode: 0644]
lisp/utf-2000/u02070-Superscripts.el [new file with mode: 0644]
lisp/utf-2000/u02080-Subscripts.el [new file with mode: 0644]
lisp/utf-2000/u020A0-Currency-Symbols.el [new file with mode: 0644]
lisp/utf-2000/u020D0-Combining-Diacritical-Marks-for-Symbols.el [new file with mode: 0644]
lisp/utf-2000/u02100-Letterlike-Symbols.el [new file with mode: 0644]
lisp/utf-2000/u02150-Number-Forms.el [new file with mode: 0644]
lisp/utf-2000/u02190-Arrows.el [new file with mode: 0644]
lisp/utf-2000/u02200-Mathematical-Operators.el [new file with mode: 0644]
lisp/utf-2000/u02300-Miscellaneous-Technical.el [new file with mode: 0644]
lisp/utf-2000/u02400-Control-Pictures.el [new file with mode: 0644]
lisp/utf-2000/u02440-OCR.el [new file with mode: 0644]
lisp/utf-2000/u02460-Enclosed-Alphanumerics.el [new file with mode: 0644]
lisp/utf-2000/u02500-Box-Drawing.el [new file with mode: 0644]
lisp/utf-2000/u02580-Block-Elements.el [new file with mode: 0644]
lisp/utf-2000/u025A0-Geometric-Shapes.el [new file with mode: 0644]
lisp/utf-2000/u02600-Miscellaneous-Symbols.el [new file with mode: 0644]
lisp/utf-2000/u02700-Dingbats.el [new file with mode: 0644]
lisp/utf-2000/u02800-Braille-Patterns.el [new file with mode: 0644]
lisp/utf-2000/u02E00-CJK-Radical-Supplement.el [new file with mode: 0644]
lisp/utf-2000/u02F00-Kangxi-Radicals.el [new file with mode: 0644]
lisp/utf-2000/u02FF0-Ideographic-Description-Characters.el [new file with mode: 0644]
lisp/utf-2000/u03000-CJK-Symbols-and-Punctuation.el [new file with mode: 0644]
lisp/utf-2000/u03040-Hiragana.el [new file with mode: 0644]
lisp/utf-2000/u030A0-Katakana.el [new file with mode: 0644]
lisp/utf-2000/u03100-Bopomofo.el [new file with mode: 0644]
lisp/utf-2000/u03130-Hangul-Compatibility-Jamo.el [new file with mode: 0644]
lisp/utf-2000/u03190-Kanbun.el [new file with mode: 0644]
lisp/utf-2000/u031A0-Extended-Bopomofo.el [new file with mode: 0644]
lisp/utf-2000/u03200-Enclosed-CJK-Letters-and-Months.el [new file with mode: 0644]
lisp/utf-2000/u03300-CJK-Compatibility.el [new file with mode: 0644]
src/ChangeLog
src/char-ucs.h
src/lrecord.h
src/mule-charset.c

index d9dc2da..365fd8c 100644 (file)
@@ -1,3 +1,309 @@
+2002-08-13  MORIOKA Tomohiko  <tomo@mousai.as.wakwak.ne.jp>
+
+       * setup-paths.el (paths-find-utf-2000-lisp-directory): Use
+       `configure-utf-2000-lisp-directory'.
+       (paths-construct-load-path): Prefer `utf-2000-lisp-load-path' to
+       `mule-lisp-load-path'.
+
+2002-08-13  MORIOKA Tomohiko  <tomo@mousai.as.wakwak.ne.jp>
+
+       * startup.el (startup-setup-paths): Set and use
+       `utf-2000-lisp-directory'.
+       (startup-setup-paths-warning): Check `utf-2000-lisp-directory' in
+       UTF-2000.
+
+2002-08-12  MORIOKA Tomohiko  <tomo@mousai.as.wakwak.ne.jp>
+
+       * setup-paths.el (paths-utf-2000-load-path-depth): New variable.
+       (paths-find-utf-2000-lisp-directory): New function.
+       (paths-construct-load-path): Add new optional argument
+       `utf-2000-lisp-directory'.
+
+       * dump-paths.el: Set and use `utf-2000-lisp-directory'.
+
+1999-11-15  MORIOKA Tomohiko  <tomo@etl.go.jp>
+
+       * dumped-lisp.el (preloaded-file-list): Add
+       "u031A0-Extended-Bopomofo" in UTF-2000.
+
+       * utf-2000/u031A0-Extended-Bopomofo.el: New file.
+
+1999-11-15  MORIOKA Tomohiko  <tomo@etl.go.jp>
+
+       * dumped-lisp.el (preloaded-file-list): u02E00-CJK-Radicals was
+       renamed to u02E00-CJK-Radical-Supplement.
+
+       * utf-2000/u02E00-CJK-Radical-Supplement.el: Renamed from
+       u02E00-CJK-Radicals.el.
+
+1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * dumped-lisp.el (preloaded-file-list): Add
+       "u03000-CJK-Symbols-and-Punctuation", "u03040-Hiragana",
+       "u030A0-Katakana", "u03100-Bopomofo",
+       "u03130-Hangul-Compatibility-Jamo", "u03190-Kanbun",
+       "u03200-Enclosed-CJK-Letters-and-Months" and
+       "u03300-CJK-Compatibility".
+
+       * utf-2000/u03000-CJK-Symbols-and-Punctuation.el,
+       utf-2000/u03040-Hiragana.el, utf-2000/u030A0-Katakana.el,
+       utf-2000/u03100-Bopomofo.el,
+       utf-2000/u03130-Hangul-Compatibility-Jamo.el,
+       utf-2000/u03190-Kanbun.el,
+       utf-2000/u03200-Enclosed-CJK-Letters-and-Months.el,
+       utf-2000/u03300-CJK-Compatibility.el: New files.
+
+1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * dumped-lisp.el (preloaded-file-list): Add "u02E00-CJK-Radicals",
+       "u02F00-Kangxi-Radicals" and
+       "u02FF0-Ideographic-Description-Characters".
+
+       * utf-2000/u02E00-CJK-Radicals.el,
+       utf-2000/u02F00-Kangxi-Radicals.el,
+       utf-2000/u02FF0-Ideographic-Description-Characters.el: New files.
+
+1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * dumped-lisp.el (preloaded-file-list): Add
+       "u02600-Miscellaneous-Symbols", "u02700-Dingbats" and
+       "u02800-Braille-Patterns" in UTF-2000.
+
+       * utf-2000/u02600-Miscellaneous-Symbols.el,
+       utf-2000/u02700-Dingbats.el, utf-2000/u02800-Braille-Patterns.el:
+       New files.
+
+1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * dumped-lisp.el (preloaded-file-list): Load "uXXXXX-*" instead of
+       "uXXXXX-*.el" in UTF-2000.
+
+       * bytecomp.el (byte-compile-insert-header): Delete comments if
+       non-ASCII characters are found; allow `byte-compile-dynamic' and
+       `byte-compile-dynamic-docstrings' if *.elc will be encoded by
+       `raw-text'.
+
+1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * dumped-lisp.el (preloaded-file-list): Add
+       "u02500-Box-Drawing.el", "u02580-Block-Elements.el" and
+       "u025A0-Geometric-Shapes.el".
+
+       * utf-2000/u02500-Box-Drawing.el,
+       utf-2000/u02580-Block-Elements.el,
+       utf-2000/u025A0-Geometric-Shapes.el: New file.
+
+       * utf-2000/u02500-Box-Drawing.el,
+       utf-2000/u02580-Block-Elements.el,
+       utf-2000/u025A0-Geometric-Shapes.el: New files.
+
+1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * dumped-lisp.el (preloaded-file-list): Add
+       "u02400-Control-Pictures.el", "u02440-OCR.el" and
+       "u02460-Enclosed-Alphanumerics.el".
+
+       * utf-2000/u02400-Control-Pictures.el, utf-2000/u02440-OCR.el,
+       utf-2000/u02460-Enclosed-Alphanumerics.el: New files.
+
+1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * mule/mule-charset.el (default-coded-charset-priority-list): Add
+       `chinese-gb2312'.
+
+       * dumped-lisp.el (preloaded-file-list): Add
+       "u02200-Mathematical-Operators.el" and
+       "u02300-Miscellaneous-Technical.el".
+
+       * utf-2000/u02200-Mathematical-Operators.el,
+       utf-2000/u02300-Miscellaneous-Technical.el: New files.
+
+1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * mule/mule-charset.el (default-coded-charset-priority-list): Add
+       `chinese-cns11643-*'.
+
+       * dumped-lisp.el (preloaded-file-list): Add
+       "u02100-Letterlike-Symbols.el", "u02150-Number-Forms.el" and
+       "u02190-Arrows.el" in UTF-2000.
+
+       * utf-2000/u02100-Letterlike-Symbols.el,
+       utf-2000/u02150-Number-Forms.el, utf-2000/u02190-Arrows.el: New
+       files.
+
+1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * mule/mule-charset.el (default-coded-charset-priority-list): Add
+       `korean-ksc5601'.
+
+       * dumped-lisp.el (preloaded-file-list): Add
+       "u02000-General-Punctuation.el", "u02070-Superscripts.el",
+       "u02080-Subscripts.el", "u020A0-Currency-Symbols.el" and
+       "u020D0-Combining-Diacritical-Marks-for-Symbols.el" in UTF-2000.
+
+       * utf-2000/u02000-General-Punctuation.el,
+       utf-2000/u02070-Superscripts.el, utf-2000/u02080-Subscripts.el,
+       utf-2000/u020A0-Currency-Symbols.el,
+       utf-2000/u020D0-Combining-Diacritical-Marks-for-Symbols.el: New
+       files.
+
+1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * utf-2000/u00180-Latin-Extended-B.el: Reformatted to print
+       code-point of GR-set as GR value.
+
+1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * utf-2000/char-db-util.el (insert-char-data): Modify order when
+       CHAR does not have `decimal-digit-value' property.
+
+       * utf-2000/u00100-Latin-Extended-A.el: Reformatted to print
+       code-point of GR-set as GR value.
+       (FULLWIDTH LATIN SMALL LIGATURE IJ): Separated from <LATIN SMALL
+       LIGATURE IJ>.
+
+       * utf-2000/u000A0-Latin-1-Supplement.el: Reformatted to print
+       code-point of GR-set as GR value.
+
+1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * dumped-lisp.el (preloaded-file-list): Delete "ccs-viscii.el".
+
+       * utf-2000/ccs-viscii.el: Deleted.
+
+1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * dumped-lisp.el (preloaded-file-list): Add "u013A0-Cherokee.el",
+       "u01400-Canadian.el", "u01680-Ogham.el", "u016A0-Runic.el",
+       "u01780-Khmer.el", "u01800-Mongolian.el",
+       "u01E00-Latin-Extended-Additional.el" and
+       "u01F00-Greek-Extended.el" in UTF-2000.
+
+       * utf-2000/u013A0-Cherokee.el, utf-2000/u01400-Canadian.el,
+       utf-2000/u01680-Ogham.el, utf-2000/u016A0-Runic.el,
+       utf-2000/u01780-Khmer.el, utf-2000/u01800-Mongolian.el,
+       utf-2000/u01E00-Latin-Extended-Additional.el,
+       utf-2000/u01F00-Greek-Extended.el: New files.
+
+1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * utf-2000/char-db-util.el (insert-char-data): Print GR value for
+       GR-set.
+
+1999-11-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * mule/mule-charset.el (default-coded-charset-priority-list): Add
+       `ethiopic-ucs' and `ethiopic'.
+
+       * dumped-lisp.el (preloaded-file-list): Add "u010A0-Georgian.el",
+       "u01100-Hangul-Jamo.el" and "u01200-Ethiopic.el".
+
+       * mule/mule-conf.el: Move definition of coded-charset `ethiopic'
+       from mule/ethiopic.el.
+
+       * mule/ethiopic.el: Move definition of coded-charset `ethiopic' to
+       mule/mule-conf.el.
+
+       * utf-2000/u010A0-Georgian.el, utf-2000/u01100-Hangul-Jamo.el,
+       utf-2000/u01200-Ethiopic.el: New files.
+
+1999-11-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * utf-2000/char-db-util.el (char-db-update-comment): Use
+       mapping-table for `arabic-iso8859-6'.
+       (insert-char-data-with-variant): New function.
+       (insert-char-range-data): Use `insert-char-data-with-variant'.
+       (what-char-definition): Use `insert-char-data-with-variant'
+       instead of `insert-char-data'; use `char-db-update-comment'.
+
+1999-11-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * mule/mule-charset.el (default-coded-charset-priority-list): Add
+       `lao'.
+
+       * mule/mule-conf.el (lao): New coded-charset.
+
+       * dumped-lisp.el (preloaded-file-list): Add
+       "u00900-Devanagari.el", "u00980-Bengali.el", "u00A00-Gurmukhi.el",
+       "u00A80-Gujarati.el", "u00B00-Oriya.el", "u00B80-Tamil.el",
+       "u00C00-Telugu.el", "u00C80-Kannada.el", "u00D00-Malayalam.el",
+       "u00D80-Sinhala.el", "u00E00-Thai.el", "u00E80-Lao.el",
+       "u00F00-Tibetan.el" and "u01000-Myanmar.el".
+
+       * utf-2000/u00900-Devanagari.el, utf-2000/u00980-Bengali.el,
+       utf-2000/u00A00-Gurmukhi.el, utf-2000/u00A80-Gujarati.el,
+       utf-2000/u00B00-Oriya.el, utf-2000/u00B80-Tamil.el,
+       utf-2000/u00C00-Telugu.el, utf-2000/u00C80-Kannada.el,
+       utf-2000/u00D00-Malayalam.el, utf-2000/u00D80-Sinhala.el,
+       utf-2000/u00E00-Thai.el, utf-2000/u00E80-Lao.el,
+       utf-2000/u00F00-Tibetan.el, utf-2000/u01000-Myanmar.el: New files.
+
+1999-11-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * mule/mule-charset.el (default-coded-charset-priority-list): Add
+       `ucs-bmp' and `arabic-iso8859-6'.
+
+1999-11-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * dumped-lisp.el (preloaded-file-list): Add "u00400-Cyrillic.el",
+       "u00530-Armenian.el", "u00590-Hebrew.el", "u00600-Arabic.el",
+       "u00700-Syriac.el" and "u00780-Thaana.el" in UTF-2000.
+
+       * utf-2000/u00400-Cyrillic.el, utf-2000/u00530-Armenian.el,
+       utf-2000/u00590-Hebrew.el, utf-2000/u00600-Arabic.el,
+       utf-2000/u00700-Syriac.el, utf-2000/u00780-Thaana.el: New files.
+
+1999-11-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * utf-2000/u00370-Greek.el (FULLWIDTH GREEK SMALL LETTER BETA):
+       Fix typo.
+
+       * utf-2000/u00300-Combining-Diacritical-Marks.el: Reformatted.
+
+1999-11-13  MORIOKA Tomohiko  <tomo@etl.go.jp>
+
+       * utf-2000/u002B0-Spacing-Modifier-Letters.el,
+       utf-2000/u00250-IPA-Extensions.el: Reformatted.
+
+1999-11-13  MORIOKA Tomohiko  <tomo@etl.go.jp>
+
+       * utf-2000/char-db-util.el (insert-char-data): Fix format of
+       `iso-10646-comment'; swap order of `->lowercase' and
+       `->titlecase'.
+
+       * utf-2000/u00180-Latin-Extended-B.el: Merge `latin-viscii'
+       code-points.
+
+1999-11-13  MORIOKA Tomohiko  <tomo@etl.go.jp>
+
+       * utf-2000/char-db-util.el (char-attribute-name<): New function.
+       (insert-char-data): Use `char-attribute-name<' to sort; change
+       order of `iso-10646-comment'.
+       (char-db-update-comment): Use mapping-table for `latin-viscii-*'.
+
+       * utf-2000/u00100-Latin-Extended-A.el,
+       utf-2000/u000A0-Latin-1-Supplement.el: Merge `latin-viscii'
+       code-points.
+
+1999-11-13  MORIOKA Tomohiko  <tomo@etl.go.jp>
+
+       * utf-2000/char-db-util.el (insert-char-data): Change order.
+       (insert-char-range-data): Insert variants.
+       (char-db-update-comment): Fix problem with ascii and
+       non-ISO-2022-sets; don't insert control-characters.
+
+       * utf-2000/u00020-Basic-Latin.el: Merge `latin-viscii'
+       code-points.
+
+1999-11-12  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * startup.el (normal-top-level): Load autoload file for UTF-2000
+       in UTF-2000.
+
+       * utf-2000/auto-autoloads.el: New file.
+
+       * utf-2000/char-db-util.el: New file.
+
 1999-11-11  MORIOKA Tomohiko  <tomo@etl.go.jp>
 
        * utf-2000/u00020-Basic-Latin.el (SPACE): Add `(ipa #x7F)'.
        "u000A0-Latin-1-Supplement.el", "u00100-Latin-Extended-A.el",
        "u00180-Latin-Extended-B.el", "u00250-IPA-Extensions.el",
        "u002B0-Spacing-Modifier-Letters.el",
-       "u00300-Combining-Diacritical-Marks.el" and "u00370-Greek.el".
+       "u00300-Combining-Diacritical-Marks.el" and "u00370-Greek.el" in
+       UTF-2000.
 
        * utf-2000/ccs-iso8859-2.el, utf-2000/ccs-iso8859-3.el,
        utf-2000/ccs-iso8859-4.el, utf-2000/ccs-iso8859-9.el: Delete.
index abf4dd4..c90f444 100644 (file)
@@ -1777,34 +1777,71 @@ With argument, insert value in current buffer after the form."
   ;; Emacsen.
   (when (featurep '(or mule file-coding))
     (defvar buffer-file-coding-system)
-    (if (or (featurep '(not mule)) ;; Don't scan buffer if we are not muleized
-           (save-excursion
-             (set-buffer byte-compile-inbuffer)
+    (let (ces)
+      (if (featurep 'mule)
+         (save-excursion
+           (set-buffer byte-compile-inbuffer)
+           (goto-char (point-min))
+           ;; mrb- There must be a better way than skip-chars-forward
+           (skip-chars-forward (concat (char-to-string 0) "-"
+                                       (char-to-string 255)))
+           (if (eq (point) (point-max))
+               (setq ces 'raw-text)
              (goto-char (point-min))
-             ;; mrb- There must be a better way than skip-chars-forward
-             (skip-chars-forward (concat (char-to-string 0) "-"
-                                         (char-to-string 255)))
-             (and (eq (point) (point-max))
-                  (not
-                   (re-search-backward
-                    "\\\\u[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f]" nil t)))))
-       (setq buffer-file-coding-system 'raw-text)
-      (cond ((featurep 'utf-2000)
-            (insert "(require 'mule)\n;;;###coding system: utf-8\n")
-            (setq buffer-file-coding-system 'utf-8)
-            )
-           (t
-            (insert "(require 'mule)\n;;;###coding system: escape-quoted\n")
-            (setq buffer-file-coding-system 'escape-quoted)
-            ))
-      ;; #### Lazy loading not yet implemented for MULE files
-      ;; mrb - Fix this someday.
-      (save-excursion
-       (set-buffer byte-compile-inbuffer)
-       (setq byte-compile-dynamic nil
-             byte-compile-dynamic-docstrings nil))
-      ;;(external-debugging-output (prin1-to-string (buffer-local-variables))))
-      ))
+             (while (< (point)(point-max))
+               (cond ((eq (char-after) ?\;)
+                      (delete-region (point)(point-at-eol))
+                      (if (eq (char-after) ?\n)
+                          (delete-char 1)
+                        (forward-char))
+                      )
+                     ((eq (char-after) ?\?)
+                      (forward-char 2)
+                      )
+                     ((eq (char-after) ?\n)
+                      (forward-char)
+                      )
+                     ((eq (char-after) ?\")
+                      (forward-char)
+                      (while (and (< (point)(point-max))
+                                  (not (when (eq (char-after) ?\")
+                                         (forward-char)
+                                         t)))
+                        (if (eq (char-after) ?\\)
+                            (forward-char 2)
+                          (forward-char)))
+                      )
+                     (t
+                      (forward-char)))))
+           (goto-char (point-min))
+           (skip-chars-forward (concat (char-to-string 0) "-"
+                                       (char-to-string 255)))
+           (setq ces
+                 (if (eq (point) (point-max))
+                     (if (and (featurep 'utf-2000)
+                              (re-search-backward "\\\\u[0-9A-Fa-f]+" nil t))
+                         'utf-8-unix
+                       'raw-text))))
+        ;; Don't scan buffer if we are not muleized
+       (setq ces 'raw-text))
+      (if (eq ces 'raw-text)
+         (setq buffer-file-coding-system 'raw-text)
+       (cond ((eq ces 'utf-8-unix)
+              (insert "(require 'mule)\n;;;###coding system: utf-8-unix\n")
+              (setq buffer-file-coding-system 'utf-8-unix)
+              )
+             (t
+              (insert "(require 'mule)\n;;;###coding system: escape-quoted\n")
+              (setq buffer-file-coding-system 'escape-quoted)
+              ))
+       ;; #### Lazy loading not yet implemented for MULE files
+       ;; mrb - Fix this someday.
+       (save-excursion
+         (set-buffer byte-compile-inbuffer)
+         (setq byte-compile-dynamic nil
+               byte-compile-dynamic-docstrings nil))
+       ;;(external-debugging-output (prin1-to-string (buffer-local-variables))))
+       )))
   )
 
 
index ed3d568..d6d87c8 100644 (file)
                           mule-lisp-directory)
                   'external-debugging-output)))
     (setq mule-lisp-directory '()))
+  (if (featurep 'utf-2000)
+      (progn
+       (setq utf-2000-lisp-directory
+             (paths-find-utf-2000-lisp-directory roots
+                                                 lisp-directory))
+       (if debug-paths
+           (princ (format "utf-2000-lisp-directory:\n%S\n"
+                          utf-2000-lisp-directory)
+                  'external-debugging-output)))
+    (setq utf-2000-lisp-directory '()))
   (setq site-directory (and (null inhibit-site-lisp)
                            (paths-find-site-lisp-directory roots)))
   (if (and debug-paths (null inhibit-site-lisp))
@@ -84,7 +94,8 @@
                                             '()
                                             lisp-directory
                                             site-directory
-                                            mule-lisp-directory))
+                                            mule-lisp-directory
+                                            utf-2000-lisp-directory))
 
   (setq module-directory (paths-find-module-directory roots))
   (if debug-paths
index a10617f..e51102b 100644 (file)
        (when-feature file-coding "code-cmds")
        ;;;;;;;;;;;;;;;;;; MULE support
        (when-feature mule "mule-conf")
-       (when-feature utf-2000 "utf-2000/ccs-jisx0201-latin.el")
-       (when-feature utf-2000 "utf-2000/ccs-viscii.el")
-       (when-feature utf-2000 "utf-2000/ccs-jisx0208-1983.el")
-       (when-feature utf-2000 "utf-2000/u00000-C0.el")
-       (when-feature utf-2000 "utf-2000/u00020-Basic-Latin.el")
-       (when-feature utf-2000 "utf-2000/u00080-C1.el")
-       (when-feature utf-2000 "utf-2000/u000A0-Latin-1-Supplement.el")
-       (when-feature utf-2000 "utf-2000/u00100-Latin-Extended-A.el")
-       (when-feature utf-2000 "utf-2000/u00180-Latin-Extended-B.el")
-       (when-feature utf-2000 "utf-2000/u00250-IPA-Extensions.el")
-       (when-feature utf-2000 "utf-2000/u002B0-Spacing-Modifier-Letters.el")
-       (when-feature utf-2000 "utf-2000/u00300-Combining-Diacritical-Marks.el")
-       (when-feature utf-2000 "utf-2000/u00370-Greek.el")
+       (when-feature utf-2000 "ccs-jisx0201-latin.el")
+       (when-feature utf-2000 "ccs-jisx0208-1983.el")
+       (when-feature utf-2000 "u00000-C0")
+       (when-feature utf-2000 "u00020-Basic-Latin")
+       (when-feature utf-2000 "u00080-C1")
+       (when-feature utf-2000 "u000A0-Latin-1-Supplement")
+       (when-feature utf-2000 "u00100-Latin-Extended-A")
+       (when-feature utf-2000 "u00180-Latin-Extended-B")
+       (when-feature utf-2000 "u00250-IPA-Extensions")
+       (when-feature utf-2000 "u002B0-Spacing-Modifier-Letters")
+       (when-feature utf-2000 "u00300-Combining-Diacritical-Marks")
+       (when-feature utf-2000 "u00370-Greek")
+       (when-feature utf-2000 "u00400-Cyrillic")
+;      (when-feature utf-2000 "u00530-Armenian")
+       (when-feature utf-2000 "u00590-Hebrew")
+       (when-feature utf-2000 "u00600-Arabic")
+;      (when-feature utf-2000 "u00700-Syriac")
+;      (when-feature utf-2000 "u00780-Thaana")
+;      (when-feature utf-2000 "u00900-Devanagari")
+;      (when-feature utf-2000 "u00980-Bengali")
+;      (when-feature utf-2000 "u00A00-Gurmukhi")
+;      (when-feature utf-2000 "u00A80-Gujarati")
+;      (when-feature utf-2000 "u00B00-Oriya")
+;      (when-feature utf-2000 "u00B80-Tamil")
+;      (when-feature utf-2000 "u00C00-Telugu")
+;      (when-feature utf-2000 "u00C80-Kannada")
+;      (when-feature utf-2000 "u00D00-Malayalam")
+;      (when-feature utf-2000 "u00D80-Sinhala")
+       (when-feature utf-2000 "u00E00-Thai")
+       (when-feature utf-2000 "u00E80-Lao")
+;      (when-feature utf-2000 "u00F00-Tibetan")
+;      (when-feature utf-2000 "u01000-Myanmar")
+;      (when-feature utf-2000 "u010A0-Georgian")
+       (when-feature utf-2000 "u01100-Hangul-Jamo")
+       (when-feature utf-2000 "u01200-Ethiopic")
+;      (when-feature utf-2000 "u013A0-Cherokee")
+;      (when-feature utf-2000 "u01400-Canadian")
+;      (when-feature utf-2000 "u01680-Ogham")
+;      (when-feature utf-2000 "u016A0-Runic")
+;      (when-feature utf-2000 "u01780-Khmer")
+;      (when-feature utf-2000 "u01800-Mongolian")
+       (when-feature utf-2000 "u01E00-Latin-Extended-Additional")
+;      (when-feature utf-2000 "u01F00-Greek-Extended")
+       (when-feature utf-2000 "u02000-General-Punctuation")
+       (when-feature utf-2000 "u02070-Superscripts")
+       (when-feature utf-2000 "u02080-Subscripts")
+       (when-feature utf-2000 "u020A0-Currency-Symbols")
+;      (when-feature utf-2000
+;                    "u020D0-Combining-Diacritical-Marks-for-Symbols")
+       (when-feature utf-2000 "u02100-Letterlike-Symbols")
+       (when-feature utf-2000 "u02150-Number-Forms")
+       (when-feature utf-2000 "u02190-Arrows")
+       (when-feature utf-2000 "u02200-Mathematical-Operators")
+;      (when-feature utf-2000 "u02300-Miscellaneous-Technical")
+;      (when-feature utf-2000 "u02400-Control-Pictures")
+;      (when-feature utf-2000 "u02440-OCR")
+;      (when-feature utf-2000 "u02460-Enclosed-Alphanumerics")
+;      (when-feature utf-2000 "u02500-Box-Drawing")
+;      (when-feature utf-2000 "u02580-Block-Elements")
+;      (when-feature utf-2000 "u025A0-Geometric-Shapes")
+;      (when-feature utf-2000 "u02600-Miscellaneous-Symbols")
+;      (when-feature utf-2000 "u02700-Dingbats")
+;      (when-feature utf-2000 "u02800-Braille-Patterns")
+;      (when-feature utf-2000 "u02E00-CJK-Radical-Supplement")
+;      (when-feature utf-2000 "u02F00-Kangxi-Radicals")
+;      (when-feature utf-2000 "u02FF0-Ideographic-Description-Characters")
+;      (when-feature utf-2000 "u03000-CJK-Symbols-and-Punctuation")
+;      (when-feature utf-2000 "u03040-Hiragana")
+;      (when-feature utf-2000 "u030A0-Katakana")
+;      (when-feature utf-2000 "u03100-Bopomofo")
+;      (when-feature utf-2000 "u03130-Hangul-Compatibility-Jamo")
+;      (when-feature utf-2000 "u03190-Kanbun")
+;      (when-feature utf-2000 "u031A0-Extended-Bopomofo")
+;      (when-feature utf-2000 "u03200-Enclosed-CJK-Letters-and-Months")
+;      (when-feature utf-2000 "u03300-CJK-Compatibility")
        (when-feature mule "mule-charset")
        (when-feature mule "mule-coding")
        ;; All files after this can have extended characters in them.
index 66e08ed..4963470 100644 (file)
 
 ;;; Code:
 
-;; Ethiopic
-(make-charset 'ethiopic "Ethiopic"
-             '(registry "Ethio"
-               dimension 2
-               chars 94
-               final ?3
-               graphic 0
-               ))
-
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;;; ETHIOPIC
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
index ba94865..9f3a063 100644 (file)
@@ -282,10 +282,24 @@ DESCRIPTION (string) is the description string of the charset."
           ;; katakana-jisx0208
          japanese-jisx0208
          japanese-jisx0212
+         chinese-cns11643-1
+         chinese-cns11643-2
+         chinese-cns11643-3
+         chinese-cns11643-4
+         chinese-cns11643-5
+         chinese-cns11643-6
+         chinese-cns11643-7
+         korean-ksc5601
+         chinese-gb2312
          hebrew-iso8859-8
          latin-viscii
          latin-viscii-lower
          latin-viscii-upper
-         ipa)))
+         ipa
+         lao
+         ethiopic-ucs
+         ethiopic
+         ucs-bmp
+         arabic-iso8859-6)))
 
 ;;; mule-charset.el ends here
index fc3d141..8dad2dd 100644 (file)
 
 ;;; Code:
 
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;;; IPA (International Phonetic Alphabet)
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; Lao script.
+;; ISO10646's 0x0E80..0x0EDF are mapped to 0x20..0x7F.
+(make-charset 'lao "Lao script"
+             '(registry "MuleLao-1"
+               dimension 1
+               chars 94
+               final ?1
+               graphic 1))
 
+;; IPA (International Phonetic Alphabet)
 (make-charset 'ipa "International Phonetic Alphabet"
              '(registry "MuleIPA"
                dimension 1
                final ?0
                graphic 1))
 
+;; Ethiopic
+(make-charset 'ethiopic "Ethiopic"
+             '(registry "Ethio"
+               dimension 2
+               chars 94
+               final ?3
+               graphic 0
+               ))
+
 ;;; mule-conf.el ends here
index c7a3bf1..7ad409b 100644 (file)
@@ -47,6 +47,9 @@
 (defvar paths-mule-load-path-depth 0
   "Depth of load-path searches in Mule Lisp paths.")
 
+(defvar paths-utf-2000-load-path-depth 0
+  "Depth of load-path searches in UTF-2000 Lisp paths.")
+
 (defvar paths-default-info-directories
   (mapcar (function
           (lambda (dirlist)
                                        nil
                                        configure-mule-lisp-directory)))))
 
+(defun paths-find-utf-2000-lisp-directory (roots &optional lisp-directory)
+  "Find the UTF-2000 Lisp directory of the XEmacs hierarchy."
+  ;; #### kludge
+  (if lisp-directory
+      (let ((guess
+            (file-name-as-directory
+             (paths-construct-path (list lisp-directory "utf-2000")))))
+       (if (paths-file-readable-directory-p guess)
+           guess
+         (paths-find-version-directory roots "utf-2000-lisp"
+                                       nil
+                                       configure-utf-2000-lisp-directory)))))
+
 (defun paths-find-module-directory (roots)
   "Find the main modules directory of the XEmacs hierarchy."
   (paths-find-architecture-directory roots "modules"
 (defun paths-construct-load-path
   (roots early-package-load-path late-package-load-path last-package-load-path
         lisp-directory
-        &optional site-lisp-directory mule-lisp-directory)
+        &optional site-lisp-directory mule-lisp-directory
+        utf-2000-lisp-directory)
   "Construct the load path."
   (let* ((envvar-value (getenv "EMACSLOADPATH"))
         (env-load-path
          (and mule-lisp-directory
               (paths-find-recursive-load-path (list mule-lisp-directory)
                                               paths-mule-load-path-depth)))
+        (utf-2000-lisp-load-path
+         (and utf-2000-lisp-directory
+              (paths-find-recursive-load-path (list utf-2000-lisp-directory)
+                                              paths-utf-2000-load-path-depth)))
         (lisp-load-path
          (and lisp-directory
               (paths-find-recursive-load-path (list lisp-directory)
            early-package-load-path
            site-lisp-load-path
            late-package-load-path
+           utf-2000-lisp-load-path
            mule-lisp-load-path
            lisp-load-path
            last-package-load-path)))
index fbb6079..c1786d1 100644 (file)
@@ -421,10 +421,15 @@ Type ^H^H^H (Control-h Control-h Control-h) to get more help options.\n")
                           debug-paths)
       (startup-setup-paths-warning))
 
-    (if (and (not inhibit-autoloads)
-            lisp-directory)
-       (load (expand-file-name (file-name-sans-extension autoload-file-name)
-                               lisp-directory) nil t))
+    (when (and (not inhibit-autoloads)
+              lisp-directory)
+      (load (expand-file-name (file-name-sans-extension autoload-file-name)
+                             lisp-directory) nil t)
+      (if (featurep 'utf-2000)
+         (load (expand-file-name
+                (file-name-sans-extension autoload-file-name)
+                (expand-file-name "utf-2000" lisp-directory))
+               nil t)))
 
     (if (not inhibit-autoloads)
        (progn
@@ -1290,6 +1295,17 @@ It's idempotent, so call this as often as you like!"
                   'external-debugging-output)))
     (setq mule-lisp-directory '()))
 
+  (if (featurep 'utf-2000)
+      (progn
+       (setq utf-2000-lisp-directory
+             (paths-find-utf-2000-lisp-directory roots
+                                                 lisp-directory))
+       (if debug-paths
+           (princ (format "utf-2000-lisp-directory:\n%S\n"
+                          utf-2000-lisp-directory)
+                  'external-debugging-output)))
+    (setq utf-2000-lisp-directory '()))
+
   (setq site-directory (and (null inhibit-site-lisp)
                            (paths-find-site-lisp-directory roots)))
 
@@ -1303,7 +1319,8 @@ It's idempotent, so call this as often as you like!"
                                             last-package-load-path
                                             lisp-directory
                                             site-directory
-                                            mule-lisp-directory))
+                                            mule-lisp-directory
+                                            utf-2000-lisp-directory))
 
   (setq Info-directory-list
        (paths-construct-info-path roots
@@ -1373,6 +1390,9 @@ It's idempotent, so call this as often as you like!"
        (if (and (featurep 'mule)
                 (null mule-lisp-directory))
            (push "mule-lisp-directory" warnings))
+       (if (and (featurep 'utf-2000)
+                (null utf-2000-lisp-directory))
+           (push "utf-2000-lisp-directory" warnings))
        (if (null exec-directory) (push "exec-directory" warnings))
        (if (null data-directory) (push "data-directory" warnings))
        (if (null doc-directory)  (push "doc-directory"  warnings))
diff --git a/lisp/utf-2000/auto-autoloads.el b/lisp/utf-2000/auto-autoloads.el
new file mode 100644 (file)
index 0000000..39489f2
--- /dev/null
@@ -0,0 +1,12 @@
+;;; DO NOT MODIFY THIS FILE
+(if (featurep 'utf-2000-autoloads) (error "Already loaded"))
+
+(provide 'utf-2000-autoloads)
+\f
+;;;### (autoloads (what-char-definition char-db-update-comment) "char-db-util" "utf-2000/char-db-util.el")
+
+(autoload 'char-db-update-comment "char-db-util" nil t nil)
+
+(autoload 'what-char-definition "char-db-util" nil t nil)
+
+;;;***
diff --git a/lisp/utf-2000/ccs-viscii.el b/lisp/utf-2000/ccs-viscii.el
deleted file mode 100644 (file)
index a7dc739..0000000
+++ /dev/null
@@ -1,488 +0,0 @@
-;;; ccs-viscii.el --- Mapping table for VISCII 1.1.
-
-;; Copyright (C) 1999 Electrotechnical Laboratory, JAPAN.
-;; Licensed to the Free Software Foundation.
-
-;; Author: MORIOKA Tomohiko <tomo@m17n.org>
-;; Keywords: coded character set
-
-;; This file is part of UTF-2000.
-
-;; UTF-2000 is free software; you can redistribute it and/or modify it
-;; under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 2, or (at your option)
-;; any later version.
-
-;; UTF-2000 is distributed in the hope that it will be useful, but
-;; WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-;; General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with UTF-2000; see the file COPYING.  If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
-
-;;; Code:
-
-(set-charset-mapping-table
- 'latin-viscii
- [?\u0000      ; 0x00
-  ?\u0001      ; 0x01
-  ?\u1EB2      ; 0x02 (\e.2\8eÆ)
-  ?\u0003      ; 0x03
-  ?\u0004      ; 0x04
-  ?\u1EB4      ; 0x05 (\8eÇ)
-  ?\u1EAA      ; 0x06 (\8eç)
-  ?\u0007      ; 0x07
-  ?\u0008      ; 0x08
-  ?\u0009      ; 0x09
-  ?\u000A      ; 0x0A
-  ?\u000B      ; 0x0B
-  ?\u000C      ; 0x0C
-  ?\u000D      ; 0x0D
-  ?\u000E      ; 0x0E
-  ?\u000F      ; 0x0F
-  ?\u0010      ; 0x10
-  ?\u0011      ; 0x11
-  ?\u0012      ; 0x12
-  ?\u0013      ; 0x13
-  ?\u1EF6      ; 0x14 (\8eÖ)
-  ?\u0015      ; 0x15
-  ?\u0016      ; 0x16
-  ?\u0017      ; 0x17
-  ?\u0018      ; 0x18
-  ?\u1EF8      ; 0x19 (\8eÛ)
-  ?\u001A      ; 0x1A
-  ?\u001B      ; 0x1B
-  ?\u001C      ; 0x1C
-  ?\u001D      ; 0x1D
-  ?\u1EF4      ; 0x1E (\8eÜ)
-  ?\u001F      ; 0x1F
-  ?\u0020      ; 0x20 ( )
-  ?\u0021      ; 0x21 (!)
-  ?\u0022      ; 0x22 (")
-  ?\u0023      ; 0x23 (#)
-  ?\u0024      ; 0x24 ($)
-  ?\u0025      ; 0x25 (%)
-  ?\u0026      ; 0x26 (&)
-  ?\u0027      ; 0x27 (')
-  ?\u0028      ; 0x28 (()
-  ?\u0029      ; 0x29 ())
-  ?\u002A      ; 0x2A (*)
-  ?\u002B      ; 0x2B (+)
-  ?\u002C      ; 0x2C (,)
-  ?\u002D      ; 0x2D (-)
-  ?\u002E      ; 0x2E (.)
-  ?\u002F      ; 0x2F (/)
-  ?\u0030      ; 0x30 (0)
-  ?\u0031      ; 0x31 (1)
-  ?\u0032      ; 0x32 (2)
-  ?\u0033      ; 0x33 (3)
-  ?\u0034      ; 0x34 (4)
-  ?\u0035      ; 0x35 (5)
-  ?\u0036      ; 0x36 (6)
-  ?\u0037      ; 0x37 (7)
-  ?\u0038      ; 0x38 (8)
-  ?\u0039      ; 0x39 (9)
-  ?\u003A      ; 0x3A (:)
-  ?\u003B      ; 0x3B (;)
-  ?\u003C      ; 0x3C (<)
-  ?\u003D      ; 0x3D (=)
-  ?\u003E      ; 0x3E (>)
-  ?\u003F      ; 0x3F (?)
-  ?\u0040      ; 0x40 (@)
-  ?\u0041      ; 0x41 (A)
-  ?\u0042      ; 0x42 (B)
-  ?\u0043      ; 0x43 (C)
-  ?\u0044      ; 0x44 (D)
-  ?\u0045      ; 0x45 (E)
-  ?\u0046      ; 0x46 (F)
-  ?\u0047      ; 0x47 (G)
-  ?\u0048      ; 0x48 (H)
-  ?\u0049      ; 0x49 (I)
-  ?\u004A      ; 0x4A (J)
-  ?\u004B      ; 0x4B (K)
-  ?\u004C      ; 0x4C (L)
-  ?\u004D      ; 0x4D (M)
-  ?\u004E      ; 0x4E (N)
-  ?\u004F      ; 0x4F (O)
-  ?\u0050      ; 0x50 (P)
-  ?\u0051      ; 0x51 (Q)
-  ?\u0052      ; 0x52 (R)
-  ?\u0053      ; 0x53 (S)
-  ?\u0054      ; 0x54 (T)
-  ?\u0055      ; 0x55 (U)
-  ?\u0056      ; 0x56 (V)
-  ?\u0057      ; 0x57 (W)
-  ?\u0058      ; 0x58 (X)
-  ?\u0059      ; 0x59 (Y)
-  ?\u005A      ; 0x5A (Z)
-  ?\u005B      ; 0x5B ([)
-  ?\u005C      ; 0x5C (\)
-  ?\u005D      ; 0x5D (])
-  ?\u005E      ; 0x5E (^)
-  ?\u005F      ; 0x5F (_)
-  ?\u0060      ; 0x60 (`)
-  ?\u0061      ; 0x61 (a)
-  ?\u0062      ; 0x62 (b)
-  ?\u0063      ; 0x63 (c)
-  ?\u0064      ; 0x64 (d)
-  ?\u0065      ; 0x65 (e)
-  ?\u0066      ; 0x66 (f)
-  ?\u0067      ; 0x67 (g)
-  ?\u0068      ; 0x68 (h)
-  ?\u0069      ; 0x69 (i)
-  ?\u006A      ; 0x6A (j)
-  ?\u006B      ; 0x6B (k)
-  ?\u006C      ; 0x6C (l)
-  ?\u006D      ; 0x6D (m)
-  ?\u006E      ; 0x6E (n)
-  ?\u006F      ; 0x6F (o)
-  ?\u0070      ; 0x70 (p)
-  ?\u0071      ; 0x71 (q)
-  ?\u0072      ; 0x72 (r)
-  ?\u0073      ; 0x73 (s)
-  ?\u0074      ; 0x74 (t)
-  ?\u0075      ; 0x75 (u)
-  ?\u0076      ; 0x76 (v)
-  ?\u0077      ; 0x77 (w)
-  ?\u0078      ; 0x78 (x)
-  ?\u0079      ; 0x79 (y)
-  ?\u007A      ; 0x7A (z)
-  ?\u007B      ; 0x7B ({)
-  ?\u007C      ; 0x7C (|)
-  ?\u007D      ; 0x7D (})
-  ?\u007E      ; 0x7E (~)
-  ?\u007F      ; 0x7F
-  ?\u1EA0      ; 0x80 (\8eÕ)
-  ?\u1EAE      ; 0x81 (\8e¡)
-  ?\u1EB0      ; 0x82 (\8e¢)
-  ?\u1EB6      ; 0x83 (\8e£)
-  ?\u1EA4      ; 0x84 (\8e¤)
-  ?\u1EA6      ; 0x85 (\8e¥)
-  ?\u1EA8      ; 0x86 (\8e¦)
-  ?\u1EAC      ; 0x87 (\8e§)
-  ?\u1EBC      ; 0x88 (\8e¨)
-  ?\u1EB8      ; 0x89 (\8e©)
-  ?\u1EBE      ; 0x8A (\8eª)
-  ?\u1EC0      ; 0x8B (\8e«)
-  ?\u1EC2      ; 0x8C (\8e¬)
-  ?\u1EC4      ; 0x8D (\8e­)
-  ?\u1EC6      ; 0x8E (\8e®)
-  ?\u1ED0      ; 0x8F (\8e¯)
-  ?\u1ED2      ; 0x90 (\8e°)
-  ?\u1ED4      ; 0x91 (\8e±)
-  ?\u1ED6      ; 0x92 (\8e²)
-  ?\u1ED8      ; 0x93 (\8eµ)
-  ?\u1EE2      ; 0x94 (\8eþ)
-  ?\u1EDA      ; 0x95 (\8e¾)
-  ?\u1EDC      ; 0x96 (\8e¶)
-  ?\u1EDE      ; 0x97 (\8e·)
-  ?\u1ECA      ; 0x98 (\8e¸)
-  ?\u1ECE      ; 0x99 (\8eö)
-  ?\u1ECC      ; 0x9A (\8e÷)
-  ?\u1EC8      ; 0x9B (\8eï)
-  ?\u1EE6      ; 0x9C (\8eü)
-  ?\u0168      ; 0x9D (\8eû)
-  ?\u1EE4      ; 0x9E (\8eø)
-  ?\u1EF2      ; 0x9F (\8eÏ)
-  ?\u00D5      ; 0xA0 (\8eõ)
-  ?\u1EAF      ; 0xA1 (\e.1\8e¡)
-  ?\u1EB1      ; 0xA2 (\8e¢)
-  ?\u1EB7      ; 0xA3 (\8e£)
-  ?\u1EA5      ; 0xA4 (\8e¤)
-  ?\u1EA7      ; 0xA5 (\8e¥)
-  ?\u1EA9      ; 0xA6 (\8e¦)
-  ?\u1EAD      ; 0xA7 (\8e§)
-  ?\u1EBD      ; 0xA8 (\8e¨)
-  ?\u1EB9      ; 0xA9 (\8e©)
-  ?\u1EBF      ; 0xAA (\8eª)
-  ?\u1EC1      ; 0xAB (\8e«)
-  ?\u1EC3      ; 0xAC (\8e¬)
-  ?\u1EC5      ; 0xAD (\8e­)
-  ?\u1EC7      ; 0xAE (\8e®)
-  ?\u1ED1      ; 0xAF (\8e¯)
-  ?\u1ED3      ; 0xB0 (\8e°)
-  ?\u1ED5      ; 0xB1 (\8e±)
-  ?\u1ED7      ; 0xB2 (\8e²)
-  ?\u1EE0      ; 0xB3 (\e.2\8eÞ)
-  ?\u01A0      ; 0xB4 (\8e½)
-  ?\u1ED9      ; 0xB5 (\e.1\8eµ)
-  ?\u1EDD      ; 0xB6 (\8e¶)
-  ?\u1EDF      ; 0xB7 (\8e·)
-  ?\u1ECB      ; 0xB8 (\8e¸)
-  ?\u1EF0      ; 0xB9 (\e.2\8eñ)
-  ?\u1EE8      ; 0xBA (\8eÑ)
-  ?\u1EEA      ; 0xBB (\8e×)
-  ?\u1EEC      ; 0xBC (\8eØ)
-  ?\u01A1      ; 0xBD (\e.1\8e½)
-  ?\u1EDB      ; 0xBE (\8e¾)
-  ?\u01AF      ; 0xBF (\e.2\8eß)
-  ?\u00C0      ; 0xC0 (\8eà)
-  ?\u00C1      ; 0xC1 (\8eá)
-  ?\u00C2      ; 0xC2 (\8eâ)
-  ?\u00C3      ; 0xC3 (\8eã)
-  ?\u1EA2      ; 0xC4 (\8eä)
-  ?\u0102      ; 0xC5 (\8eå)
-  ?\u1EB3      ; 0xC6 (\e.1\8eÆ)
-  ?\u1EB5      ; 0xC7 (\8eÇ)
-  ?\u00C8      ; 0xC8 (\e.2\8eè)
-  ?\u00C9      ; 0xC9 (\8eé)
-  ?\u00CA      ; 0xCA (\8eê)
-  ?\u1EBA      ; 0xCB (\8eë)
-  ?\u00CC      ; 0xCC (\8eì)
-  ?\u00CD      ; 0xCD (\8eí)
-  ?\u0128      ; 0xCE (\8eî)
-  ?\u1EF3      ; 0xCF (\e.1\8eÏ)
-  ?\u0110      ; 0xD0 (\e.2\8eð)
-  ?\u1EE9      ; 0xD1 (\e.1\8eÑ)
-  ?\u00D2      ; 0xD2 (\e.2\8eò)
-  ?\u00D3      ; 0xD3 (\8eó)
-  ?\u00D4      ; 0xD4 (\8eô)
-  ?\u1EA1      ; 0xD5 (\e.1\8eÕ)
-  ?\u1EF7      ; 0xD6 (\8eÖ)
-  ?\u1EEB      ; 0xD7 (\8e×)
-  ?\u1EED      ; 0xD8 (\8eØ)
-  ?\u00D9      ; 0xD9 (\e.2\8eù)
-  ?\u00DA      ; 0xDA (\8eú)
-  ?\u1EF9      ; 0xDB (\e.1\8eÛ)
-  ?\u1EF5      ; 0xDC (\8eÜ)
-  ?\u00DD      ; 0xDD (\e.2\8eý)
-  ?\u1EE1      ; 0xDE (\e.1\8eÞ)
-  ?\u01B0      ; 0xDF (\8eß)
-  ?\u00E0      ; 0xE0 (\8eà)
-  ?\u00E1      ; 0xE1 (\8eá)
-  ?\u00E2      ; 0xE2 (\8eâ)
-  ?\u00E3      ; 0xE3 (\8eã)
-  ?\u1EA3      ; 0xE4 (\8eä)
-  ?\u0103      ; 0xE5 (\8eå)
-  ?\u1EEF      ; 0xE6 (\8eæ)
-  ?\u1EAB      ; 0xE7 (\8eç)
-  ?\u00E8      ; 0xE8 (\8eè)
-  ?\u00E9      ; 0xE9 (\8eé)
-  ?\u00EA      ; 0xEA (\8eê)
-  ?\u1EBB      ; 0xEB (\8eë)
-  ?\u00EC      ; 0xEC (\8eì)
-  ?\u00ED      ; 0xED (\8eí)
-  ?\u0129      ; 0xEE (\8eî)
-  ?\u1EC9      ; 0xEF (\8eï)
-  ?\u0111      ; 0xF0 (\8eð)
-  ?\u1EF1      ; 0xF1 (\8eñ)
-  ?\u00F2      ; 0xF2 (\8eò)
-  ?\u00F3      ; 0xF3 (\8eó)
-  ?\u00F4      ; 0xF4 (\8eô)
-  ?\u00F5      ; 0xF5 (\8eõ)
-  ?\u1ECF      ; 0xF6 (\8eö)
-  ?\u1ECD      ; 0xF7 (\8e÷)
-  ?\u1EE5      ; 0xF8 (\8eø)
-  ?\u00F9      ; 0xF9 (\8eù)
-  ?\u00FA      ; 0xFA (\8eú)
-  ?\u0169      ; 0xFB (\8eû)
-  ?\u1EE7      ; 0xFC (\8eü)
-  ?\u00FD      ; 0xFD (\8eý)
-  ?\u1EE3      ; 0xFE (\8eþ)
-  ?\u1EEE      ; 0xFF (\e.2\8eæ)
-  ])
-
-(set-charset-mapping-table
- 'latin-viscii-lower
- [nil          ; 0x20
-  ?\u1eaf      ; 0x21
-  ?\u1eb1      ; 0x22
-  ?\u1eb7      ; 0x23
-  ?\u1ea5      ; 0x24
-  ?\u1ea7      ; 0x25
-  ?\u1ea9      ; 0x26
-  ?\u1ead      ; 0x27
-  ?\u1ebd      ; 0x28
-  ?\u1eb9      ; 0x29
-  ?\u1ebf      ; 0x2a
-  ?\u1ec1      ; 0x2b
-  ?\u1ec3      ; 0x2c
-  ?\u1ec5      ; 0x2d
-  ?\u1ec7      ; 0x2e
-  ?\u1ed1      ; 0x2f
-  ?\u1ed3      ; 0x30
-  ?\u1ed5      ; 0x31
-  ?\u1ed7      ; 0x32
-  nil          ; 0x33
-  nil          ; 0x34
-  ?\u1ed9      ; 0x35
-  ?\u1edd      ; 0x36
-  ?\u1edf      ; 0x37
-  ?\u1ecb      ; 0x38
-  nil          ; 0x39
-  nil          ; 0x3A
-  nil          ; 0x3B
-  nil          ; 0x3C
-  ?\u01a1      ; 0x3d
-  ?\u1edb      ; 0x3e
-  nil          ; 0x3F
-  nil          ; 0x40
-  nil          ; 0x41
-  nil          ; 0x42
-  nil          ; 0x43
-  nil          ; 0x44
-  nil          ; 0x45
-  ?\u1eb3      ; 0x46
-  ?\u1eb5      ; 0x47
-  nil          ; 0x48
-  nil          ; 0x49
-  nil          ; 0x4A
-  nil          ; 0x4B
-  nil          ; 0x4C
-  nil          ; 0x4D
-  nil          ; 0x4E
-  ?\u1ef3      ; 0x4f
-  nil          ; 0x50
-  ?\u1ee9      ; 0x51
-  nil          ; 0x52
-  nil          ; 0x53
-  nil          ; 0x54
-  ?\u1ea1      ; 0x55
-  ?\u1ef7      ; 0x56
-  ?\u1eeb      ; 0x57
-  ?\u1eed      ; 0x58
-  nil          ; 0x59
-  nil          ; 0x5A
-  ?\u1ef9      ; 0x5b
-  ?\u1ef5      ; 0x5c
-  nil          ; 0x5D
-  ?\u1ee1      ; 0x5e
-  ?\u01b0      ; 0x5f
-  ?\u00e0      ; 0x60
-  ?\u00e1      ; 0x61
-  ?\u00e2      ; 0x62
-  ?\u00e3      ; 0x63
-  ?\u1ea3      ; 0x64
-  ?\u0103      ; 0x65
-  ?\u1eef      ; 0x66
-  ?\u1eab      ; 0x67
-  ?\u00e8      ; 0x68
-  ?\u00e9      ; 0x69
-  ?\u00ea      ; 0x6a
-  ?\u1ebb      ; 0x6b
-  ?\u00ec      ; 0x6c
-  ?\u00ed      ; 0x6d
-  ?\u0129      ; 0x6e
-  ?\u1ec9      ; 0x6f
-  ?\u0111      ; 0x70
-  ?\u1ef1      ; 0x71
-  ?\u00f2      ; 0x72
-  ?\u00f3      ; 0x73
-  ?\u00f4      ; 0x74
-  ?\u00f5      ; 0x75
-  ?\u1ecf      ; 0x76
-  ?\u1ecd      ; 0x77
-  ?\u1ee5      ; 0x78
-  ?\u00f9      ; 0x79
-  ?\u00fa      ; 0x7a
-  ?\u0169      ; 0x7b
-  ?\u1ee7      ; 0x7c
-  ?\u00fd      ; 0x7d
-  ?\u1ee3      ; 0x7e
-  nil          ; 0x7F
-  ])
-
-(set-charset-mapping-table
- 'latin-viscii-upper
- [nil          ; 0x20
-  ?\u1eae      ; 0x21
-  ?\u1eb0      ; 0x22
-  ?\u1eb6      ; 0x23
-  ?\u1ea4      ; 0x24
-  ?\u1ea6      ; 0x25
-  ?\u1ea8      ; 0x26
-  ?\u1eac      ; 0x27
-  ?\u1ebc      ; 0x28
-  ?\u1eb8      ; 0x29
-  ?\u1ebe      ; 0x2a
-  ?\u1ec0      ; 0x2b
-  ?\u1ec2      ; 0x2c
-  ?\u1ec4      ; 0x2d
-  ?\u1ec6      ; 0x2e
-  ?\u1ed0      ; 0x2f
-  ?\u1ed2      ; 0x30
-  ?\u1ed4      ; 0x31
-  ?\u1ed6      ; 0x32
-  nil          ; 0x33
-  nil          ; 0x34
-  ?\u1ed8      ; 0x35
-  ?\u1edc      ; 0x36
-  ?\u1ede      ; 0x37
-  ?\u1eca      ; 0x38
-  nil          ; 0x39
-  nil          ; 0x3a
-  nil          ; 0x3b
-  nil          ; 0x3c
-  ?\u01a0      ; 0x3d
-  ?\u1eda      ; 0x3e
-  nil          ; 0x3f
-  nil          ; 0x40
-  nil          ; 0x41
-  nil          ; 0x42
-  nil          ; 0x43
-  nil          ; 0x44
-  nil          ; 0x45
-  ?\u1eb2      ; 0x46
-  ?\u1eb4      ; 0x47
-  nil          ; 0x48
-  nil          ; 0x49
-  nil          ; 0x4a
-  nil          ; 0x4b
-  nil          ; 0x4c
-  nil          ; 0x4d
-  nil          ; 0x4e
-  ?\u1ef2      ; 0x4f
-  nil          ; 0x50
-  ?\u1ee8      ; 0x51
-  nil          ; 0x52
-  nil          ; 0x53
-  nil          ; 0x54
-  ?\u1ea0      ; 0x55
-  ?\u1ef6      ; 0x56
-  ?\u1eea      ; 0x57
-  ?\u1eec      ; 0x58
-  nil          ; 0x59
-  nil          ; 0x5a
-  ?\u1ef8      ; 0x5b
-  ?\u1ef4      ; 0x5c
-  nil          ; 0x5d
-  ?\u1ee0      ; 0x5e
-  ?\u01af      ; 0x5f
-  ?\u00c0      ; 0x60
-  ?\u00c1      ; 0x61
-  ?\u00c2      ; 0x62
-  ?\u00c3      ; 0x63
-  ?\u1ea2      ; 0x64
-  ?\u0102      ; 0x65
-  ?\u1eee      ; 0x66
-  ?\u1eaa      ; 0x67
-  ?\u00c8      ; 0x68
-  ?\u00c9      ; 0x69
-  ?\u00ca      ; 0x6a
-  ?\u1eba      ; 0x6b
-  ?\u00cc      ; 0x6c
-  ?\u00cd      ; 0x6d
-  ?\u0128      ; 0x6e
-  ?\u1ec8      ; 0x6f
-  ?\u0110      ; 0x70
-  ?\u1ef0      ; 0x71
-  ?\u00d2      ; 0x72
-  ?\u00d3      ; 0x73
-  ?\u00d4      ; 0x74
-  ?\u00d5      ; 0x75
-  ?\u1ece      ; 0x76
-  ?\u1ecc      ; 0x77
-  ?\u1ee4      ; 0x78
-  ?\u00d9      ; 0x79
-  ?\u00da      ; 0x7a
-  ?\u0168      ; 0x7b
-  ?\u1ee6      ; 0x7c
-  ?\u00dd      ; 0x7d
-  ?\u1ee2      ; 0x7e
-  nil          ; 0x7f
-  ])
-
-;;; ccs-viscii.el ends here
diff --git a/lisp/utf-2000/char-db-util.el b/lisp/utf-2000/char-db-util.el
new file mode 100644 (file)
index 0000000..8fa8fbb
--- /dev/null
@@ -0,0 +1,424 @@
+;;; char-db-util.el --- Character Database utility
+
+;; Copyright (C) 1998, 1999 MORIOKA Tomohiko.
+
+;; Author: MORIOKA Tomohiko <tomo@m17n.org>
+;; Keywords: UTF-2000, ISO/IEC 10646, Unicode, UCS-4, MULE.
+
+;; This file is part of UTF-2000.
+
+;; UTF-2000 is free software; you can redistribute it and/or modify it
+;; under the terms of the GNU General Public License as published by
+;; the Free Software Foundation; either version 2, or (at your option)
+;; any later version.
+
+;; UTF-2000 is distributed in the hope that it will be useful, but
+;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+;; General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with XEmacs; see the file COPYING.  If not, write to the Free
+;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+;; 02111-1307, USA.
+
+;;; Code:
+
+(require 'alist)
+
+(defconst unidata-normative-category-alist
+  '(("Lu" letter       uppercase)
+    ("Ll" letter       lowercase)
+    ("Lt" letter       titlecase)
+    ("Mn" mark         non-spacing)
+    ("Mc" mark         spacing-combining)
+    ("Me" mark         enclosing)
+    ("Nd" number       decimal-digit)
+    ("Nl" number       letter)
+    ("No" number       other)
+    ("Zs" separator    space)
+    ("Zl" separator    line)
+    ("Zp" separator    paragraph)
+    ("Cc" other                control)
+    ("Cf" other                format)
+    ("Cs" other                surrogate)
+    ("Co" other                private-use)
+    ("Cn" other                not-assigned)))
+
+(defconst unidata-informative-category-alist
+  '(("Lm" letter       modifier)
+    ("Lo" letter       other)
+    ("Pc" punctuation  connector)
+    ("Pd" punctuation  dash)
+    ("Ps" punctuation  open)
+    ("Pe" punctuation  close)
+    ("Pi" punctuation  initial-quote)
+    ("Pf" punctuation  final-quote)
+    ("Po" punctuation  other)
+    ("Sm" symbol       math)
+    ("Sc" symbol       currency)
+    ("Sk" symbol       modifier)
+    ("So" symbol       other)
+    ))
+
+(defun char-attribute-name< (ka kb)
+  (cond
+   ((find-charset ka)
+    (cond
+     ((find-charset kb)
+      (cond
+       ((= (charset-dimension ka)
+          (charset-dimension kb))
+       (cond ((= (charset-chars ka)(charset-chars kb))
+              (cond
+               ((>= (charset-final ka) ?@)
+                (if (>= (charset-final kb) ?@)
+                    (< (charset-final ka)
+                       (charset-final kb))
+                  t))
+               ((>= (charset-final ka) ?0)
+                (cond
+                 ((>= (charset-final kb) ?@)
+                  nil)
+                 ((>= (charset-final kb) ?0)
+                  (< (charset-final ka)
+                     (charset-final kb)))
+                 (t)))))
+             ((<= (charset-chars ka)(charset-chars kb)))))
+       (t
+       (< (charset-dimension ka)
+          (charset-dimension kb))
+       )))
+     (t)))
+   ((find-charset kb)
+    t)
+   ((symbolp ka)
+    (cond ((symbolp kb)
+          (string< (symbol-name ka)
+                   (symbol-name kb)))
+         (t)))
+   ((symbolp kb)
+    nil)))
+
+(defun insert-char-data (char)
+  (let ((data (char-attribute-alist char))
+       cell ret name has-long-ccs-name rest)
+    (when data
+      (save-restriction
+       (narrow-to-region (point)(point))
+       (insert "(define-char
+  '(")
+       (when (setq cell (assq 'name data))
+         (setq cell (cdr cell))
+         (insert (format
+                  (if (> (length cell) 47)
+                      "(name . %S)
+    "
+                    "(name\t\t. %S)
+    ")
+                  cell))
+         (setq data (del-alist 'name data))
+         )
+       (when (setq cell (assq 'name data))
+         (setq cell (cdr cell))
+         (insert (format
+                  (if (> (length cell) 47)
+                      "(name . %S)
+    "
+                    "(name\t\t. %S)
+    ")
+                  cell))
+         (setq data (del-alist 'name data))
+         )
+       (when (setq cell (assq 'ucs data))
+         (setq cell (cdr cell))
+         (insert (format "(ucs\t\t. #x%04X)
+    "
+                         cell))
+         (setq data (del-alist 'ucs data))
+         )
+       (when (setq cell (assq '->ucs data))
+         (setq cell (cdr cell))
+         (insert (format "(->ucs\t\t. #x%04X)
+    "
+                         cell))
+         (setq data (del-alist '->ucs data))
+         )
+       (when (setq cell (assq 'general-category data))
+         (setq ret (cdr cell))
+         (insert (format
+                  "(general-category\t%s) ; %s
+    "
+                  (mapconcat (lambda (cell)
+                               (format "%S" cell))
+                             ret " ")
+                  (cond ((rassoc (cdr cell)
+                                 unidata-normative-category-alist)
+                         "Normative Category")
+                        ((rassoc (cdr cell)
+                                 unidata-informative-category-alist)
+                         "Informative Category")
+                        (t
+                         "Unknown Category"))))
+         (setq data (del-alist 'general-category data))
+         )
+       (when (setq cell (assq 'bidi-category data))
+         (setq cell (cdr cell))
+         (insert (format "(bidi-category\t. %S)
+    "
+                         cell))
+         (setq data (del-alist 'bidi-category data))
+         )
+       (when (setq cell (assq 'mirrored data))
+         (setq cell (cdr cell))
+         (insert (format "(mirrored\t\t. %S)
+    "
+                         cell))
+         (setq data (del-alist 'mirrored data))
+         )
+       (cond
+        ((setq cell (assq 'decimal-digit-value data))
+         (setq cell (cdr cell))
+         (insert (format "(decimal-digit-value . %S)
+    "
+                         cell))
+         (setq data (del-alist 'decimal-digit-value data))
+         (when (setq cell (assq 'digit-value data))
+           (setq cell (cdr cell))
+           (insert (format "(digit-value\t . %S)
+    "
+                           cell))
+           (setq data (del-alist 'digit-value data))
+           )
+         (when (setq cell (assq 'numeric-value data))
+           (setq cell (cdr cell))
+           (insert (format "(numeric-value\t . %S)
+    "
+                           cell))
+           (setq data (del-alist 'numeric-value data))
+           )
+         )
+        (t
+         (when (setq cell (assq 'digit-value data))
+           (setq cell (cdr cell))
+           (insert (format "(digit-value\t. %S)
+    "
+                           cell))
+           (setq data (del-alist 'digit-value data))
+           )
+         (when (setq cell (assq 'numeric-value data))
+           (setq cell (cdr cell))
+           (insert (format "(numeric-value\t. %S)
+    "
+                           cell))
+           (setq data (del-alist 'numeric-value data))
+           )))
+       (when (setq cell (assq 'iso-10646-comment data))
+         (setq cell (cdr cell))
+         (insert (format "(iso-10646-comment\t. %S)
+    "
+                         cell))
+         (setq data (del-alist 'iso-10646-comment data))
+         )
+       (when (setq cell (assq '->decomposition data))
+         (setq cell (cdr cell))
+         (insert (format "(->decomposition\t%s)
+    "
+                         (mapconcat (lambda (code)
+                                      (cond ((symbolp code)
+                                             (symbol-name code))
+                                            ((integerp code)
+                                             (format "#x%04X" code))
+                                            (t
+                                             (format "\n     %S" code))))
+                                    cell " ")))
+         (setq data (del-alist '->decomposition data))
+         )
+       (when (setq cell (assq '->uppercase data))
+         (setq cell (cdr cell))
+         (insert (format "(->uppercase\t%s)
+    "
+                         (mapconcat (lambda (code)
+                                      (cond ((symbolp code)
+                                             (symbol-name code))
+                                            ((integerp code)
+                                             (format "#x%04X" code))
+                                            (t
+                                             (format "\n     %S" code))))
+                                    cell " ")))
+         (setq data (del-alist '->uppercase data))
+         )
+       (when (setq cell (assq '->lowercase data))
+         (setq cell (cdr cell))
+         (insert (format "(->lowercase\t%s)
+    "
+                         (mapconcat (lambda (code)
+                                      (cond ((symbolp code)
+                                             (symbol-name code))
+                                            ((integerp code)
+                                             (format "#x%04X" code))
+                                            (t
+                                             (format "\n     %S" code))))
+                                    cell " ")))
+         (setq data (del-alist '->lowercase data))
+         )
+       (when (setq cell (assq '->titlecase data))
+         (setq cell (cdr cell))
+         (insert (format "(->titlecase\t%s)
+    "
+                         (mapconcat (lambda (code)
+                                      (cond ((symbolp code)
+                                             (symbol-name code))
+                                            ((integerp code)
+                                             (format "#x%04X" code))
+                                            (t
+                                             (format "\n     %S" code))))
+                                    cell " ")))
+         (setq data (del-alist '->titlecase data))
+         )
+       (setq data
+             (sort data
+                   (lambda (a b)
+                     (char-attribute-name< (car a)(car b)))))
+       (setq rest data)
+       (while (and rest
+                   (progn
+                     (setq cell (car rest))
+                     (if (setq ret (find-charset (car cell)))
+                         (if (>= (length (symbol-name (charset-name ret))) 19)
+                             (progn
+                               (setq has-long-ccs-name t)
+                               nil)
+                           t)
+                       t)))
+         (setq rest (cdr rest)))
+       (while data
+         (setq cell (car data))
+         (cond ((setq ret (find-charset (car cell)))
+                (insert (format (if has-long-ccs-name
+                                    "(%-26s %s)
+    "
+                                  "(%-18s %s)
+    "
+                                  )
+                                (charset-name ret)
+                                (mapconcat
+                                 (lambda (b)
+                                   (format "#x%02X"
+                                           (if (= (charset-graphic ret) 1)
+                                               (logior b #x80)
+                                             b)))
+                                 (cdr cell) " "))))
+               ((string-match "^->" (symbol-name (car cell)))
+                (insert
+                 (format "(%-18s %s)
+    "
+                         (car cell)
+                         (mapconcat (lambda (code)
+                                      (cond ((symbolp code)
+                                             (symbol-name code))
+                                            ((integerp code)
+                                             (format "#x%04X" code))
+                                            (t
+                                             (format "\n     %S" code))))
+                                    (cdr cell) " "))))
+               ((consp (cdr cell))
+                (insert (format "%S
+    "
+                                cell)))
+               (t
+                (insert (format "(%-18s . %S)
+    "
+                                (car cell)(cdr cell)))
+                ))
+         (setq data (cdr data)))
+       (insert "))\n")
+       (goto-char (point-min))
+       (while (re-search-forward "[ \t]+$" nil t)
+         (replace-match ""))
+       (goto-char (point-max))
+       (tabify (point-min)(point-max))
+       ))))
+
+;;;###autoload
+(defun char-db-update-comment ()
+  (interactive)
+  (save-excursion
+    (goto-char (point-min))
+    (let (cdef table char)
+      (while (re-search-forward "^[ \t]*\\(([^.()]+)\\)" nil t)
+       (goto-char (match-beginning 1))
+       (setq cdef (read (current-buffer)))
+       (when (find-charset (car cdef))
+         (goto-char (match-end 0))
+         (setq char
+               (if (or (memq (car cdef) '(ascii latin-viscii-upper
+                                                latin-viscii-lower
+                                                arabic-iso8859-6))
+                       (= (char-int (charset-final (car cdef))) 0))
+                   (apply (function make-char) cdef)
+                 (if (setq table (charset-mapping-table (car cdef)))
+                     (set-charset-mapping-table (car cdef) nil))
+                 (prog1
+                     (apply (function make-char) cdef)
+                   (if table
+                       (set-charset-mapping-table (car cdef) table)))))
+         (when (not (or (< (char-int char) 32)
+                        (and (<= 128 (char-int char))
+                             (< (char-int char) 160))))
+           (delete-region (point) (point-at-eol))
+           (insert (format "\t; %c" char)))
+         )))))
+
+(defun insert-char-data-with-variant (char)
+  (insert-char-data char)
+  (let ((variants (char-variants char)))
+    (while variants
+      (insert-char-data (car variants))
+      (setq variants (cdr variants))
+      )))
+
+(defun insert-char-range-data (min max)
+  (let ((code min)
+       char
+       variants)
+    (while (<= code max)
+      (setq char (int-char code))
+      (insert-char-data-with-variant char)
+      (setq code (1+ code))
+      )))
+
+(defun write-char-range-data-to-file (min max file)
+  (with-temp-buffer
+    (insert-char-range-data min max)
+    (write-region (point-min)(point-max) file)))
+
+;;;###autoload
+(defun what-char-definition (char)
+  (interactive (list (char-after)))
+  (let ((buf (get-buffer-create "*Character Description*"))
+       (the-buf (current-buffer))
+       (win-conf (current-window-configuration)))
+    (pop-to-buffer buf)
+    (make-local-variable 'what-character-original-window-configuration)
+    (setq what-character-original-window-configuration win-conf)
+    (setq buffer-read-only nil)
+    (erase-buffer)
+    (condition-case err
+       (progn
+         (insert-char-data-with-variant char)
+         (char-db-update-comment)
+         (set-buffer-modified-p nil)
+         (view-mode the-buf (lambda (buf)
+                              (set-window-configuration
+                               what-character-original-window-configuration)
+                              ))
+         (goto-char (point-min)))
+      (error (progn
+              (set-window-configuration
+               what-character-original-window-configuration)
+              (signal (car err) (cdr err)))))))
+
+(provide 'char-db-util)
+
+;;; char-db-util.el ends here
index 3885cc5..7e21898 100644 (file)
@@ -6,6 +6,7 @@
     (mirrored          . nil)
     (ascii             #x20)   ;  
     (ipa               #x7F)   ; \e.0\eN\7f
+    (latin-viscii      #x20)   ;  
     ))
 (define-char
   '((name              . "EXCLAMATION MARK")
@@ -15,6 +16,7 @@
     (mirrored          . nil)
     (ascii             #x21)   ; !
     (latin-jisx0201    #x21)   ; \e(J!\e(B
+    (latin-viscii      #x21)   ; !
     ))
 (define-char
   '((name              . "QUOTATION MARK")
@@ -24,6 +26,7 @@
     (mirrored          . nil)
     (ascii             #x22)   ; "
     (latin-jisx0201    #x22)   ; \e(J"\e(B
+    (latin-viscii      #x22)   ; "
     ))
 (define-char
   '((name              . "NUMBER SIGN")
@@ -33,6 +36,7 @@
     (mirrored          . nil)
     (ascii             #x23)   ; #
     (latin-jisx0201    #x23)   ; \e(J#\e(B
+    (latin-viscii      #x23)   ; #
     ))
 (define-char
   '((name              . "DOLLAR SIGN")
@@ -42,6 +46,7 @@
     (mirrored          . nil)
     (ascii             #x24)   ; $
     (latin-jisx0201    #x24)   ; \e(J$\e(B
+    (latin-viscii      #x24)   ; $
     ))
 (define-char
   '((name              . "PERCENT SIGN")
@@ -51,6 +56,7 @@
     (mirrored          . nil)
     (ascii             #x25)   ; %
     (latin-jisx0201    #x25)   ; \e(J%\e(B
+    (latin-viscii      #x25)   ; %
     ))
 (define-char
   '((name              . "AMPERSAND")
@@ -60,6 +66,7 @@
     (mirrored          . nil)
     (ascii             #x26)   ; &
     (latin-jisx0201    #x26)   ; \e(J&\e(B
+    (latin-viscii      #x26)   ; &
     ))
 (define-char
   '((name              . "APOSTROPHE")
@@ -69,6 +76,7 @@
     (mirrored          . nil)
     (ascii             #x27)   ; '
     (latin-jisx0201    #x27)   ; \e(J'\e(B
+    (latin-viscii      #x27)   ; '
     ))
 (define-char
   '((name              . "LEFT PARENTHESIS")
@@ -78,6 +86,7 @@
     (mirrored          . t)
     (ascii             #x28)   ; (
     (latin-jisx0201    #x28)   ; \e(J(\e(B
+    (latin-viscii      #x28)   ; (
     ))
 (define-char
   '((name              . "RIGHT PARENTHESIS")
@@ -87,6 +96,7 @@
     (mirrored          . t)
     (ascii             #x29)   ; )
     (latin-jisx0201    #x29)   ; \e(J)\e(B
+    (latin-viscii      #x29)   ; )
     ))
 (define-char
   '((name              . "ASTERISK")
     (mirrored          . nil)
     (ascii             #x2A)   ; *
     (latin-jisx0201    #x2A)   ; \e(J*\e(B
+    (latin-viscii      #x2A)   ; *
     ))
 (define-char
   '((name              . "PLUS SIGN")
     (mirrored          . nil)
     (ascii             #x2B)   ; +
     (latin-jisx0201    #x2B)   ; \e(J+\e(B
+    (latin-viscii      #x2B)   ; +
     ))
 (define-char
   '((name              . "COMMA")
     (mirrored          . nil)
     (ascii             #x2C)   ; ,
     (latin-jisx0201    #x2C)   ; \e(J,\e(B
+    (latin-viscii      #x2C)   ; ,
     ))
 (define-char
   '((name              . "HYPHEN-MINUS")
     (mirrored          . nil)
     (ascii             #x2D)   ; -
     (latin-jisx0201    #x2D)   ; \e(J-\e(B
+    (latin-viscii      #x2D)   ; -
     ))
 (define-char
   '((name              . "FULL STOP")
     (mirrored          . nil)
     (ascii             #x2E)   ; .
     (latin-jisx0201    #x2E)   ; \e(J.\e(B
+    (latin-viscii      #x2E)   ; .
     ))
 (define-char
   '((name              . "SOLIDUS")
     (mirrored          . nil)
     (ascii             #x2F)   ; /
     (latin-jisx0201    #x2F)   ; \e(J/\e(B
+    (latin-viscii      #x2F)   ; /
     ))
 (define-char
   '((name              . "DIGIT ZERO")
     (ucs               . #x0030)
     (general-category  number decimal-digit) ; Normative Category
     (bidi-category     . "EN")
-    (decimal-digit-value . 0)
-    (digit-value       . 0)
-    (numeric-value     . 0)
     (mirrored          . nil)
+    (decimal-digit-value . 0)
+    (digit-value        . 0)
+    (numeric-value      . 0)
     (ascii             #x30)   ; 0
     (latin-jisx0201    #x30)   ; \e(J0\e(B
+    (latin-viscii      #x30)   ; 0
     ))
 (define-char
   '((name              . "DIGIT ONE")
     (ucs               . #x0031)
     (general-category  number decimal-digit) ; Normative Category
     (bidi-category     . "EN")
-    (decimal-digit-value . 1)
-    (digit-value       . 1)
-    (numeric-value     . 1)
     (mirrored          . nil)
+    (decimal-digit-value . 1)
+    (digit-value        . 1)
+    (numeric-value      . 1)
     (ascii             #x31)   ; 1
     (latin-jisx0201    #x31)   ; \e(J1\e(B
+    (latin-viscii      #x31)   ; 1
     ))
 (define-char
   '((name              . "DIGIT TWO")
     (ucs               . #x0032)
     (general-category  number decimal-digit) ; Normative Category
     (bidi-category     . "EN")
-    (decimal-digit-value . 2)
-    (digit-value       . 2)
-    (numeric-value     . 2)
     (mirrored          . nil)
+    (decimal-digit-value . 2)
+    (digit-value        . 2)
+    (numeric-value      . 2)
     (ascii             #x32)   ; 2
     (latin-jisx0201    #x32)   ; \e(J2\e(B
+    (latin-viscii      #x32)   ; 2
     ))
 (define-char
   '((name              . "DIGIT THREE")
     (ucs               . #x0033)
     (general-category  number decimal-digit) ; Normative Category
     (bidi-category     . "EN")
-    (decimal-digit-value . 3)
-    (digit-value       . 3)
-    (numeric-value     . 3)
     (mirrored          . nil)
+    (decimal-digit-value . 3)
+    (digit-value        . 3)
+    (numeric-value      . 3)
     (ascii             #x33)   ; 3
     (latin-jisx0201    #x33)   ; \e(J3\e(B
+    (latin-viscii      #x33)   ; 3
     ))
 (define-char
   '((name              . "DIGIT FOUR")
     (ucs               . #x0034)
     (general-category  number decimal-digit) ; Normative Category
     (bidi-category     . "EN")
-    (decimal-digit-value . 4)
-    (digit-value       . 4)
-    (numeric-value     . 4)
     (mirrored          . nil)
+    (decimal-digit-value . 4)
+    (digit-value        . 4)
+    (numeric-value      . 4)
     (ascii             #x34)   ; 4
     (latin-jisx0201    #x34)   ; \e(J4\e(B
+    (latin-viscii      #x34)   ; 4
     ))
 (define-char
   '((name              . "DIGIT FIVE")
     (ucs               . #x0035)
     (general-category  number decimal-digit) ; Normative Category
     (bidi-category     . "EN")
-    (decimal-digit-value . 5)
-    (digit-value       . 5)
-    (numeric-value     . 5)
     (mirrored          . nil)
+    (decimal-digit-value . 5)
+    (digit-value        . 5)
+    (numeric-value      . 5)
     (ascii             #x35)   ; 5
     (latin-jisx0201    #x35)   ; \e(J5\e(B
+    (latin-viscii      #x35)   ; 5
     ))
 (define-char
   '((name              . "DIGIT SIX")
     (ucs               . #x0036)
     (general-category  number decimal-digit) ; Normative Category
     (bidi-category     . "EN")
-    (decimal-digit-value . 6)
-    (digit-value       . 6)
-    (numeric-value     . 6)
     (mirrored          . nil)
+    (decimal-digit-value . 6)
+    (digit-value        . 6)
+    (numeric-value      . 6)
     (ascii             #x36)   ; 6
     (latin-jisx0201    #x36)   ; \e(J6\e(B
+    (latin-viscii      #x36)   ; 6
     ))
 (define-char
   '((name              . "DIGIT SEVEN")
     (ucs               . #x0037)
     (general-category  number decimal-digit) ; Normative Category
     (bidi-category     . "EN")
-    (decimal-digit-value . 7)
-    (digit-value       . 7)
-    (numeric-value     . 7)
     (mirrored          . nil)
+    (decimal-digit-value . 7)
+    (digit-value        . 7)
+    (numeric-value      . 7)
     (ascii             #x37)   ; 7
     (latin-jisx0201    #x37)   ; \e(J7\e(B
+    (latin-viscii      #x37)   ; 7
     ))
 (define-char
   '((name              . "DIGIT EIGHT")
     (ucs               . #x0038)
     (general-category  number decimal-digit) ; Normative Category
     (bidi-category     . "EN")
-    (decimal-digit-value . 8)
-    (digit-value       . 8)
-    (numeric-value     . 8)
     (mirrored          . nil)
+    (decimal-digit-value . 8)
+    (digit-value        . 8)
+    (numeric-value      . 8)
     (ascii             #x38)   ; 8
     (latin-jisx0201    #x38)   ; \e(J8\e(B
+    (latin-viscii      #x38)   ; 8
     ))
 (define-char
   '((name              . "DIGIT NINE")
     (ucs               . #x0039)
     (general-category  number decimal-digit) ; Normative Category
     (bidi-category     . "EN")
-    (decimal-digit-value . 9)
-    (digit-value       . 9)
-    (numeric-value     . 9)
     (mirrored          . nil)
+    (decimal-digit-value . 9)
+    (digit-value        . 9)
+    (numeric-value      . 9)
     (ascii             #x39)   ; 9
     (latin-jisx0201    #x39)   ; \e(J9\e(B
+    (latin-viscii      #x39)   ; 9
     ))
 (define-char
   '((name              . "COLON")
     (mirrored          . nil)
     (ascii             #x3A)   ; :
     (latin-jisx0201    #x3A)   ; \e(J:\e(B
+    (latin-viscii      #x3A)   ; :
     ))
 (define-char
   '((name              . "SEMICOLON")
     (mirrored          . nil)
     (ascii             #x3B)   ; ;
     (latin-jisx0201    #x3B)   ; \e(J;\e(B
+    (latin-viscii      #x3B)   ; ;
     ))
 (define-char
   '((name              . "LESS-THAN SIGN")
     (mirrored          . t)
     (ascii             #x3C)   ; <
     (latin-jisx0201    #x3C)   ; \e(J<\e(B
+    (latin-viscii      #x3C)   ; <
     ))
 (define-char
   '((name              . "EQUALS SIGN")
     (mirrored          . nil)
     (ascii             #x3D)   ; =
     (latin-jisx0201    #x3D)   ; \e(J=\e(B
+    (latin-viscii      #x3D)   ; =
     ))
 (define-char
   '((name              . "GREATER-THAN SIGN")
     (mirrored          . t)
     (ascii             #x3E)   ; >
     (latin-jisx0201    #x3E)   ; \e(J>\e(B
+    (latin-viscii      #x3E)   ; >
     ))
 (define-char
   '((name              . "QUESTION MARK")
     (mirrored          . nil)
     (ascii             #x3F)   ; ?
     (latin-jisx0201    #x3F)   ; \e(J?\e(B
+    (latin-viscii      #x3F)   ; ?
     ))
 (define-char
   '((name              . "COMMERCIAL AT")
     (mirrored          . nil)
     (ascii             #x40)   ; @
     (latin-jisx0201    #x40)   ; \e(J@\e(B
+    (latin-viscii      #x40)   ; @
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER A")
     (->lowercase       #x0061)
     (ascii             #x41)   ; A
     (latin-jisx0201    #x41)   ; \e(JA\e(B
+    (latin-viscii      #x41)   ; A
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER B")
     (->lowercase       #x0062)
     (ascii             #x42)   ; B
     (latin-jisx0201    #x42)   ; \e(JB\e(B
+    (latin-viscii      #x42)   ; B
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER C")
     (->lowercase       #x0063)
     (ascii             #x43)   ; C
     (latin-jisx0201    #x43)   ; \e(JC\e(B
+    (latin-viscii      #x43)   ; C
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER D")
     (->lowercase       #x0064)
     (ascii             #x44)   ; D
     (latin-jisx0201    #x44)   ; \e(JD\e(B
+    (latin-viscii      #x44)   ; D
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER E")
     (->lowercase       #x0065)
     (ascii             #x45)   ; E
     (latin-jisx0201    #x45)   ; \e(JE\e(B
+    (latin-viscii      #x45)   ; E
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER F")
     (->lowercase       #x0066)
     (ascii             #x46)   ; F
     (latin-jisx0201    #x46)   ; \e(JF\e(B
+    (latin-viscii      #x46)   ; F
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER G")
     (->lowercase       #x0067)
     (ascii             #x47)   ; G
     (latin-jisx0201    #x47)   ; \e(JG\e(B
+    (latin-viscii      #x47)   ; G
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER H")
     (->lowercase       #x0068)
     (ascii             #x48)   ; H
     (latin-jisx0201    #x48)   ; \e(JH\e(B
+    (latin-viscii      #x48)   ; H
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER I")
     (->lowercase       #x0069)
     (ascii             #x49)   ; I
     (latin-jisx0201    #x49)   ; \e(JI\e(B
+    (latin-viscii      #x49)   ; I
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER J")
     (->lowercase       #x006A)
     (ascii             #x4A)   ; J
     (latin-jisx0201    #x4A)   ; \e(JJ\e(B
+    (latin-viscii      #x4A)   ; J
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER K")
     (->lowercase       #x006B)
     (ascii             #x4B)   ; K
     (latin-jisx0201    #x4B)   ; \e(JK\e(B
+    (latin-viscii      #x4B)   ; K
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER L")
     (->lowercase       #x006C)
     (ascii             #x4C)   ; L
     (latin-jisx0201    #x4C)   ; \e(JL\e(B
+    (latin-viscii      #x4C)   ; L
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER M")
     (->lowercase       #x006D)
     (ascii             #x4D)   ; M
     (latin-jisx0201    #x4D)   ; \e(JM\e(B
+    (latin-viscii      #x4D)   ; M
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER N")
     (->lowercase       #x006E)
     (ascii             #x4E)   ; N
     (latin-jisx0201    #x4E)   ; \e(JN\e(B
+    (latin-viscii      #x4E)   ; N
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER O")
     (->lowercase       #x006F)
     (ascii             #x4F)   ; O
     (latin-jisx0201    #x4F)   ; \e(JO\e(B
+    (latin-viscii      #x4F)   ; O
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER P")
     (->lowercase       #x0070)
     (ascii             #x50)   ; P
     (latin-jisx0201    #x50)   ; \e(JP\e(B
+    (latin-viscii      #x50)   ; P
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER Q")
     (->lowercase       #x0071)
     (ascii             #x51)   ; Q
     (latin-jisx0201    #x51)   ; \e(JQ\e(B
+    (latin-viscii      #x51)   ; Q
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER R")
     (->lowercase       #x0072)
     (ascii             #x52)   ; R
     (latin-jisx0201    #x52)   ; \e(JR\e(B
+    (latin-viscii      #x52)   ; R
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER S")
     (->lowercase       #x0073)
     (ascii             #x53)   ; S
     (latin-jisx0201    #x53)   ; \e(JS\e(B
+    (latin-viscii      #x53)   ; S
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER T")
     (->lowercase       #x0074)
     (ascii             #x54)   ; T
     (latin-jisx0201    #x54)   ; \e(JT\e(B
+    (latin-viscii      #x54)   ; T
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER U")
     (->lowercase       #x0075)
     (ascii             #x55)   ; U
     (latin-jisx0201    #x55)   ; \e(JU\e(B
+    (latin-viscii      #x55)   ; U
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER V")
     (->lowercase       #x0076)
     (ascii             #x56)   ; V
     (latin-jisx0201    #x56)   ; \e(JV\e(B
+    (latin-viscii      #x56)   ; V
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER W")
     (->lowercase       #x0077)
     (ascii             #x57)   ; W
     (latin-jisx0201    #x57)   ; \e(JW\e(B
+    (latin-viscii      #x57)   ; W
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER X")
     (->lowercase       #x0078)
     (ascii             #x58)   ; X
     (latin-jisx0201    #x58)   ; \e(JX\e(B
+    (latin-viscii      #x58)   ; X
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER Y")
     (->lowercase       #x0079)
     (ascii             #x59)   ; Y
     (latin-jisx0201    #x59)   ; \e(JY\e(B
+    (latin-viscii      #x59)   ; Y
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER Z")
     (->lowercase       #x007A)
     (ascii             #x5A)   ; Z
     (latin-jisx0201    #x5A)   ; \e(JZ\e(B
+    (latin-viscii      #x5A)   ; Z
     ))
 (define-char
   '((name              . "LEFT SQUARE BRACKET")
     (mirrored          . t)
     (ascii             #x5B)   ; [
     (latin-jisx0201    #x5B)   ; \e(J[\e(B
+    (latin-viscii      #x5B)   ; [
     ))
 (define-char
   '((name              . "REVERSE SOLIDUS")
     (bidi-category     . "ON")
     (mirrored          . nil)
     (ascii             #x5C)   ; \
+    (latin-viscii      #x5C)   ; \
     ))
 (define-char
   '((name              . "RIGHT SQUARE BRACKET")
     (mirrored          . t)
     (ascii             #x5D)   ; ]
     (latin-jisx0201    #x5D)   ; \e(J]\e(B
+    (latin-viscii      #x5D)   ; ]
     ))
 (define-char
   '((name              . "CIRCUMFLEX ACCENT")
     (mirrored          . nil)
     (ascii             #x5E)   ; ^
     (latin-jisx0201    #x5E)   ; \e(J^\e(B
+    (latin-viscii      #x5E)   ; ^
     ))
 (define-char
   '((name              . "LOW LINE")
     (mirrored          . nil)
     (ascii             #x5F)   ; _
     (latin-jisx0201    #x5F)   ; \e(J_\e(B
+    (latin-viscii      #x5F)   ; _
     ))
 (define-char
   '((name              . "GRAVE ACCENT")
     (mirrored          . nil)
     (ascii             #x60)   ; `
     (latin-jisx0201    #x60)   ; \e(J`\e(B
+    (latin-viscii      #x60)   ; `
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER A")
     (->titlecase       #x0041)
     (ascii             #x61)   ; a
     (latin-jisx0201    #x61)   ; \e(Ja\e(B
-    (ipa       #x25)   ; \e.0\eN%
+    (ipa               #x25)   ; \e.0\eN%
+    (latin-viscii      #x61)   ; a
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER B")
     (ascii             #x62)   ; b
     (latin-jisx0201    #x62)   ; \e(Jb\e(B
     (ipa               #x41)   ; \e.0\eNA
+    (latin-viscii      #x62)   ; b
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER C")
     (->titlecase       #x0043)
     (ascii             #x63)   ; c
     (latin-jisx0201    #x63)   ; \e(Jc\e(B
+    (latin-viscii      #x63)   ; c
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER D")
     (->titlecase       #x0044)
     (ascii             #x64)   ; d
     (latin-jisx0201    #x64)   ; \e(Jd\e(B
-    (ipa       #x43)   ; \e.0\eNC
+    (ipa               #x43)   ; \e.0\eNC
+    (latin-viscii      #x64)   ; d
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER E")
     (->titlecase       #x0045)
     (ascii             #x65)   ; e
     (latin-jisx0201    #x65)   ; \e(Je\e(B
-    (ipa       #x22)   ; \e.0\eN"
+    (ipa               #x22)   ; \e.0\eN"
+    (latin-viscii      #x65)   ; e
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER F")
     (->titlecase       #x0046)
     (ascii             #x66)   ; f
     (latin-jisx0201    #x66)   ; \e(Jf\e(B
-    (ipa       #x46)   ; \e.0\eNF
+    (ipa               #x46)   ; \e.0\eNF
+    (latin-viscii      #x66)   ; f
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER G")
     (->titlecase       #x0047)
     (ascii             #x67)   ; g
     (latin-jisx0201    #x67)   ; \e(Jg\e(B
-    (ipa       #x45)   ; \e.0\eNE
+    (ipa               #x45)   ; \e.0\eNE
+    (latin-viscii      #x67)   ; g
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER H")
     (->titlecase       #x0048)
     (ascii             #x68)   ; h
     (latin-jisx0201    #x68)   ; \e(Jh\e(B
-    (ipa       #x51)   ; \e.0\eNQ
+    (ipa               #x51)   ; \e.0\eNQ
+    (latin-viscii      #x68)   ; h
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER I")
     (->titlecase       #x0049)
     (ascii             #x69)   ; i
     (latin-jisx0201    #x69)   ; \e(Ji\e(B
-    (ipa       #x20)   ; \e.0\e
+    (ipa               #x20)   ; \e.0\e
+    (latin-viscii      #x69)   ; i
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER J")
     (->titlecase       #x004A)
     (ascii             #x6A)   ; j
     (latin-jisx0201    #x6A)   ; \e(Jj\e(B
-    (ipa       #x59)   ; \e.0\eNY
+    (ipa               #x59)   ; \e.0\eNY
+    (latin-viscii      #x6A)   ; j
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER K")
     (->titlecase       #x004B)
     (ascii             #x6B)   ; k
     (latin-jisx0201    #x6B)   ; \e(Jk\e(B
-    (ipa       #x44)   ; \e.0\eND
+    (ipa               #x44)   ; \e.0\eND
+    (latin-viscii      #x6B)   ; k
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER L")
     (->titlecase       #x004C)
     (ascii             #x6C)   ; l
     (latin-jisx0201    #x6C)   ; \e(Jl\e(B
-    (ipa       #x5A)   ; \e.0\eNZ
+    (ipa               #x5A)   ; \e.0\eNZ
+    (latin-viscii      #x6C)   ; l
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER M")
     (->titlecase       #x004D)
     (ascii             #x6D)   ; m
     (latin-jisx0201    #x6D)   ; \e(Jm\e(B
-    (ipa       #x52)   ; \e.0\eNR
+    (ipa               #x52)   ; \e.0\eNR
+    (latin-viscii      #x6D)   ; m
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER N")
     (->titlecase       #x004E)
     (ascii             #x6E)   ; n
     (latin-jisx0201    #x6E)   ; \e(Jn\e(B
-    (ipa       #x53)   ; \e.0\eNS
+    (ipa               #x53)   ; \e.0\eNS
+    (latin-viscii      #x6E)   ; n
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER O")
     (->titlecase       #x004F)
     (ascii             #x6F)   ; o
     (latin-jisx0201    #x6F)   ; \e(Jo\e(B
-    (ipa       #x36)   ; \e.0\eN6
+    (ipa               #x36)   ; \e.0\eN6
+    (latin-viscii      #x6F)   ; o
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER P")
     (->titlecase       #x0050)
     (ascii             #x70)   ; p
     (latin-jisx0201    #x70)   ; \e(Jp\e(B
-    (ipa       #x40)   ; \e.0\eN@
+    (ipa               #x40)   ; \e.0\eN@
+    (latin-viscii      #x70)   ; p
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER Q")
     (->titlecase       #x0051)
     (ascii             #x71)   ; q
     (latin-jisx0201    #x71)   ; \e(Jq\e(B
+    (latin-viscii      #x71)   ; q
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER R")
     (->titlecase       #x0052)
     (ascii             #x72)   ; r
     (latin-jisx0201    #x72)   ; \e(Jr\e(B
-    (ipa       #x56)   ; \e.0\eNV
+    (ipa               #x56)   ; \e.0\eNV
+    (latin-viscii      #x72)   ; r
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER S")
     (->titlecase       #x0053)
     (ascii             #x73)   ; s
     (latin-jisx0201    #x73)   ; \e(Js\e(B
-    (ipa       #x4A)   ; \e.0\eNJ
+    (ipa               #x4A)   ; \e.0\eNJ
+    (latin-viscii      #x73)   ; s
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER T")
     (->titlecase       #x0054)
     (ascii             #x74)   ; t
     (latin-jisx0201    #x74)   ; \e(Jt\e(B
-    (ipa       #x42)   ; \e.0\eNB
+    (ipa               #x42)   ; \e.0\eNB
+    (latin-viscii      #x74)   ; t
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER U")
     (->titlecase       #x0055)
     (ascii             #x75)   ; u
     (latin-jisx0201    #x75)   ; \e(Ju\e(B
-    (ipa       #x34)   ; \e.0\eN4
+    (ipa               #x34)   ; \e.0\eN4
+    (latin-viscii      #x75)   ; u
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER V")
     (->titlecase       #x0056)
     (ascii             #x76)   ; v
     (latin-jisx0201    #x76)   ; \e(Jv\e(B
-    (ipa       #x47)   ; \e.0\eNG
+    (ipa               #x47)   ; \e.0\eNG
+    (latin-viscii      #x76)   ; v
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER W")
     (ascii             #x77)   ; w
     (latin-jisx0201    #x77)   ; \e(Jw\e(B
     (ipa               #x5E)   ; \e.0\eN^
+    (latin-viscii      #x77)   ; w
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER X")
     (->titlecase       #x0058)
     (ascii             #x78)   ; x
     (latin-jisx0201    #x78)   ; \e(Jx\e(B
-    (ipa       #x4F)   ; \e.0\eNO
+    (ipa               #x4F)   ; \e.0\eNO
+    (latin-viscii      #x78)   ; x
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER Y")
     (->titlecase       #x0059)
     (ascii             #x79)   ; y
     (latin-jisx0201    #x79)   ; \e(Jy\e(B
-    (ipa       #x2D)   ; \e.0\eN-
+    (ipa               #x2D)   ; \e.0\eN-
+    (latin-viscii      #x79)   ; y
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER Z")
     (->titlecase       #x005A)
     (ascii             #x7A)   ; z
     (latin-jisx0201    #x7A)   ; \e(Jz\e(B
-    (ipa       #x4B)   ; \e.0\eNK
+    (ipa               #x4B)   ; \e.0\eNK
+    (latin-viscii      #x7A)   ; z
     ))
 (define-char
   '((name              . "LEFT CURLY BRACKET")
     (mirrored          . t)
     (ascii             #x7B)   ; {
     (latin-jisx0201    #x7B)   ; \e(J{\e(B
+    (latin-viscii      #x7B)   ; {
     ))
 (define-char
   '((name              . "VERTICAL LINE")
     (mirrored          . nil)
     (ascii             #x7C)   ; |
     (latin-jisx0201    #x7C)   ; \e(J|\e(B
+    (latin-viscii      #x7C)   ; |
     ))
 (define-char
   '((name              . "RIGHT CURLY BRACKET")
     (mirrored          . t)
     (ascii             #x7D)   ; }
     (latin-jisx0201    #x7D)   ; \e(J}\e(B
+    (latin-viscii      #x7D)   ; }
     ))
 (define-char
   '((name              . "TILDE")
     (bidi-category     . "ON")
     (mirrored          . nil)
     (ascii             #x7E)   ; ~
+    (latin-viscii      #x7E)   ; ~
     ))
 (define-char
   '((ucs               . #x007F)
     (bidi-category     . "BN")
     (mirrored          . nil)
     (ascii             #x7F)
+    (latin-viscii      #x7F)
     ))
index c264359..e701f1b 100755 (executable)
@@ -3,16 +3,16 @@
     (ucs               . #x00A0)
     (general-category  separator space) ; Normative Category
     (bidi-category     . "CS")
-    (->decomposition   noBreak #x0020)
     (mirrored          . nil)
-    (latin-iso8859-1   #x20)   ; \e.A\e
-    (latin-iso8859-2   #x20)   ; \e.A\e
-    (latin-iso8859-3   #x20)   ; \e.A\e
-    (latin-iso8859-4   #x20)   ; \e.A\e
-    (greek-iso8859-7   #x20)   ; \e.A\e
-    (cyrillic-iso8859-5        #x20)   ; \e.A\e
-    (latin-iso8859-9   #x20)   ; \e.A\e
-    (hebrew-iso8859-8  #x20)   ; \e.A\e
+    (->decomposition   noBreak #x0020)
+    (latin-iso8859-1   #xA0)   ; \e.A\e
+    (latin-iso8859-2   #xA0)   ; \e.B\e
+    (latin-iso8859-3   #xA0)   ; \e.C\e
+    (latin-iso8859-4   #xA0)   ; \e.D\e
+    (greek-iso8859-7   #xA0)   ; \e.F\e
+    (hebrew-iso8859-8  #xA0)   ; \e[2]\e.H\e\e[0]
+    (cyrillic-iso8859-5 #xA0)  ; \e.L\e
+    (latin-iso8859-9   #xA0)   ; \e.M\e
     ))
 (define-char
   '((name              . "INVERTED EXCLAMATION MARK")
     (general-category  punctuation other) ; Informative Category
     (bidi-category     . "ON")
     (mirrored          . nil)
-    (latin-iso8859-1   #x21)   ; \e.A\eN!
-    (latin-iso8859-9   #x21)   ; \e.A\eN!
+    (latin-iso8859-1   #xA1)   ; \e.A\eN!
+    (latin-iso8859-9   #xA1)   ; \e.M\eN!
     ))
 (define-char
   '((name              . "FULLWIDTH INVERTED EXCLAMATION MARK")
     (->ucs             . #x00A1)
     (general-category  punctuation other) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   wide #x00A1)
     (mirrored          . nil)
+    (->decomposition   wide #x00A1)
     (korean-ksc5601    #x22 #x2E)      ; \e$(D"B\e(B
     (japanese-jisx0212 #x22 #x42)      ; \e$(D"B\e(B
     ))
@@ -39,9 +39,9 @@
     (general-category  symbol currency) ; Informative Category
     (bidi-category     . "ET")
     (mirrored          . nil)
-    (latin-iso8859-1   #x22)   ; \e.A\eN"
-    (latin-iso8859-9   #x22)   ; \e.A\eN"
-    (hebrew-iso8859-8  #x22)   ; \e.A\eN"
+    (latin-iso8859-1   #xA2)   ; \e.A\eN"
+    (hebrew-iso8859-8  #xA2)   ; \e[2]\e.H\eN"\e[0]
+    (latin-iso8859-9   #xA2)   ; \e.M\eN"
     ))
 (define-char
   '((name              . "POUND SIGN")
     (general-category  symbol currency) ; Informative Category
     (bidi-category     . "ET")
     (mirrored          . nil)
-    (latin-iso8859-1   #x23)   ; \e.A\eN#
-    (latin-iso8859-3   #x23)   ; \e.A\eN#
-    (greek-iso8859-7   #x23)   ; \e.A\eN#
-    (latin-iso8859-9   #x23)   ; \e.A\eN#
-    (hebrew-iso8859-8  #x23)   ; \e.A\eN#
+    (latin-iso8859-1   #xA3)   ; \e.A\eN#
+    (latin-iso8859-3   #xA3)   ; \e.C\eN#
+    (greek-iso8859-7   #xA3)   ; \e.F\eN#
+    (hebrew-iso8859-8  #xA3)   ; \e[2]\e.H\eN#\e[0]
+    (latin-iso8859-9   #xA3)   ; \e.M\eN#
     ))
 (define-char
   '((name              . "CURRENCY SIGN")
     (general-category  symbol currency) ; Informative Category
     (bidi-category     . "ET")
     (mirrored          . nil)
-    (latin-iso8859-1   #x24)   ; \e.A\eN$
-    (latin-iso8859-2   #x24)   ; \e.A\eN$
-    (latin-iso8859-3   #x24)   ; \e.A\eN$
-    (latin-iso8859-4   #x24)   ; \e.A\eN$
-    (latin-iso8859-9   #x24)   ; \e.A\eN$
-    (hebrew-iso8859-8  #x24)   ; \e.A\eN$
+    (latin-iso8859-1   #xA4)   ; \e.A\eN$
+    (latin-iso8859-2   #xA4)   ; \e.B\eN$
+    (latin-iso8859-3   #xA4)   ; \e.C\eN$
+    (latin-iso8859-4   #xA4)   ; \e.D\eN$
+    (hebrew-iso8859-8  #xA4)   ; \e[2]\e.H\eN$\e[0]
+    (latin-iso8859-9   #xA4)   ; \e.M\eN$
     ))
 (define-char
   '((name              . "FULLWIDTH CURRENCY SIGN")
@@ -76,7 +76,7 @@
     (mirrored          . nil)
     (->decomposition   wide #x00A4)
     (chinese-gb2312    #x21 #x68)      ; \e$(D"p\e(B
-    (korean-ksc5601    #x22 #x34)      ; \e$(D"p\e(B
+    (korean-ksc5601    #x22 #x34)      ; \e$(C"4\e(B
     (japanese-jisx0212 #x22 #x70)      ; \e$(D"p\e(B
     ))
 (define-char
     (general-category  symbol currency) ; Informative Category
     (bidi-category     . "ET")
     (mirrored          . nil)
-    (latin-jisx0201    #x5C)   ; \e.A\eN%
-    (latin-iso8859-1   #x25)   ; \e.A\eN%
-    (latin-iso8859-9   #x25)   ; \e.A\eN%
-    (hebrew-iso8859-8  #x25)   ; \e.A\eN%
+    (latin-jisx0201    #x5C)   ; \e(J\\e(B
+    (latin-iso8859-1   #xA5)   ; \e.A\eN%
+    (hebrew-iso8859-8  #xA5)   ; \e[2]\e.H\eN%\e[0]
+    (latin-iso8859-9   #xA5)   ; \e.M\eN%
     ))
 (define-char
   '((name              . "BROKEN BAR")
     (general-category  symbol other) ; Informative Category
     (bidi-category     . "ON")
     (mirrored          . nil)
-    (latin-iso8859-1   #x26)   ; \e.A\eN&
-    (greek-iso8859-7   #x26)   ; \e.A\eN&
-    (latin-iso8859-9   #x26)   ; \e.A\eN&
-    (hebrew-iso8859-8  #x26)   ; \e.A\eN&
+    (latin-iso8859-1   #xA6)   ; \e.A\eN&
+    (greek-iso8859-7   #xA6)   ; \e.F\eN&
+    (hebrew-iso8859-8  #xA6)   ; \e[2]\e.H\eN&\e[0]
+    (latin-iso8859-9   #xA6)   ; \e.M\eN&
     ))
 (define-char
   '((name              . "SECTION SIGN")
     (general-category  symbol other) ; Informative Category
     (bidi-category     . "ON")
     (mirrored          . nil)
-    (latin-iso8859-1   #x27)   ; \e.A\eN'
-    (latin-iso8859-2   #x27)   ; \e.A\eN'
-    (latin-iso8859-3   #x27)   ; \e.A\eN'
-    (latin-iso8859-4   #x27)   ; \e.A\eN'
-    (greek-iso8859-7   #x27)   ; \e.A\eN'
-    (cyrillic-iso8859-5        #x7D)   ; \e.A\eN'
-    (latin-iso8859-9   #x27)   ; \e.A\eN'
-    (hebrew-iso8859-8  #x27)   ; \e.A\eN'
+    (latin-iso8859-1   #xA7)   ; \e.A\eN'
+    (latin-iso8859-2   #xA7)   ; \e.B\eN'
+    (latin-iso8859-3   #xA7)   ; \e.C\eN'
+    (latin-iso8859-4   #xA7)   ; \e.D\eN'
+    (greek-iso8859-7   #xA7)   ; \e.F\eN'
+    (hebrew-iso8859-8  #xA7)   ; \e[2]\e.H\eN'\e[0]
+    (cyrillic-iso8859-5 #xFD)  ; \e.L\eN}
+    (latin-iso8859-9   #xA7)   ; \e.M\eN'
     ))
 (define-char
   '((name              . "FULLWIDTH SECTION SIGN")
     (->ucs             . #x00A7)
     (general-category  symbol other) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   wide #x00A7)
     (mirrored          . nil)
+    (->decomposition   wide #x00A7)
     (japanese-jisx0208-1978    #x21 #x78)      ; \e$B!x\e(B
-    (chinese-gb2312            #x21 #x6C)      ; \e$B!x\e(B
+    (chinese-gb2312            #x21 #x6C)      ; \e$A!l\e(B
     (japanese-jisx0208         #x21 #x78)      ; \e$B!x\e(B
-    (korean-ksc5601            #x21 #x57)      ; \e$B!x\e(B
-    (chinese-cns11643-1                #x21 #x70)      ; \e$B!x\e(B
+    (korean-ksc5601            #x21 #x57)      ; \e$(C!W\e(B
+    (chinese-cns11643-1                #x21 #x70)      ; \e$(G!p\e(B
     ))
 (define-char
   '((name              . "DIAERESIS")
     (ucs               . #x00A8)
     (general-category  symbol modifier) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   compat #x0020 #x0308)
     (mirrored          . nil)
-    (latin-iso8859-1   #x28)   ; \e.A\eN(
-    (latin-iso8859-2   #x28)   ; \e.A\eN(
-    (latin-iso8859-3   #x28)   ; \e.A\eN(
-    (latin-iso8859-4   #x28)   ; \e.A\eN(
-    (greek-iso8859-7   #x28)   ; \e.A\eN(
-    (latin-iso8859-9   #x28)   ; \e.A\eN(
-    (hebrew-iso8859-8  #x28)   ; \e.A\eN(
+    (->decomposition   compat #x0020 #x0308)
+    (latin-iso8859-1   #xA8)   ; \e.A\eN(
+    (latin-iso8859-2   #xA8)   ; \e.B\eN(
+    (latin-iso8859-3   #xA8)   ; \e.C\eN(
+    (latin-iso8859-4   #xA8)   ; \e.D\eN(
+    (greek-iso8859-7   #xA8)   ; \e.F\eN(
+    (hebrew-iso8859-8  #xA8)   ; \e[2]\e.H\eN(\e[0]
+    (latin-iso8859-9   #xA8)   ; \e.M\eN(
     ))
 (define-char
   '((name              . "FULLWIDTH DIAERESIS")
     (->ucs             . #x00A8)
     (general-category  symbol modifier) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   wide #x00A8)
     (mirrored          . nil)
+    (->decomposition   wide #x00A8)
     (japanese-jisx0208-1978    #x21 #x2F)      ; \e$B!/\e(B
-    (chinese-gb2312            #x21 #x27)      ; \e$B!/\e(B
+    (chinese-gb2312            #x21 #x27)      ; \e$A!'\e(B
     (japanese-jisx0208         #x21 #x2F)      ; \e$B!/\e(B
-    (korean-ksc5601            #x21 #x27)      ; \e$B!/\e(B
+    (korean-ksc5601            #x21 #x27)      ; \e$(C!'\e(B
     ))
 (define-char
   '((name              . "COPYRIGHT SIGN")
     (general-category  symbol other) ; Informative Category
     (bidi-category     . "ON")
     (mirrored          . nil)
-    (latin-iso8859-1   #x29)   ; \e.A\eN)
-    (greek-iso8859-7   #x29)   ; \e.A\eN)
-    (latin-iso8859-9   #x29)   ; \e.A\eN)
-    (hebrew-iso8859-8  #x29)   ; \e.A\eN)
+    (latin-iso8859-1   #xA9)   ; \e.A\eN)
+    (greek-iso8859-7   #xA9)   ; \e.F\eN)
+    (hebrew-iso8859-8  #xA9)   ; \e[2]\e.H\eN)\e[0]
+    (latin-iso8859-9   #xA9)   ; \e.M\eN)
     ))
 (define-char
   '((name              . "FULLWIDTH COPYRIGHT SIGN")
     (->ucs             . #x00A9)
     (general-category  symbol other) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   wide #x00A9)
     (mirrored          . nil)
+    (->decomposition   wide #x00A9)
     (japanese-jisx0212 #x22 #x6D)      ; \e$(D"m\e(B
     ))
 (define-char
     (ucs               . #x00AA)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   super #x0061)
     (mirrored          . nil)
-    (latin-iso8859-1   #x2A)   ; \e.A\eN*
-    (latin-iso8859-9   #x2A)   ; \e.A\eN*
+    (->decomposition   super #x0061)
+    (latin-iso8859-1   #xAA)   ; \e.A\eN*
+    (latin-iso8859-9   #xAA)   ; \e.M\eN*
     ))
 (define-char
   '((name              . "FULLWIDTH FEMININE ORDINAL INDICATOR")
     (->ucs             . #x00AA)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00AA)
     (mirrored          . nil)
+    (->decomposition   wide #x00AA)
     (korean-ksc5601    #x28 #x23)      ; \e$(D"l\e(B
     (japanese-jisx0212 #x22 #x6C)      ; \e$(D"l\e(B
     ))
     (bidi-category     . "ON")
     (mirrored          . t)
     (iso-10646-comment . "*")
-    (latin-iso8859-1   #x2B)   ; \e.A\eN+
-    (greek-iso8859-7   #x2B)   ; \e.A\eN+
-    (latin-iso8859-9   #x2B)   ; \e.A\eN+
-    (hebrew-iso8859-8  #x2B)   ; \e.A\eN+
+    (latin-iso8859-1   #xAB)   ; \e.A\eN+
+    (greek-iso8859-7   #xAB)   ; \e.F\eN+
+    (hebrew-iso8859-8  #xAB)   ; \e[2]\e.H\eN+\e[0]
+    (latin-iso8859-9   #xAB)   ; \e.M\eN+
     ))
 (define-char
   '((name              . "NOT SIGN")
     (general-category  symbol math) ; Informative Category
     (bidi-category     . "ON")
     (mirrored          . nil)
-    (latin-iso8859-1   #x2C)   ; \e.A\eN,
-    (greek-iso8859-7   #x2C)   ; \e.A\eN,
-    (latin-iso8859-9   #x2C)   ; \e.A\eN,
-    (hebrew-iso8859-8  #x2C)   ; \e.A\eN,
+    (latin-iso8859-1   #xAC)   ; \e.A\eN,
+    (greek-iso8859-7   #xAC)   ; \e.F\eN,
+    (hebrew-iso8859-8  #xAC)   ; \e[2]\e.H\eN,\e[0]
+    (latin-iso8859-9   #xAC)   ; \e.M\eN,
     ))
 (define-char
   '((name              . "SOFT HYPHEN")
     (general-category  punctuation dash) ; Informative Category
     (bidi-category     . "ON")
     (mirrored          . nil)
-    (latin-iso8859-1   #x2D)   ; \e.A\eN-
-    (latin-iso8859-2   #x2D)   ; \e.A\eN-
-    (latin-iso8859-3   #x2D)   ; \e.A\eN-
-    (latin-iso8859-4   #x2D)   ; \e.A\eN-
-    (greek-iso8859-7   #x2D)   ; \e.A\eN-
-    (cyrillic-iso8859-5        #x2D)   ; \e.A\eN-
-    (latin-iso8859-9   #x2D)   ; \e.A\eN-
-    (hebrew-iso8859-8  #x2D)   ; \e.A\eN-
+    (latin-iso8859-1   #xAD)   ; \e.A\eN-
+    (latin-iso8859-2   #xAD)   ; \e.B\eN-
+    (latin-iso8859-3   #xAD)   ; \e.C\eN-
+    (latin-iso8859-4   #xAD)   ; \e.D\eN-
+    (greek-iso8859-7   #xAD)   ; \e.F\eN-
+    (hebrew-iso8859-8  #xAD)   ; \e[2]\e.H\eN-\e[0]
+    (cyrillic-iso8859-5 #xAD)  ; \e.L\eN-
+    (latin-iso8859-9   #xAD)   ; \e.M\eN-
     ))
 (define-char
   '((name              . "FULLWIDTH SOFT HYPHEN")
     (->ucs             . #x00AD)
     (general-category  punctuation dash) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   wide #x00AD)
     (mirrored          . nil)
+    (->decomposition   wide #x00AD)
     (korean-ksc5601    #x21 #x29)      ; \e$(C!)\e(B
     ))
 (define-char
     (general-category  symbol other) ; Informative Category
     (bidi-category     . "ON")
     (mirrored          . nil)
-    (latin-iso8859-1   #x2E)   ; \e.A\eN.
-    (latin-iso8859-9   #x2E)   ; \e.A\eN.
-    (hebrew-iso8859-8  #x2E)   ; \e.A\eN.
+    (latin-iso8859-1   #xAE)   ; \e.A\eN.
+    (hebrew-iso8859-8  #xAE)   ; \e[2]\e.H\eN.\e[0]
+    (latin-iso8859-9   #xAE)   ; \e.M\eN.
     ))
 (define-char
   '((name              . "FULLWIDTH REGISTERED SIGN")
     (->ucs             . #x00AE)
     (general-category  symbol other) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   wide #x00AE)
     (mirrored          . nil)
+    (->decomposition   wide #x00AE)
     (japanese-jisx0212 #x22 #x6E)      ; \e$(D"n\e(B
     ))
 (define-char
     (ucs               . #x00AF)
     (general-category  symbol modifier) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   compat #x0020 #x0304)
     (mirrored          . nil)
-    (latin-iso8859-1   #x2F)   ; \e.A\eN/
-    (latin-iso8859-4   #x2F)   ; \e.A\eN/
-    (latin-iso8859-9   #x2F)   ; \e.A\eN/
+    (->decomposition   compat #x0020 #x0304)
+    (latin-iso8859-1   #xAF)   ; \e.A\eN/
+    (latin-iso8859-4   #xAF)   ; \e.D\eN/
+    (latin-iso8859-9   #xAF)   ; \e.M\eN/
     ))
 (define-char
   '((name              . "DEGREE SIGN")
     (general-category  symbol other) ; Informative Category
     (bidi-category     . "ET")
     (mirrored          . nil)
-    (latin-iso8859-1   #x30)   ; \e.A\eN0
-    (latin-iso8859-2   #x30)   ; \e.A\eN0
-    (latin-iso8859-3   #x30)   ; \e.A\eN0
-    (latin-iso8859-4   #x30)   ; \e.A\eN0
-    (greek-iso8859-7   #x30)   ; \e.A\eN0
-    (latin-iso8859-9   #x30)   ; \e.A\eN0
-    (hebrew-iso8859-8  #x30)   ; \e.A\eN0
+    (latin-iso8859-1   #xB0)   ; \e.A\eN0
+    (latin-iso8859-2   #xB0)   ; \e.B\eN0
+    (latin-iso8859-3   #xB0)   ; \e.C\eN0
+    (latin-iso8859-4   #xB0)   ; \e.D\eN0
+    (greek-iso8859-7   #xB0)   ; \e.F\eN0
+    (hebrew-iso8859-8  #xB0)   ; \e[2]\e.H\eN0\e[0]
+    (latin-iso8859-9   #xB0)   ; \e.M\eN0
     ))
 (define-char
   '((name              . "FULLWIDTH DEGREE SIGN")
     (->ucs             . #x00B0)
     (general-category  symbol other) ; Informative Category
     (bidi-category     . "ET")
-    (->decomposition   wide #x00B0)
     (mirrored          . nil)
+    (->decomposition   wide #x00B0)
     (japanese-jisx0208-1978    #x21 #x6B)      ; \e$B!k\e(B
-    (chinese-gb2312            #x21 #x63)      ; \e$B!k\e(B
+    (chinese-gb2312            #x21 #x63)      ; \e$A!c\e(B
     (japanese-jisx0208         #x21 #x6B)      ; \e$B!k\e(B
-    (korean-ksc5601            #x21 #x46)      ; \e$B!k\e(B
-    (chinese-cns11643-1                #x22 #x78)      ; \e$B!k\e(B
+    (korean-ksc5601            #x21 #x46)      ; \e$(C!F\e(B
+    (chinese-cns11643-1                #x22 #x78)      ; \e$(G"x\e(B
     ))
 (define-char
   '((name              . "PLUS-MINUS SIGN")
     (general-category  symbol math) ; Informative Category
     (bidi-category     . "ET")
     (mirrored          . nil)
-    (latin-iso8859-1   #x31)   ; \e.A\eN1
-    (greek-iso8859-7   #x31)   ; \e.A\eN1
-    (latin-iso8859-9   #x31)   ; \e.A\eN1
-    (hebrew-iso8859-8  #x31)   ; \e.A\eN1
+    (latin-iso8859-1   #xB1)   ; \e.A\eN1
+    (greek-iso8859-7   #xB1)   ; \e.F\eN1
+    (hebrew-iso8859-8  #xB1)   ; \e[2]\e.H\eN1\e[0]
+    (latin-iso8859-9   #xB1)   ; \e.M\eN1
     ))
 (define-char
   '((name              . "FULLWIDTH PLUS-MINUS SIGN")
     (->ucs             . #x00B1)
     (general-category  symbol math) ; Informative Category
     (bidi-category     . "ET")
-    (->decomposition   wide #x00B1)
     (mirrored          . nil)
+    (->decomposition   wide #x00B1)
     (japanese-jisx0208-1978    #x21 #x5E)      ; \e$B!^\e(B
-    (chinese-gb2312            #x21 #x40)      ; \e$B!^\e(B
+    (chinese-gb2312            #x21 #x40)      ; \e$A!@\e(B
     (japanese-jisx0208         #x21 #x5E)      ; \e$B!^\e(B
-    (korean-ksc5601            #x21 #x3E)      ; \e$B!^\e(B
-    (chinese-cns11643-1                #x22 #x34)      ; \e$B!^\e(B
+    (korean-ksc5601            #x21 #x3E)      ; \e$(C!>\e(B
+    (chinese-cns11643-1                #x22 #x34)      ; \e$(G"4\e(B
     ))
 (define-char
   '((name              . "SUPERSCRIPT TWO")
     (ucs               . #x00B2)
     (general-category  number other) ; Normative Category
     (bidi-category     . "EN")
-    (->decomposition   super #x0032)
-    (decimal-digit-value . 2)
-    (digit-value       . 2)
-    (numeric-value     . 2)
     (mirrored          . nil)
-    (latin-iso8859-1   #x32)   ; \e.A\eN2
-    (latin-iso8859-3   #x32)   ; \e.A\eN2
-    (greek-iso8859-7   #x32)   ; \e.A\eN2
-    (latin-iso8859-9   #x32)   ; \e.A\eN2
-    (hebrew-iso8859-8  #x32)   ; \e.A\eN2
+    (decimal-digit-value . 2)
+    (digit-value        . 2)
+    (numeric-value      . 2)
+    (->decomposition   super #x0032)
+    (latin-iso8859-1   #xB2)   ; \e.A\eN2
+    (latin-iso8859-3   #xB2)   ; \e.C\eN2
+    (greek-iso8859-7   #xB2)   ; \e.F\eN2
+    (hebrew-iso8859-8  #xB2)   ; \e[2]\e.H\eN2\e[0]
+    (latin-iso8859-9   #xB2)   ; \e.M\eN2
     ))
 (define-char
   '((name              . "FULLWIDTH SUPERSCRIPT TWO")
     (->ucs             . #x00B2)
     (general-category  number other) ; Normative Category
     (bidi-category     . "EN")
-    (->decomposition   wide #x00B2)
-    (decimal-digit-value . 2)
-    (digit-value       . 2)
-    (numeric-value     . 2)
     (mirrored          . nil)
+    (decimal-digit-value . 2)
+    (digit-value        . 2)
+    (numeric-value      . 2)
+    (->decomposition   wide #x00B2)
     (korean-ksc5601    #x29 #x77)      ; \e$(C)w\e(B
     ))
 (define-char
     (ucs               . #x00B3)
     (general-category  number other) ; Normative Category
     (bidi-category     . "EN")
-    (->decomposition   super #x0033)
-    (decimal-digit-value . 3)
-    (digit-value       . 3)
-    (numeric-value     . 3)
     (mirrored          . nil)
-    (latin-iso8859-1   #x33)   ; \e.A\eN3
-    (latin-iso8859-3   #x33)   ; \e.A\eN3
-    (greek-iso8859-7   #x33)   ; \e.A\eN3
-    (latin-iso8859-9   #x33)   ; \e.A\eN3
-    (hebrew-iso8859-8  #x33)   ; \e.A\eN3
+    (decimal-digit-value . 3)
+    (digit-value        . 3)
+    (numeric-value      . 3)
+    (->decomposition   super #x0033)
+    (latin-iso8859-1   #xB3)   ; \e.A\eN3
+    (latin-iso8859-3   #xB3)   ; \e.C\eN3
+    (greek-iso8859-7   #xB3)   ; \e.F\eN3
+    (hebrew-iso8859-8  #xB3)   ; \e[2]\e.H\eN3\e[0]
+    (latin-iso8859-9   #xB3)   ; \e.M\eN3
     ))
 (define-char
   '((name              . "FULLWIDTH SUPERSCRIPT THREE")
     (->ucs             . #x00B3)
     (general-category  number other) ; Normative Category
     (bidi-category     . "EN")
-    (->decomposition   wide #x00B3)
-    (decimal-digit-value . 3)
-    (digit-value       . 3)
-    (numeric-value     . 3)
     (mirrored          . nil)
+    (decimal-digit-value . 3)
+    (digit-value        . 3)
+    (numeric-value      . 3)
+    (->decomposition   wide #x00B3)
     (korean-ksc5601    #x29 #x78)      ; \e$(C)x\e(B
     ))
 (define-char
     (ucs               . #x00B4)
     (general-category  symbol modifier) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   compat #x0020 #x0301)
     (mirrored          . nil)
-    (latin-iso8859-1   #x34)   ; \e.A\eN4
-    (latin-iso8859-2   #x34)   ; \e.A\eN4
-    (latin-iso8859-3   #x34)   ; \e.A\eN4
-    (latin-iso8859-4   #x34)   ; \e.A\eN4
-    (latin-iso8859-9   #x34)   ; \e.A\eN4
-    (hebrew-iso8859-8  #x34)   ; \e.A\eN4
+    (->decomposition   compat #x0020 #x0301)
+    (latin-iso8859-1   #xB4)   ; \e.A\eN4
+    (latin-iso8859-2   #xB4)   ; \e.B\eN4
+    (latin-iso8859-3   #xB4)   ; \e.C\eN4
+    (latin-iso8859-4   #xB4)   ; \e.D\eN4
+    (hebrew-iso8859-8  #xB4)   ; \e[2]\e.H\eN4\e[0]
+    (latin-iso8859-9   #xB4)   ; \e.M\eN4
     ))
 (define-char
   '((name              . "FULLWIDTH ACUTE ACCENT")
     (->ucs             . #x00B4)
     (general-category  symbol modifier) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   wide #x00B4)
     (mirrored          . nil)
+    (->decomposition   wide #x00B4)
     (japanese-jisx0208-1978    #x21 #x2D)      ; \e$B!-\e(B
     (japanese-jisx0208         #x21 #x2D)      ; \e$B!-\e(B
-    (korean-ksc5601            #x22 #x25)      ; \e$B!-\e(B
+    (korean-ksc5601            #x22 #x25)      ; \e$(C"%\e(B
     ))
 (define-char
   '((name              . "MICRO SIGN")
     (ucs               . #x00B5)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x03BC)
     (mirrored          . nil)
+    (->decomposition   compat #x03BC)
     (->uppercase       #x039C)
     (->titlecase       #x039C)
-    (latin-iso8859-1   #x35)   ; \e.A\eN5
-    (latin-iso8859-3   #x35)   ; \e.A\eN5
-    (latin-iso8859-9   #x35)   ; \e.A\eN5
-    (hebrew-iso8859-8  #x35)   ; \e.A\eN5
+    (latin-iso8859-1   #xB5)   ; \e.A\eN5
+    (latin-iso8859-3   #xB5)   ; \e.C\eN5
+    (hebrew-iso8859-8  #xB5)   ; \e[2]\e.H\eN5\e[0]
+    (latin-iso8859-9   #xB5)   ; \e.M\eN5
     ))
 (define-char
   '((name              . "PILCROW SIGN")
     (general-category  symbol other) ; Informative Category
     (bidi-category     . "ON")
     (mirrored          . nil)
-    (latin-iso8859-1   #x36)   ; \e.A\eN6
-    (latin-iso8859-9   #x36)   ; \e.A\eN6
-    (hebrew-iso8859-8  #x36)   ; \e.A\eN6
+    (latin-iso8859-1   #xB6)   ; \e.A\eN6
+    (hebrew-iso8859-8  #xB6)   ; \e[2]\e.H\eN6\e[0]
+    (latin-iso8859-9   #xB6)   ; \e.M\eN6
     ))
 (define-char
   '((name              . "FULLWIDTH PILCROW SIGN")
     (->ucs             . #x00B6)
     (general-category  symbol other) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   wide #x00B6)
     (mirrored          . nil)
+    (->decomposition   wide #x00B6)
     (japanese-jisx0208 #x22 #x79)      ; \e$B"y\e(B
-    (korean-ksc5601    #x22 #x52)      ; \e$B"y\e(B
+    (korean-ksc5601    #x22 #x52)      ; \e$(C"R\e(B
     ))
 (define-char
   '((name              . "MIDDLE DOT")
     (general-category  punctuation other) ; Informative Category
     (bidi-category     . "ON")
     (mirrored          . nil)
-    (latin-iso8859-1   #x37)   ; \e.A\eN7
-    (latin-iso8859-3   #x37)   ; \e.A\eN7
-    (greek-iso8859-7   #x37)   ; \e.A\eN7
-    (latin-iso8859-9   #x37)   ; \e.A\eN7
-    (hebrew-iso8859-8  #x37)   ; \e.A\eN7
+    (latin-iso8859-1   #xB7)   ; \e.A\eN7
+    (latin-iso8859-3   #xB7)   ; \e.C\eN7
+    (greek-iso8859-7   #xB7)   ; \e.F\eN7
+    (hebrew-iso8859-8  #xB7)   ; \e[2]\e.H\eN7\e[0]
+    (latin-iso8859-9   #xB7)   ; \e.M\eN7
     ))
 (define-char
   '((name              . "FULLWIDTH MIDDLE DOT")
     (->ucs             . #x00B7)
     (general-category  punctuation other) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   wide #x00B7)
     (mirrored          . nil)
+    (->decomposition   wide #x00B7)
     (korean-ksc5601    #x21 #x24)      ; \e$(C!$\e(B
-    (chinese-cns11643-1        #x21 #x26)      ; \e$(C!$\e(B
+    (chinese-cns11643-1 #x21 #x26)     ; \e$(G!&\e(B
     ))
 (define-char
   '((name              . "CEDILLA")
     (ucs               . #x00B8)
     (general-category  symbol modifier) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   compat #x0020 #x0327)
     (mirrored          . nil)
-    (latin-iso8859-1   #x38)   ; \e.A\eN8
-    (latin-iso8859-2   #x38)   ; \e.A\eN8
-    (latin-iso8859-3   #x38)   ; \e.A\eN8
-    (latin-iso8859-4   #x38)   ; \e.A\eN8
-    (latin-iso8859-9   #x38)   ; \e.A\eN8
-    (hebrew-iso8859-8  #x38)   ; \e.A\eN8
+    (->decomposition   compat #x0020 #x0327)
+    (latin-iso8859-1   #xB8)   ; \e.A\eN8
+    (latin-iso8859-2   #xB8)   ; \e.B\eN8
+    (latin-iso8859-3   #xB8)   ; \e.C\eN8
+    (latin-iso8859-4   #xB8)   ; \e.D\eN8
+    (hebrew-iso8859-8  #xB8)   ; \e[2]\e.H\eN8\e[0]
+    (latin-iso8859-9   #xB8)   ; \e.M\eN8
     ))
 (define-char
   '((name              . "FULLWIDTH CEDILLA")
     (->ucs             . #x00B8)
     (general-category  symbol modifier) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   wide #x00B8)
     (mirrored          . nil)
+    (->decomposition   wide #x00B8)
     (korean-ksc5601    #x22 #x2C)      ; \e$(D"1\e(B
     (japanese-jisx0212 #x22 #x31)      ; \e$(D"1\e(B
     ))
     (ucs               . #x00B9)
     (general-category  number other) ; Normative Category
     (bidi-category     . "EN")
-    (->decomposition   super #x0031)
-    (decimal-digit-value . 1)
-    (digit-value       . 1)
-    (numeric-value     . 1)
     (mirrored          . nil)
-    (latin-iso8859-1   #x39)   ; \e.A\eN9
-    (latin-iso8859-9   #x39)   ; \e.A\eN9
-    (hebrew-iso8859-8  #x39)   ; \e.A\eN9
+    (decimal-digit-value . 1)
+    (digit-value        . 1)
+    (numeric-value      . 1)
+    (->decomposition   super #x0031)
+    (latin-iso8859-1   #xB9)   ; \e.A\eN9
+    (hebrew-iso8859-8  #xB9)   ; \e[2]\e.H\eN9\e[0]
+    (latin-iso8859-9   #xB9)   ; \e.M\eN9
     ))
 (define-char
   '((name              . "FULLWIDTH SUPERSCRIPT ONE")
     (->ucs             . #x00B9)
     (general-category  number other) ; Normative Category
     (bidi-category     . "EN")
-    (->decomposition   wide #x00B9)
-    (decimal-digit-value . 1)
-    (digit-value       . 1)
-    (numeric-value     . 1)
     (mirrored          . nil)
+    (decimal-digit-value . 1)
+    (digit-value        . 1)
+    (numeric-value      . 1)
+    (->decomposition   wide #x00B9)
     (korean-ksc5601    #x29 #x76)      ; \e$(C)v\e(B
     ))
 (define-char
     (ucs               . #x00BA)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   super #x006F)
     (mirrored          . nil)
-    (latin-iso8859-1   #x3A)   ; \e.A\eN:
-    (latin-iso8859-9   #x3A)   ; \e.A\eN:
+    (->decomposition   super #x006F)
+    (latin-iso8859-1   #xBA)   ; \e.A\eN:
+    (latin-iso8859-9   #xBA)   ; \e.M\eN:
     ))
 (define-char
   '((name              . "FULLWIDTH MASCULINE ORDINAL INDICATOR")
     (->ucs             . #x00BA)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00BA)
     (mirrored          . nil)
+    (->decomposition   wide #x00BA)
     (korean-ksc5601    #x28 #x2C)      ; \e$(D"k\e(B
     (japanese-jisx0212 #x22 #x6B)      ; \e$(D"k\e(B
     ))
     (bidi-category     . "ON")
     (mirrored          . t)
     (iso-10646-comment . "*")
-    (latin-iso8859-1   #x3B)   ; \e.A\eN;
-    (greek-iso8859-7   #x3B)   ; \e.A\eN;
-    (latin-iso8859-9   #x3B)   ; \e.A\eN;
-    (hebrew-iso8859-8  #x3B)   ; \e.A\eN;
+    (latin-iso8859-1   #xBB)   ; \e.A\eN;
+    (greek-iso8859-7   #xBB)   ; \e.F\eN;
+    (hebrew-iso8859-8  #xBB)   ; \e[2]\e.H\eN;\e[0]
+    (latin-iso8859-9   #xBB)   ; \e.M\eN;
     ))
 (define-char
   '((name              . "VULGAR FRACTION ONE QUARTER")
     (ucs               . #x00BC)
     (general-category  number other) ; Normative Category
     (bidi-category     . "ON")
-    (->decomposition   fraction #x0031 #x2044 #x0034)
-    (numeric-value     . 1/4)
     (mirrored          . nil)
-    (latin-iso8859-1   #x3C)   ; \e.A\eN<
-    (latin-iso8859-9   #x3C)   ; \e.A\eN<
-    (hebrew-iso8859-8  #x3C)   ; \e.A\eN<
+    (numeric-value     . 1/4)
+    (->decomposition   fraction #x0031 #x2044 #x0034)
+    (latin-iso8859-1   #xBC)   ; \e.A\eN<
+    (hebrew-iso8859-8  #xBC)   ; \e[2]\e.H\eN<\e[0]
+    (latin-iso8859-9   #xBC)   ; \e.M\eN<
     ))
 (define-char
   '((name              . "FULLWIDTH VULGAR FRACTION ONE QUARTER")
     (->ucs             . #x00BC)
     (general-category  number other) ; Normative Category
     (bidi-category     . "ON")
-    (->decomposition   wide #x00BC)
-    (numeric-value     . 1/4)
     (mirrored          . nil)
+    (numeric-value     . 1/4)
+    (->decomposition   wide #x00BC)
     (korean-ksc5601    #x28 #x79)      ; \e$(C(y\e(B
     ))
 (define-char
     (ucs               . #x00BD)
     (general-category  number other) ; Normative Category
     (bidi-category     . "ON")
-    (->decomposition   fraction #x0031 #x2044 #x0032)
-    (numeric-value     . 1/2)
     (mirrored          . nil)
-    (latin-iso8859-1   #x3D)   ; \e.A\eN=
-    (latin-iso8859-3   #x3D)   ; \e.A\eN=
-    (greek-iso8859-7   #x3D)   ; \e.A\eN=
-    (latin-iso8859-9   #x3D)   ; \e.A\eN=
-    (hebrew-iso8859-8  #x3D)   ; \e.A\eN=
+    (numeric-value     . 1/2)
+    (->decomposition   fraction #x0031 #x2044 #x0032)
+    (latin-iso8859-1   #xBD)   ; \e.A\eN=
+    (latin-iso8859-3   #xBD)   ; \e.C\eN=
+    (greek-iso8859-7   #xBD)   ; \e.F\eN=
+    (hebrew-iso8859-8  #xBD)   ; \e[2]\e.H\eN=\e[0]
+    (latin-iso8859-9   #xBD)   ; \e.M\eN=
     ))
 (define-char
   '((name              . "FULLWIDTH VULGAR FRACTION ONE HALF")
     (->ucs             . #x00BD)
     (general-category  number other) ; Normative Category
     (bidi-category     . "ON")
-    (->decomposition   wide #x00BD)
-    (numeric-value     . 1/2)
     (mirrored          . nil)
+    (numeric-value     . 1/2)
+    (->decomposition   wide #x00BD)
     (korean-ksc5601    #x28 #x76)      ; \e$(C(v\e(B
     ))
 (define-char
     (ucs               . #x00BE)
     (general-category  number other) ; Normative Category
     (bidi-category     . "ON")
-    (->decomposition   fraction #x0033 #x2044 #x0034)
-    (numeric-value     . 3/4)
     (mirrored          . nil)
-    (latin-iso8859-1   #x3E)   ; \e.A\eN>
-    (latin-iso8859-9   #x3E)   ; \e.A\eN>
-    (hebrew-iso8859-8  #x3E)   ; \e.A\eN>
+    (numeric-value     . 3/4)
+    (->decomposition   fraction #x0033 #x2044 #x0034)
+    (latin-iso8859-1   #xBE)   ; \e.A\eN>
+    (hebrew-iso8859-8  #xBE)   ; \e[2]\e.H\eN>\e[0]
+    (latin-iso8859-9   #xBE)   ; \e.M\eN>
     ))
 (define-char
   '((name              . "FULLWIDTH VULGAR FRACTION THREE QUARTERS")
     (->ucs             . #x00BE)
     (general-category  number other) ; Normative Category
     (bidi-category     . "ON")
-    (->decomposition   wide #x00BE)
-    (numeric-value     . 3/4)
     (mirrored          . nil)
+    (numeric-value     . 3/4)
+    (->decomposition   wide #x00BE)
     (korean-ksc5601    #x28 #x7A)      ; \e$(C(z\e(B
     ))
 (define-char
     (general-category  punctuation other) ; Informative Category
     (bidi-category     . "ON")
     (mirrored          . nil)
-    (latin-iso8859-1   #x3F)   ; \e.A\eN?
-    (latin-iso8859-9   #x3F)   ; \e.A\eN?
+    (latin-iso8859-1   #xBF)   ; \e.A\eN?
+    (latin-iso8859-9   #xBF)   ; \e.M\eN?
     ))
 (define-char
   '((name              . "FULLWIDTH INVERTED QUESTION MARK")
     (->ucs             . #x00BF)
     (general-category  punctuation other) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   wide #x00BF)
     (mirrored          . nil)
+    (->decomposition   wide #x00BF)
     (korean-ksc5601    #x22 #x2F)      ; \e$(D"D\e(B
     (japanese-jisx0212 #x22 #x44)      ; \e$(D"D\e(B
     ))
     (ucs               . #x00C0)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0041 #x0300)
     (mirrored          . nil)
+    (->decomposition   #x0041 #x0300)
     (->lowercase       #x00E0)
-    (latin-iso8859-1   #x40)   ; \e.A\eN@
-    (latin-iso8859-3   #x40)   ; \e.A\eN@
-    (latin-iso8859-9   #x40)   ; \e.A\eN@
-    (latin-viscii-upper        #x60)   ; \e.A\eN@
+    (latin-iso8859-1   #xC0)   ; \e.A\eN@
+    (latin-iso8859-3   #xC0)   ; \e.C\eN@
+    (latin-iso8859-9   #xC0)   ; \e.M\eN@
+    (latin-viscii-upper #xE0)  ; \e.A\eN@
+    (latin-viscii      #xC0)   ; \e.A\eN@
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER A WITH GRAVE")
     (->ucs             . #x00C0)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00C0)
     (mirrored          . nil)
+    (->decomposition   wide #x00C0)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER A WITH GRAVE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER A WITH GRAVE")))
     (japanese-jisx0212 #x2A #x22)      ; \e$(D*"\e(B
     ))
 (define-char
     (ucs               . #x00C1)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0041 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x0041 #x0301)
     (->lowercase       #x00E1)
-    (latin-iso8859-1   #x41)   ; \e.A\eNA
-    (latin-iso8859-2   #x41)   ; \e.A\eNA
-    (latin-iso8859-3   #x41)   ; \e.A\eNA
-    (latin-iso8859-4   #x41)   ; \e.A\eNA
-    (latin-iso8859-9   #x41)   ; \e.A\eNA
-    (latin-viscii-upper        #x61)   ; \e.A\eNA
+    (latin-iso8859-1   #xC1)   ; \e.A\eNA
+    (latin-iso8859-2   #xC1)   ; \e.B\eNA
+    (latin-iso8859-3   #xC1)   ; \e.C\eNA
+    (latin-iso8859-4   #xC1)   ; \e.D\eNA
+    (latin-iso8859-9   #xC1)   ; \e.M\eNA
+    (latin-viscii-upper #xE1)  ; \e.A\eNA
+    (latin-viscii      #xC1)   ; \e.A\eNA
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER A WITH ACUTE")
     (->ucs             . #x00C1)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00C1)
     (mirrored          . nil)
+    (->decomposition   wide #x00C1)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER A WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER A WITH ACUTE")))
     (japanese-jisx0212 #x2A #x21)      ; \e$(D*!\e(B
     ))
 (define-char
     (ucs               . #x00C2)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0041 #x0302)
     (mirrored          . nil)
+    (->decomposition   #x0041 #x0302)
     (->lowercase       #x00E2)
-    (latin-iso8859-1   #x42)   ; \e.A\eNB
-    (latin-iso8859-2   #x42)   ; \e.A\eNB
-    (latin-iso8859-3   #x42)   ; \e.A\eNB
-    (latin-iso8859-4   #x42)   ; \e.A\eNB
-    (latin-iso8859-9   #x42)   ; \e.A\eNB
-    (latin-viscii-upper        #x62)   ; \e.A\eNB
+    (latin-iso8859-1   #xC2)   ; \e.A\eNB
+    (latin-iso8859-2   #xC2)   ; \e.B\eNB
+    (latin-iso8859-3   #xC2)   ; \e.C\eNB
+    (latin-iso8859-4   #xC2)   ; \e.D\eNB
+    (latin-iso8859-9   #xC2)   ; \e.M\eNB
+    (latin-viscii-upper #xE2)  ; \e.A\eNB
+    (latin-viscii      #xC2)   ; \e.A\eNB
     ))
 (define-char
-  '((name              . "FULLWIDTH LATIN CAPITAL LETTER A WITH CIRCUMFLEX")
+  '((name . "FULLWIDTH LATIN CAPITAL LETTER A WITH CIRCUMFLEX")
     (->ucs             . #x00C2)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00C2)
     (mirrored          . nil)
+    (->decomposition   wide #x00C2)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER A WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER A WITH CIRCUMFLEX")))
     (japanese-jisx0212 #x2A #x24)      ; \e$(D*$\e(B
     ))
 (define-char
     (ucs               . #x00C3)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0041 #x0303)
     (mirrored          . nil)
+    (->decomposition   #x0041 #x0303)
     (->lowercase       #x00E3)
-    (latin-iso8859-1   #x43)   ; \e.A\eNC
-    (latin-iso8859-4   #x43)   ; \e.A\eNC
-    (latin-iso8859-9   #x43)   ; \e.A\eNC
-    (latin-viscii-upper        #x63)   ; \e.A\eNC
+    (latin-iso8859-1   #xC3)   ; \e.A\eNC
+    (latin-iso8859-4   #xC3)   ; \e.D\eNC
+    (latin-iso8859-9   #xC3)   ; \e.M\eNC
+    (latin-viscii-upper #xE3)  ; \e.A\eNC
+    (latin-viscii      #xC3)   ; \e.A\eNC
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER A WITH TILDE")
     (->ucs             . #x00C3)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00C3)
     (mirrored          . nil)
+    (->decomposition   wide #x00C3)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER A WITH TILDE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER A WITH TILDE")))
     (japanese-jisx0212 #x2A #x2A)      ; \e$(D**\e(B
     ))
 (define-char
     (ucs               . #x00C4)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0041 #x0308)
     (mirrored          . nil)
+    (->decomposition   #x0041 #x0308)
     (->lowercase       #x00E4)
-    (latin-iso8859-1   #x44)   ; \e.A\eND
-    (latin-iso8859-2   #x44)   ; \e.A\eND
-    (latin-iso8859-3   #x44)   ; \e.A\eND
-    (latin-iso8859-4   #x44)   ; \e.A\eND
-    (latin-iso8859-9   #x44)   ; \e.A\eND
+    (latin-iso8859-1   #xC4)   ; \e.A\eND
+    (latin-iso8859-2   #xC4)   ; \e.B\eND
+    (latin-iso8859-3   #xC4)   ; \e.C\eND
+    (latin-iso8859-4   #xC4)   ; \e.D\eND
+    (latin-iso8859-9   #xC4)   ; \e.M\eND
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER A WITH DIAERESIS")
     (->ucs             . #x00C4)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00C4)
     (mirrored          . nil)
+    (->decomposition   wide #x00C4)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER A WITH DIAERESIS")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER A WITH DIAERESIS")))
     (japanese-jisx0212 #x2A #x23)      ; \e$(D*#\e(B
     ))
 (define-char
     (ucs               . #x00C5)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0041 #x030A)
     (mirrored          . nil)
+    (->decomposition   #x0041 #x030A)
     (->lowercase       #x00E5)
-    (latin-iso8859-1   #x45)   ; \e.A\eNE
-    (latin-iso8859-4   #x45)   ; \e.A\eNE
-    (latin-iso8859-9   #x45)   ; \e.A\eNE
+    (latin-iso8859-1   #xC5)   ; \e.A\eNE
+    (latin-iso8859-4   #xC5)   ; \e.D\eNE
+    (latin-iso8859-9   #xC5)   ; \e.M\eNE
     ))
 (define-char
-  '((name              . "FULLWIDTH LATIN CAPITAL LETTER A WITH RING ABOVE")
+  '((name . "FULLWIDTH LATIN CAPITAL LETTER A WITH RING ABOVE")
     (->ucs             . #x00C5)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00C5)
     (mirrored          . nil)
+    (->decomposition   wide #x00C5)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER A WITH RING ABOVE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER A WITH RING ABOVE")))
     (japanese-jisx0212 #x2A #x29)      ; \e$(D*)\e(B
     ))
 (define-char
     (mirrored          . nil)
     (iso-10646-comment . "ash *")
     (->lowercase       #x00E6)
-    (latin-iso8859-1   #x46)   ; \e.A\eNF
-    (latin-iso8859-4   #x46)   ; \e.A\eNF
-    (latin-iso8859-9   #x46)   ; \e.A\eNF
+    (latin-iso8859-1   #xC6)   ; \e.A\eNF
+    (latin-iso8859-4   #xC6)   ; \e.D\eNF
+    (latin-iso8859-9   #xC6)   ; \e.M\eNF
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER AE")
     (bidi-category     . "L")
     (mirrored          . nil)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER AE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER AE")))
     (korean-ksc5601    #x28 #x21)      ; \e$(D)!\e(B
     (japanese-jisx0212 #x29 #x21)      ; \e$(D)!\e(B
     ))
     (ucs               . #x00C7)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0043 #x0327)
     (mirrored          . nil)
+    (->decomposition   #x0043 #x0327)
     (->lowercase       #x00E7)
-    (latin-iso8859-1   #x47)   ; \e.A\eNG
-    (latin-iso8859-2   #x47)   ; \e.A\eNG
-    (latin-iso8859-3   #x47)   ; \e.A\eNG
-    (latin-iso8859-9   #x47)   ; \e.A\eNG
+    (latin-iso8859-1   #xC7)   ; \e.A\eNG
+    (latin-iso8859-2   #xC7)   ; \e.B\eNG
+    (latin-iso8859-3   #xC7)   ; \e.C\eNG
+    (latin-iso8859-9   #xC7)   ; \e.M\eNG
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER C WITH CEDILLA")
     (->ucs             . #x00C7)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00C7)
     (mirrored          . nil)
+    (->decomposition   wide #x00C7)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER C WITH CEDILLA")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER C WITH CEDILLA")))
     (japanese-jisx0212 #x2A #x2E)      ; \e$(D*.\e(B
     ))
 (define-char
     (ucs               . #x00C8)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0045 #x0300)
     (mirrored          . nil)
+    (->decomposition   #x0045 #x0300)
     (->lowercase       #x00E8)
-    (latin-iso8859-1   #x48)   ; \e.A\eNH
-    (latin-iso8859-3   #x48)   ; \e.A\eNH
-    (latin-iso8859-9   #x48)   ; \e.A\eNH
-    (latin-viscii-upper        #x68)   ; \e.A\eNH
+    (latin-iso8859-1   #xC8)   ; \e.A\eNH
+    (latin-iso8859-3   #xC8)   ; \e.C\eNH
+    (latin-iso8859-9   #xC8)   ; \e.M\eNH
+    (latin-viscii-upper #xE8)  ; \e.A\eNH
+    (latin-viscii      #xC8)   ; \e.A\eNH
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER E WITH GRAVE")
     (->ucs             . #x00C8)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00C8)
     (mirrored          . nil)
+    (->decomposition   wide #x00C8)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER E WITH GRAVE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER E WITH GRAVE")))
     (japanese-jisx0212 #x2A #x32)      ; \e$(D*2\e(B
     ))
 (define-char
     (ucs               . #x00C9)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0045 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x0045 #x0301)
     (->lowercase       #x00E9)
-    (latin-iso8859-1   #x49)   ; \e.A\eNI
-    (latin-iso8859-2   #x49)   ; \e.A\eNI
-    (latin-iso8859-3   #x49)   ; \e.A\eNI
-    (latin-iso8859-4   #x49)   ; \e.A\eNI
-    (latin-iso8859-9   #x49)   ; \e.A\eNI
-    (latin-viscii-upper        #x69)   ; \e.A\eNI
+    (latin-iso8859-1   #xC9)   ; \e.A\eNI
+    (latin-iso8859-2   #xC9)   ; \e.B\eNI
+    (latin-iso8859-3   #xC9)   ; \e.C\eNI
+    (latin-iso8859-4   #xC9)   ; \e.D\eNI
+    (latin-iso8859-9   #xC9)   ; \e.M\eNI
+    (latin-viscii-upper #xE9)  ; \e.A\eNI
+    (latin-viscii      #xC9)   ; \e.A\eNI
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER E WITH ACUTE")
     (->ucs             . #x00C9)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00C9)
     (mirrored          . nil)
+    (->decomposition   wide #x00C9)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER E WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER E WITH ACUTE")))
     (japanese-jisx0212 #x2A #x31)      ; \e$(D*1\e(B
     ))
 (define-char
     (ucs               . #x00CA)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0045 #x0302)
     (mirrored          . nil)
+    (->decomposition   #x0045 #x0302)
     (->lowercase       #x00EA)
-    (latin-iso8859-1   #x4A)   ; \e.A\eNJ
-    (latin-iso8859-3   #x4A)   ; \e.A\eNJ
-    (latin-iso8859-9   #x4A)   ; \e.A\eNJ
-    (latin-viscii-upper        #x6A)   ; \e.A\eNJ
+    (latin-iso8859-1   #xCA)   ; \e.A\eNJ
+    (latin-iso8859-3   #xCA)   ; \e.C\eNJ
+    (latin-iso8859-9   #xCA)   ; \e.M\eNJ
+    (latin-viscii-upper #xEA)  ; \e.A\eNJ
+    (latin-viscii      #xCA)   ; \e.A\eNJ
     ))
 (define-char
-  '((name              . "FULLWIDTH LATIN CAPITAL LETTER E WITH CIRCUMFLEX")
+  '((name . "FULLWIDTH LATIN CAPITAL LETTER E WITH CIRCUMFLEX")
     (->ucs             . #x00CA)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00CA)
     (mirrored          . nil)
+    (->decomposition   wide #x00CA)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER E WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER E WITH CIRCUMFLEX")))
     (japanese-jisx0212 #x2A #x34)      ; \e$(D*4\e(B
     ))
 (define-char
     (ucs               . #x00CB)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0045 #x0308)
     (mirrored          . nil)
+    (->decomposition   #x0045 #x0308)
     (->lowercase       #x00EB)
-    (latin-iso8859-1   #x4B)   ; \e.A\eNK
-    (latin-iso8859-2   #x4B)   ; \e.A\eNK
-    (latin-iso8859-3   #x4B)   ; \e.A\eNK
-    (latin-iso8859-4   #x4B)   ; \e.A\eNK
-    (latin-iso8859-9   #x4B)   ; \e.A\eNK
+    (latin-iso8859-1   #xCB)   ; \e.A\eNK
+    (latin-iso8859-2   #xCB)   ; \e.B\eNK
+    (latin-iso8859-3   #xCB)   ; \e.C\eNK
+    (latin-iso8859-4   #xCB)   ; \e.D\eNK
+    (latin-iso8859-9   #xCB)   ; \e.M\eNK
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER E WITH DIAERESIS")
     (->ucs             . #x00CB)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00CB)
     (mirrored          . nil)
+    (->decomposition   wide #x00CB)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER E WITH DIAERESIS")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER E WITH DIAERESIS")))
     (japanese-jisx0212 #x2A #x33)      ; \e$(D*3\e(B
     ))
 (define-char
     (ucs               . #x00CC)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0049 #x0300)
     (mirrored          . nil)
+    (->decomposition   #x0049 #x0300)
     (->lowercase       #x00EC)
-    (latin-iso8859-1   #x4C)   ; \e.A\eNL
-    (latin-iso8859-3   #x4C)   ; \e.A\eNL
-    (latin-iso8859-9   #x4C)   ; \e.A\eNL
-    (latin-viscii-upper        #x6C)   ; \e.A\eNL
+    (latin-iso8859-1   #xCC)   ; \e.A\eNL
+    (latin-iso8859-3   #xCC)   ; \e.C\eNL
+    (latin-iso8859-9   #xCC)   ; \e.M\eNL
+    (latin-viscii-upper #xEC)  ; \e.A\eNL
+    (latin-viscii      #xCC)   ; \e.A\eNL
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER I WITH GRAVE")
     (->ucs             . #x00CC)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00CC)
     (mirrored          . nil)
+    (->decomposition   wide #x00CC)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER I WITH GRAVE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER I WITH GRAVE")))
     (japanese-jisx0212 #x2A #x40)      ; \e$(D*@\e(B
     ))
 (define-char
     (ucs               . #x00CD)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0049 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x0049 #x0301)
     (->lowercase       #x00ED)
-    (latin-iso8859-1   #x4D)   ; \e.A\eNM
-    (latin-iso8859-2   #x4D)   ; \e.A\eNM
-    (latin-iso8859-3   #x4D)   ; \e.A\eNM
-    (latin-iso8859-4   #x4D)   ; \e.A\eNM
-    (latin-iso8859-9   #x4D)   ; \e.A\eNM
-    (latin-viscii-upper        #x6D)   ; \e.A\eNM
+    (latin-iso8859-1   #xCD)   ; \e.A\eNM
+    (latin-iso8859-2   #xCD)   ; \e.B\eNM
+    (latin-iso8859-3   #xCD)   ; \e.C\eNM
+    (latin-iso8859-4   #xCD)   ; \e.D\eNM
+    (latin-iso8859-9   #xCD)   ; \e.M\eNM
+    (latin-viscii-upper #xED)  ; \e.A\eNM
+    (latin-viscii      #xCD)   ; \e.A\eNM
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER I WITH ACUTE")
     (->ucs             . #x00CD)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00CD)
     (mirrored          . nil)
+    (->decomposition   wide #x00CD)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER I WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER I WITH ACUTE")))
     (japanese-jisx0212 #x2A #x3F)      ; \e$(D*?\e(B
     ))
 (define-char
     (ucs               . #x00CE)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0049 #x0302)
     (mirrored          . nil)
+    (->decomposition   #x0049 #x0302)
     (->lowercase       #x00EE)
-    (latin-iso8859-1   #x4E)   ; \e.A\eNN
-    (latin-iso8859-2   #x4E)   ; \e.A\eNN
-    (latin-iso8859-3   #x4E)   ; \e.A\eNN
-    (latin-iso8859-4   #x4E)   ; \e.A\eNN
-    (latin-iso8859-9   #x4E)   ; \e.A\eNN
+    (latin-iso8859-1   #xCE)   ; \e.A\eNN
+    (latin-iso8859-2   #xCE)   ; \e.B\eNN
+    (latin-iso8859-3   #xCE)   ; \e.C\eNN
+    (latin-iso8859-4   #xCE)   ; \e.D\eNN
+    (latin-iso8859-9   #xCE)   ; \e.M\eNN
     ))
 (define-char
-  '((name              . "FULLWIDTH LATIN CAPITAL LETTER I WITH CIRCUMFLEX")
+  '((name . "FULLWIDTH LATIN CAPITAL LETTER I WITH CIRCUMFLEX")
     (->ucs             . #x00CE)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00CE)
     (mirrored          . nil)
+    (->decomposition   wide #x00CE)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER I WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER I WITH CIRCUMFLEX")))
     (japanese-jisx0212 #x2A #x42)      ; \e$(D*B\e(B
     ))
 (define-char
     (ucs               . #x00CF)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0049 #x0308)
     (mirrored          . nil)
+    (->decomposition   #x0049 #x0308)
     (->lowercase       #x00EF)
-    (latin-iso8859-1   #x4F)   ; \e.A\eNO
-    (latin-iso8859-3   #x4F)   ; \e.A\eNO
-    (latin-iso8859-9   #x4F)   ; \e.A\eNO
+    (latin-iso8859-1   #xCF)   ; \e.A\eNO
+    (latin-iso8859-3   #xCF)   ; \e.C\eNO
+    (latin-iso8859-9   #xCF)   ; \e.M\eNO
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER I WITH DIAERESIS")
     (->ucs             . #x00CF)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00CF)
     (mirrored          . nil)
+    (->decomposition   wide #x00CF)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER I WITH DIAERESIS")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER I WITH DIAERESIS")))
     (japanese-jisx0212 #x2A #x41)      ; \e$(D*A\e(B
     ))
 (define-char
     (mirrored          . nil)
     (iso-10646-comment . "Icelandic")
     (->lowercase       #x00F0)
-    (latin-iso8859-1   #x50)   ; \e.A\eNP
+    (latin-iso8859-1   #xD0)   ; \e.A\eNP
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER ETH")
     (iso-10646-comment . "Icelandic")
     (->decomposition   wide #x00D0)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER ETH")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER ETH")))
     (korean-ksc5601    #x28 #x22)      ; \e$(C("\e(B
     ))
 (define-char
     (ucs               . #x00D1)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004E #x0303)
     (mirrored          . nil)
+    (->decomposition   #x004E #x0303)
     (->lowercase       #x00F1)
-    (latin-iso8859-1   #x51)   ; \e.A\eNQ
-    (latin-iso8859-3   #x51)   ; \e.A\eNQ
-    (latin-iso8859-9   #x51)   ; \e.A\eNQ
+    (latin-iso8859-1   #xD1)   ; \e.A\eNQ
+    (latin-iso8859-3   #xD1)   ; \e.C\eNQ
+    (latin-iso8859-9   #xD1)   ; \e.M\eNQ
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER N WITH TILDE")
     (->ucs             . #x00D1)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00D1)
     (mirrored          . nil)
+    (->decomposition   wide #x00D1)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER N WITH TILDE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER N WITH TILDE")))
     (japanese-jisx0212 #x2A #x50)      ; \e$(D*P\e(B
     ))
 (define-char
     (ucs               . #x00D2)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004F #x0300)
     (mirrored          . nil)
+    (->decomposition   #x004F #x0300)
     (->lowercase       #x00F2)
-    (latin-iso8859-1   #x52)   ; \e.A\eNR
-    (latin-iso8859-3   #x52)   ; \e.A\eNR
-    (latin-iso8859-9   #x52)   ; \e.A\eNR
-    (latin-viscii-upper        #x72)   ; \e.A\eNR
+    (latin-iso8859-1   #xD2)   ; \e.A\eNR
+    (latin-iso8859-3   #xD2)   ; \e.C\eNR
+    (latin-iso8859-9   #xD2)   ; \e.M\eNR
+    (latin-viscii-upper #xF2)  ; \e.A\eNR
+    (latin-viscii      #xD2)   ; \e.A\eNR
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER O WITH GRAVE")
     (->ucs             . #x00D2)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00D2)
     (mirrored          . nil)
+    (->decomposition   wide #x00D2)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER O WITH GRAVE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER O WITH GRAVE")))
     (japanese-jisx0212 #x2A #x52)      ; \e$(D*R\e(B
     ))
 (define-char
     (ucs               . #x00D3)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004F #x0301)
     (mirrored          . nil)
+    (->decomposition   #x004F #x0301)
     (->lowercase       #x00F3)
-    (latin-iso8859-1   #x53)   ; \e.A\eNS
-    (latin-iso8859-2   #x53)   ; \e.A\eNS
-    (latin-iso8859-3   #x53)   ; \e.A\eNS
-    (latin-iso8859-9   #x53)   ; \e.A\eNS
-    (latin-viscii-upper        #x73)   ; \e.A\eNS
+    (latin-iso8859-1   #xD3)   ; \e.A\eNS
+    (latin-iso8859-2   #xD3)   ; \e.B\eNS
+    (latin-iso8859-3   #xD3)   ; \e.C\eNS
+    (latin-iso8859-9   #xD3)   ; \e.M\eNS
+    (latin-viscii-upper #xF3)  ; \e.A\eNS
+    (latin-viscii      #xD3)   ; \e.A\eNS
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER O WITH ACUTE")
     (->ucs             . #x00D3)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00D3)
     (mirrored          . nil)
+    (->decomposition   wide #x00D3)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER O WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER O WITH ACUTE")))
     (japanese-jisx0212 #x2A #x51)      ; \e$(D*Q\e(B
     ))
 (define-char
     (ucs               . #x00D4)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004F #x0302)
     (mirrored          . nil)
+    (->decomposition   #x004F #x0302)
     (->lowercase       #x00F4)
-    (latin-iso8859-1   #x54)   ; \e.A\eNT
-    (latin-iso8859-2   #x54)   ; \e.A\eNT
-    (latin-iso8859-3   #x54)   ; \e.A\eNT
-    (latin-iso8859-4   #x54)   ; \e.A\eNT
-    (latin-iso8859-9   #x54)   ; \e.A\eNT
-    (latin-viscii-upper        #x74)   ; \e.A\eNT
+    (latin-iso8859-1   #xD4)   ; \e.A\eNT
+    (latin-iso8859-2   #xD4)   ; \e.B\eNT
+    (latin-iso8859-3   #xD4)   ; \e.C\eNT
+    (latin-iso8859-4   #xD4)   ; \e.D\eNT
+    (latin-iso8859-9   #xD4)   ; \e.M\eNT
+    (latin-viscii-upper #xF4)  ; \e.A\eNT
+    (latin-viscii      #xD4)   ; \e.A\eNT
     ))
 (define-char
-  '((name              . "FULLWIDTH LATIN CAPITAL LETTER O WITH CIRCUMFLEX")
+  '((name . "FULLWIDTH LATIN CAPITAL LETTER O WITH CIRCUMFLEX")
     (->ucs             . #x00D4)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00D4)
     (mirrored          . nil)
+    (->decomposition   wide #x00D4)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER O WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER O WITH CIRCUMFLEX")))
     (japanese-jisx0212 #x2A #x54)      ; \e$(D*T\e(B
     ))
 (define-char
     (ucs               . #x00D5)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004F #x0303)
     (mirrored          . nil)
+    (->decomposition   #x004F #x0303)
     (->lowercase       #x00F5)
-    (latin-iso8859-1   #x55)   ; \e.A\eNU
-    (latin-iso8859-4   #x55)   ; \e.A\eNU
-    (latin-iso8859-9   #x55)   ; \e.A\eNU
-    (latin-viscii-upper        #x75)   ; \e.A\eNU
+    (latin-iso8859-1   #xD5)   ; \e.A\eNU
+    (latin-iso8859-4   #xD5)   ; \e.D\eNU
+    (latin-iso8859-9   #xD5)   ; \e.M\eNU
+    (latin-viscii-upper #xF5)  ; \e.A\eNU
+    (latin-viscii      #xA0)   ; \e.A\eNU
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER O WITH TILDE")
     (->ucs             . #x00D5)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00D5)
     (mirrored          . nil)
+    (->decomposition   wide #x00D5)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER O WITH TILDE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER O WITH TILDE")))
     (japanese-jisx0212 #x2A #x58)      ; \e$(D*X\e(B
     ))
 (define-char
     (ucs               . #x00D6)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004F #x0308)
     (mirrored          . nil)
+    (->decomposition   #x004F #x0308)
     (->lowercase       #x00F6)
-    (latin-iso8859-1   #x56)   ; \e.A\eNV
-    (latin-iso8859-2   #x56)   ; \e.A\eNV
-    (latin-iso8859-3   #x56)   ; \e.A\eNV
-    (latin-iso8859-4   #x56)   ; \e.A\eNV
-    (latin-iso8859-9   #x56)   ; \e.A\eNV
+    (latin-iso8859-1   #xD6)   ; \e.A\eNV
+    (latin-iso8859-2   #xD6)   ; \e.B\eNV
+    (latin-iso8859-3   #xD6)   ; \e.C\eNV
+    (latin-iso8859-4   #xD6)   ; \e.D\eNV
+    (latin-iso8859-9   #xD6)   ; \e.M\eNV
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER O WITH DIAERESIS")
     (->ucs             . #x00D6)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00D6)
     (mirrored          . nil)
+    (->decomposition   wide #x00D6)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER O WITH DIAERESIS")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER O WITH DIAERESIS")))
     (japanese-jisx0212 #x2A #x53)      ; \e$(D*S\e(B
     ))
 (define-char
     (general-category  symbol math) ; Informative Category
     (bidi-category     . "ON")
     (mirrored          . nil)
-    (latin-iso8859-1   #x57)   ; \e.A\eNW
-    (latin-iso8859-2   #x57)   ; \e.A\eNW
-    (latin-iso8859-3   #x57)   ; \e.A\eNW
-    (latin-iso8859-4   #x57)   ; \e.A\eNW
-    (latin-iso8859-9   #x57)   ; \e.A\eNW
-    (hebrew-iso8859-8  #x2A)   ; \e.A\eNW
+    (latin-iso8859-1   #xD7)   ; \e.A\eNW
+    (latin-iso8859-2   #xD7)   ; \e.B\eNW
+    (latin-iso8859-3   #xD7)   ; \e.C\eNW
+    (latin-iso8859-4   #xD7)   ; \e.D\eNW
+    (hebrew-iso8859-8  #xAA)   ; \e[2]\e.H\eN*\e[0]
+    (latin-iso8859-9   #xD7)   ; \e.M\eNW
     ))
 (define-char
   '((name              . "FULLWIDTH MULTIPLICATION SIGN")
     (->ucs             . #x00D7)
     (general-category  symbol math) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   wide #x00D7)
     (mirrored          . nil)
+    (->decomposition   wide #x00D7)
     (japanese-jisx0208-1978    #x21 #x5F)      ; \e$B!_\e(B
-    (chinese-gb2312            #x21 #x41)      ; \e$B!_\e(B
+    (chinese-gb2312            #x21 #x41)      ; \e$A!A\e(B
     (japanese-jisx0208         #x21 #x5F)      ; \e$B!_\e(B
-    (korean-ksc5601            #x21 #x3F)      ; \e$B!_\e(B
-    (chinese-cns11643-1                #x22 #x32)      ; \e$B!_\e(B
+    (korean-ksc5601            #x21 #x3F)      ; \e$(C!?\e(B
+    (chinese-cns11643-1                #x22 #x32)      ; \e$(G"2\e(B
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER O WITH STROKE")
     (bidi-category     . "L")
     (mirrored          . nil)
     (->lowercase       #x00F8)
-    (latin-iso8859-1   #x58)   ; \e.A\eNX
-    (latin-iso8859-4   #x58)   ; \e.A\eNX
-    (latin-iso8859-9   #x58)   ; \e.A\eNX
+    (latin-iso8859-1   #xD8)   ; \e.A\eNX
+    (latin-iso8859-4   #xD8)   ; \e.D\eNX
+    (latin-iso8859-9   #xD8)   ; \e.M\eNX
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER O WITH STROKE")
     (bidi-category     . "L")
     (mirrored          . nil)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER O WITH STROKE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER O WITH STROKE")))
     (korean-ksc5601    #x28 #x2A)      ; \e$(D),\e(B
     (japanese-jisx0212 #x29 #x2C)      ; \e$(D),\e(B
     ))
     (ucs               . #x00D9)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0055 #x0300)
     (mirrored          . nil)
+    (->decomposition   #x0055 #x0300)
     (->lowercase       #x00F9)
-    (latin-iso8859-1   #x59)   ; \e.A\eNY
-    (latin-iso8859-3   #x59)   ; \e.A\eNY
-    (latin-iso8859-9   #x59)   ; \e.A\eNY
-    (latin-viscii-upper        #x79)   ; \e.A\eNY
+    (latin-iso8859-1   #xD9)   ; \e.A\eNY
+    (latin-iso8859-3   #xD9)   ; \e.C\eNY
+    (latin-iso8859-9   #xD9)   ; \e.M\eNY
+    (latin-viscii-upper #xF9)  ; \e.A\eNY
+    (latin-viscii      #xD9)   ; \e.A\eNY
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER U WITH GRAVE")
     (->ucs             . #x00D9)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0055 #x0300)
     (mirrored          . nil)
+    (->decomposition   #x0055 #x0300)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER U WITH GRAVE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER U WITH GRAVE")))
     (japanese-jisx0212 #x2A #x63)      ; \e$(D*c\e(B
     ))
 (define-char
     (ucs               . #x00DA)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0055 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x0055 #x0301)
     (->lowercase       #x00FA)
-    (latin-iso8859-1   #x5A)   ; \e.A\eNZ
-    (latin-iso8859-2   #x5A)   ; \e.A\eNZ
-    (latin-iso8859-3   #x5A)   ; \e.A\eNZ
-    (latin-iso8859-4   #x5A)   ; \e.A\eNZ
-    (latin-iso8859-9   #x5A)   ; \e.A\eNZ
-    (latin-viscii-upper        #x7A)   ; \e.A\eNZ
+    (latin-iso8859-1   #xDA)   ; \e.A\eNZ
+    (latin-iso8859-2   #xDA)   ; \e.B\eNZ
+    (latin-iso8859-3   #xDA)   ; \e.C\eNZ
+    (latin-iso8859-4   #xDA)   ; \e.D\eNZ
+    (latin-iso8859-9   #xDA)   ; \e.M\eNZ
+    (latin-viscii-upper #xFA)  ; \e.A\eNZ
+    (latin-viscii      #xDA)   ; \e.A\eNZ
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER U WITH ACUTE")
     (->ucs             . #x00DA)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00DA)
     (mirrored          . nil)
+    (->decomposition   wide #x00DA)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER U WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER U WITH ACUTE")))
     (japanese-jisx0212 #x2A #x62)      ; \e$(D*b\e(B
     ))
 (define-char
     (ucs               . #x00DB)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0055 #x0302)
     (mirrored          . nil)
+    (->decomposition   #x0055 #x0302)
     (->lowercase       #x00FB)
-    (latin-iso8859-1   #x5B)   ; \e.A\eN[
-    (latin-iso8859-3   #x5B)   ; \e.A\eN[
-    (latin-iso8859-4   #x5B)   ; \e.A\eN[
-    (latin-iso8859-9   #x5B)   ; \e.A\eN[
+    (latin-iso8859-1   #xDB)   ; \e.A\eN[
+    (latin-iso8859-3   #xDB)   ; \e.C\eN[
+    (latin-iso8859-4   #xDB)   ; \e.D\eN[
+    (latin-iso8859-9   #xDB)   ; \e.M\eN[
     ))
 (define-char
-  '((name              . "FULLWIDTH LATIN CAPITAL LETTER U WITH CIRCUMFLEX")
+  '((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH CIRCUMFLEX")
     (->ucs             . #x00DB)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00DB)
     (mirrored          . nil)
+    (->decomposition   wide #x00DB)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER U WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER U WITH CIRCUMFLEX")))
     (japanese-jisx0212 #x2A #x65)      ; \e$(D*e\e(B
     ))
 (define-char
     (ucs               . #x00DC)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0055 #x0308)
     (mirrored          . nil)
+    (->decomposition   #x0055 #x0308)
     (->lowercase       #x00FC)
-    (latin-iso8859-1   #x5C)   ; \e.A\eN\
-    (latin-iso8859-2   #x5C)   ; \e.A\eN\
-    (latin-iso8859-3   #x5C)   ; \e.A\eN\
-    (latin-iso8859-4   #x5C)   ; \e.A\eN\
-    (latin-iso8859-9   #x5C)   ; \e.A\eN\
+    (latin-iso8859-1   #xDC)   ; \e.A\eN\
+    (latin-iso8859-2   #xDC)   ; \e.B\eN\
+    (latin-iso8859-3   #xDC)   ; \e.C\eN\
+    (latin-iso8859-4   #xDC)   ; \e.D\eN\
+    (latin-iso8859-9   #xDC)   ; \e.M\eN\
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER U WITH DIAERESIS")
     (->ucs             . #x00DC)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00DC)
     (mirrored          . nil)
+    (->decomposition   wide #x00DC)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER U WITH DIAERESIS")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER U WITH DIAERESIS")))
     (japanese-jisx0212 #x2A #x64)      ; \e$(D*d\e(B
     ))
 (define-char
     (ucs               . #x00DD)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0059 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x0059 #x0301)
     (->lowercase       #x00FD)
-    (latin-iso8859-1   #x5D)   ; \e.A\eN]
-    (latin-iso8859-2   #x5D)   ; \e.A\eN]
-    (latin-viscii-upper        #x7D)   ; \e.A\eN]
+    (latin-iso8859-1   #xDD)   ; \e.A\eN]
+    (latin-iso8859-2   #xDD)   ; \e.B\eN]
+    (latin-viscii-upper #xFD)  ; \e.A\eN]
+    (latin-viscii      #xDD)   ; \e.A\eN]
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER Y WITH ACUTE")
     (->ucs             . #x00DD)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00DD)
     (mirrored          . nil)
+    (->decomposition   wide #x00DD)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER Y WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER Y WITH ACUTE")))
     (japanese-jisx0212 #x2A #x72)      ; \e$(D*r\e(B
     ))
 (define-char
     (mirrored          . nil)
     (iso-10646-comment . "Icelandic")
     (->lowercase       #x00FE)
-    (latin-iso8859-1   #x5E)   ; \e.A\eN^
+    (latin-iso8859-1   #xDE)   ; \e.A\eN^
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER THORN")
     (->ucs             . #x00DE)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00DE)
     (mirrored          . nil)
     (iso-10646-comment . "Icelandic")
+    (->decomposition   wide #x00DE)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER THORN")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER THORN")))
     (korean-ksc5601    #x28 #x2D)      ; \e$(D)0\e(B
     (japanese-jisx0212 #x29 #x30)      ; \e$(D)0\e(B
     ))
     (bidi-category     . "L")
     (mirrored          . nil)
     (iso-10646-comment . "German")
-    (latin-iso8859-1   #x5F)   ; \e.A\eN_
-    (latin-iso8859-2   #x5F)   ; \e.A\eN_
-    (latin-iso8859-3   #x5F)   ; \e.A\eN_
-    (latin-iso8859-4   #x5F)   ; \e.A\eN_
-    (latin-iso8859-9   #x5F)   ; \e.A\eN_
+    (latin-iso8859-1   #xDF)   ; \e.A\eN_
+    (latin-iso8859-2   #xDF)   ; \e.B\eN_
+    (latin-iso8859-3   #xDF)   ; \e.C\eN_
+    (latin-iso8859-4   #xDF)   ; \e.D\eN_
+    (latin-iso8859-9   #xDF)   ; \e.M\eN_
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER SHARP S")
     (->ucs             . #x00DF)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00DF)
     (mirrored          . nil)
     (iso-10646-comment . "German")
+    (->decomposition   wide #x00DF)
     (korean-ksc5601    #x29 #x2C)      ; \e$(D)N\e(B
     (japanese-jisx0212 #x29 #x4E)      ; \e$(D)N\e(B
     ))
     (ucs               . #x00E0)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0061 #x0300)
     (mirrored          . nil)
+    (->decomposition   #x0061 #x0300)
     (->uppercase       #x00C0)
     (->titlecase       #x00C0)
-    (latin-iso8859-1   #x60)   ; \e.A\eN`
-    (latin-iso8859-3   #x60)   ; \e.A\eN`
-    (latin-iso8859-9   #x60)   ; \e.A\eN`
-    (latin-viscii-lower        #x60)   ; \e.A\eN`
+    (latin-iso8859-1   #xE0)   ; \e.A\eN`
+    (latin-iso8859-3   #xE0)   ; \e.C\eN`
+    (latin-iso8859-9   #xE0)   ; \e.M\eN`
+    (latin-viscii-lower #xE0)  ; \e.A\eN`
+    (latin-viscii      #xE0)   ; \e.A\eN`
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER A WITH GRAVE")
     (->ucs             . #x00E0)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00E0)
     (mirrored          . nil)
+    (->decomposition   wide #x00E0)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER A WITH GRAVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER A WITH GRAVE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER A WITH GRAVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER A WITH GRAVE")))
     (chinese-gb2312    #x28 #x24)      ; \e$(D+"\e(B
     (japanese-jisx0212 #x2B #x22)      ; \e$(D+"\e(B
     ))
     (ucs               . #x00E1)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0061 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x0061 #x0301)
     (->uppercase       #x00C1)
     (->titlecase       #x00C1)
-    (latin-iso8859-1   #x61)   ; \e.A\eNa
-    (latin-iso8859-2   #x61)   ; \e.A\eNa
-    (latin-iso8859-3   #x61)   ; \e.A\eNa
-    (latin-iso8859-4   #x61)   ; \e.A\eNa
-    (latin-iso8859-9   #x61)   ; \e.A\eNa
-    (latin-viscii-lower        #x61)   ; \e.A\eNa
+    (latin-iso8859-1   #xE1)   ; \e.A\eNa
+    (latin-iso8859-2   #xE1)   ; \e.B\eNa
+    (latin-iso8859-3   #xE1)   ; \e.C\eNa
+    (latin-iso8859-4   #xE1)   ; \e.D\eNa
+    (latin-iso8859-9   #xE1)   ; \e.M\eNa
+    (latin-viscii-lower #xE1)  ; \e.A\eNa
+    (latin-viscii      #xE1)   ; \e.A\eNa
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER A WITH ACUTE")
     (->ucs             . #x00E1)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00E1)
     (mirrored          . nil)
+    (->decomposition   wide #x00E1)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER A WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER A WITH ACUTE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER A WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER A WITH ACUTE")))
     (chinese-gb2312    #x28 #x22)      ; \e$(D+!\e(B
     (japanese-jisx0212 #x2B #x21)      ; \e$(D+!\e(B
     ))
     (ucs               . #x00E2)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0061 #x0302)
     (mirrored          . nil)
+    (->decomposition   #x0061 #x0302)
     (->uppercase       #x00C2)
     (->titlecase       #x00C2)
-    (latin-iso8859-1   #x62)   ; \e.A\eNb
-    (latin-iso8859-2   #x62)   ; \e.A\eNb
-    (latin-iso8859-3   #x62)   ; \e.A\eNb
-    (latin-iso8859-4   #x62)   ; \e.A\eNb
-    (latin-iso8859-9   #x62)   ; \e.A\eNb
-    (latin-viscii-lower        #x62)   ; \e.A\eNb
+    (latin-iso8859-1   #xE2)   ; \e.A\eNb
+    (latin-iso8859-2   #xE2)   ; \e.B\eNb
+    (latin-iso8859-3   #xE2)   ; \e.C\eNb
+    (latin-iso8859-4   #xE2)   ; \e.D\eNb
+    (latin-iso8859-9   #xE2)   ; \e.M\eNb
+    (latin-viscii-lower #xE2)  ; \e.A\eNb
+    (latin-viscii      #xE2)   ; \e.A\eNb
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER A WITH CIRCUMFLEX")
     (->ucs             . #x00E2)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00E2)
     (mirrored          . nil)
+    (->decomposition   wide #x00E2)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER A WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER A WITH CIRCUMFLEX")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER A WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER A WITH CIRCUMFLEX")))
     (japanese-jisx0212 #x2B #x24)      ; \e$(D+$\e(B
     ))
 (define-char
     (ucs               . #x00E3)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0061 #x0303)
     (mirrored          . nil)
+    (->decomposition   #x0061 #x0303)
     (->uppercase       #x00C3)
     (->titlecase       #x00C3)
-    (latin-iso8859-1   #x63)   ; \e.A\eNc
-    (latin-iso8859-4   #x63)   ; \e.A\eNc
-    (latin-iso8859-9   #x63)   ; \e.A\eNc
-    (latin-viscii-lower        #x63)   ; \e.A\eNc
+    (latin-iso8859-1   #xE3)   ; \e.A\eNc
+    (latin-iso8859-4   #xE3)   ; \e.D\eNc
+    (latin-iso8859-9   #xE3)   ; \e.M\eNc
+    (latin-viscii-lower #xE3)  ; \e.A\eNc
+    (latin-viscii      #xE3)   ; \e.A\eNc
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER A WITH TILDE")
     (->ucs             . #x00E3)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00E3)
     (mirrored          . nil)
+    (->decomposition   wide #x00E3)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER A WITH TILDE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER A WITH TILDE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER A WITH TILDE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER A WITH TILDE")))
     (japanese-jisx0212 #x2B #x2A)      ; \e$(D+*\e(B
     ))
 (define-char
     (ucs               . #x00E4)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0061 #x0308)
     (mirrored          . nil)
+    (->decomposition   #x0061 #x0308)
     (->uppercase       #x00C4)
     (->titlecase       #x00C4)
-    (latin-iso8859-1   #x64)   ; \e.A\eNd
-    (latin-iso8859-2   #x64)   ; \e.A\eNd
-    (latin-iso8859-3   #x64)   ; \e.A\eNd
-    (latin-iso8859-4   #x64)   ; \e.A\eNd
-    (latin-iso8859-9   #x64)   ; \e.A\eNd
+    (latin-iso8859-1   #xE4)   ; \e.A\eNd
+    (latin-iso8859-2   #xE4)   ; \e.B\eNd
+    (latin-iso8859-3   #xE4)   ; \e.C\eNd
+    (latin-iso8859-4   #xE4)   ; \e.D\eNd
+    (latin-iso8859-9   #xE4)   ; \e.M\eNd
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER A WITH DIAERESIS")
     (->ucs             . #x00E4)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00E4)
     (mirrored          . nil)
+    (->decomposition   wide #x00E4)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER A WITH DIAERESIS")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER A WITH DIAERESIS")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER A WITH DIAERESIS")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER A WITH DIAERESIS")))
     (japanese-jisx0212 #x2B #x23)      ; \e$(D+#\e(B
     ))
 (define-char
     (ucs               . #x00E5)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0061 #x030A)
     (mirrored          . nil)
+    (->decomposition   #x0061 #x030A)
     (->uppercase       #x00C5)
     (->titlecase       #x00C5)
-    (latin-iso8859-1   #x65)   ; \e.A\eNe
-    (latin-iso8859-4   #x65)   ; \e.A\eNe
-    (latin-iso8859-9   #x65)   ; \e.A\eNe
+    (latin-iso8859-1   #xE5)   ; \e.A\eNe
+    (latin-iso8859-4   #xE5)   ; \e.D\eNe
+    (latin-iso8859-9   #xE5)   ; \e.M\eNe
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER A WITH RING ABOVE")
     (->ucs             . #x00E5)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00E5)
     (mirrored          . nil)
+    (->decomposition   wide #x00E5)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER A WITH RING ABOVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER A WITH RING ABOVE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER A WITH RING ABOVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER A WITH RING ABOVE")))
     (japanese-jisx0212 #x2B #x29)      ; \e$(D+)\e(B
     ))
 (define-char
     (iso-10646-comment . "ash *")
     (->uppercase       #x00C6)
     (->titlecase       #x00C6)
-    (latin-iso8859-1   #x66)   ; \e.A\eNf
-    (latin-iso8859-4   #x66)   ; \e.A\eNf
-    (latin-iso8859-9   #x66)   ; \e.A\eNf
-    (ipa               #x24)   ; \e.A\eNf
+    (latin-iso8859-1   #xE6)   ; \e.A\eNf
+    (latin-iso8859-4   #xE6)   ; \e.D\eNf
+    (latin-iso8859-9   #xE6)   ; \e.M\eNf
+    (ipa               #xA4)   ; \e.0\eN$
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER AE")
     (->ucs             . #x00E6)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00E6)
     (mirrored          . nil)
     (iso-10646-comment . "ash *")
+    (->decomposition   wide #x00E6)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER AE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER AE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER AE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER AE")))
     (korean-ksc5601    #x29 #x21)      ; \e$(D)A\e(B
     (japanese-jisx0212 #x29 #x41)      ; \e$(D)A\e(B
     ))
     (ucs               . #x00E7)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0063 #x0327)
     (mirrored          . nil)
+    (->decomposition   #x0063 #x0327)
     (->uppercase       #x00C7)
     (->titlecase       #x00C7)
-    (latin-iso8859-1   #x67)   ; \e.A\eNg
-    (latin-iso8859-2   #x67)   ; \e.A\eNg
-    (latin-iso8859-3   #x67)   ; \e.A\eNg
-    (latin-iso8859-9   #x67)   ; \e.A\eNg
-    (ipa               #x4E)   ; \e.A\eNg
+    (latin-iso8859-1   #xE7)   ; \e.A\eNg
+    (latin-iso8859-2   #xE7)   ; \e.B\eNg
+    (latin-iso8859-3   #xE7)   ; \e.C\eNg
+    (latin-iso8859-9   #xE7)   ; \e.M\eNg
+    (ipa               #xCE)   ; \e.0\eNN
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER C WITH CEDILLA")
     (->ucs             . #x00E7)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00E7)
     (mirrored          . nil)
+    (->decomposition   wide #x00E7)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER C WITH CEDILLA")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER C WITH CEDILLA")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER C WITH CEDILLA")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER C WITH CEDILLA")))
     (japanese-jisx0212 #x2B #x2E)      ; \e$(D+.\e(B
     ))
 (define-char
     (ucs               . #x00E8)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0065 #x0300)
     (mirrored          . nil)
+    (->decomposition   #x0065 #x0300)
     (->uppercase       #x00C8)
     (->titlecase       #x00C8)
-    (latin-iso8859-1   #x68)   ; \e.A\eNh
-    (latin-iso8859-3   #x68)   ; \e.A\eNh
-    (latin-iso8859-9   #x68)   ; \e.A\eNh
-    (latin-viscii-lower        #x68)   ; \e.A\eNh
+    (latin-iso8859-1   #xE8)   ; \e.A\eNh
+    (latin-iso8859-3   #xE8)   ; \e.C\eNh
+    (latin-iso8859-9   #xE8)   ; \e.M\eNh
+    (latin-viscii-lower #xE8)  ; \e.A\eNh
+    (latin-viscii      #xE8)   ; \e.A\eNh
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER E WITH GRAVE")
     (->ucs             . #x00E8)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00E8)
     (mirrored          . nil)
+    (->decomposition   wide #x00E8)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER E WITH GRAVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER E WITH GRAVE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER E WITH GRAVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER E WITH GRAVE")))
     (chinese-gb2312    #x28 #x28)      ; \e$(D+2\e(B
     (japanese-jisx0212 #x2B #x32)      ; \e$(D+2\e(B
     ))
     (ucs               . #x00E9)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0065 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x0065 #x0301)
     (->uppercase       #x00C9)
     (->titlecase       #x00C9)
-    (latin-iso8859-1   #x69)   ; \e.A\eNi
-    (latin-iso8859-2   #x69)   ; \e.A\eNi
-    (latin-iso8859-3   #x69)   ; \e.A\eNi
-    (latin-iso8859-4   #x69)   ; \e.A\eNi
-    (latin-iso8859-9   #x69)   ; \e.A\eNi
-    (latin-viscii-lower        #x69)   ; \e.A\eNi
+    (latin-iso8859-1   #xE9)   ; \e.A\eNi
+    (latin-iso8859-2   #xE9)   ; \e.B\eNi
+    (latin-iso8859-3   #xE9)   ; \e.C\eNi
+    (latin-iso8859-4   #xE9)   ; \e.D\eNi
+    (latin-iso8859-9   #xE9)   ; \e.M\eNi
+    (latin-viscii-lower #xE9)  ; \e.A\eNi
+    (latin-viscii      #xE9)   ; \e.A\eNi
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER E WITH ACUTE")
     (->ucs             . #x00E9)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00E9)
     (mirrored          . nil)
+    (->decomposition   wide #x00E9)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER E WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER E WITH ACUTE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER E WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER E WITH ACUTE")))
     (chinese-gb2312    #x28 #x26)      ; \e$(D+1\e(B
     (japanese-jisx0212 #x2B #x31)      ; \e$(D+1\e(B
     ))
     (ucs               . #x00EA)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0065 #x0302)
     (mirrored          . nil)
+    (->decomposition   #x0065 #x0302)
     (->uppercase       #x00CA)
     (->titlecase       #x00CA)
-    (latin-iso8859-1   #x6A)   ; \e.A\eNj
-    (latin-iso8859-3   #x6A)   ; \e.A\eNj
-    (latin-iso8859-9   #x6A)   ; \e.A\eNj
-    (latin-viscii-lower        #x6A)   ; \e.A\eNj
+    (latin-iso8859-1   #xEA)   ; \e.A\eNj
+    (latin-iso8859-3   #xEA)   ; \e.C\eNj
+    (latin-iso8859-9   #xEA)   ; \e.M\eNj
+    (latin-viscii-lower #xEA)  ; \e.A\eNj
+    (latin-viscii      #xEA)   ; \e.A\eNj
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER E WITH CIRCUMFLEX")
     (->ucs             . #x00EA)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00EA)
     (mirrored          . nil)
+    (->decomposition   wide #x00EA)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER E WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER E WITH CIRCUMFLEX")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER E WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER E WITH CIRCUMFLEX")))
     (chinese-gb2312    #x28 #x3A)      ; \e$(D+4\e(B
     (japanese-jisx0212 #x2B #x34)      ; \e$(D+4\e(B
     ))
     (ucs               . #x00EB)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0065 #x0308)
     (mirrored          . nil)
+    (->decomposition   #x0065 #x0308)
     (->uppercase       #x00CB)
     (->titlecase       #x00CB)
-    (latin-iso8859-1   #x6B)   ; \e.A\eNk
-    (latin-iso8859-2   #x6B)   ; \e.A\eNk
-    (latin-iso8859-3   #x6B)   ; \e.A\eNk
-    (latin-iso8859-4   #x6B)   ; \e.A\eNk
-    (latin-iso8859-9   #x6B)   ; \e.A\eNk
+    (latin-iso8859-1   #xEB)   ; \e.A\eNk
+    (latin-iso8859-2   #xEB)   ; \e.B\eNk
+    (latin-iso8859-3   #xEB)   ; \e.C\eNk
+    (latin-iso8859-4   #xEB)   ; \e.D\eNk
+    (latin-iso8859-9   #xEB)   ; \e.M\eNk
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER E WITH DIAERESIS")
     (->ucs             . #x00EB)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00EB)
     (mirrored          . nil)
+    (->decomposition   wide #x00EB)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER E WITH DIAERESIS")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER E WITH DIAERESIS")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER E WITH DIAERESIS")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER E WITH DIAERESIS")))
     (japanese-jisx0212 #x2B #x33)      ; \e$(D+3\e(B
     ))
 (define-char
     (ucs               . #x00EC)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0069 #x0300)
     (mirrored          . nil)
+    (->decomposition   #x0069 #x0300)
     (->uppercase       #x00CC)
     (->titlecase       #x00CC)
-    (latin-iso8859-1   #x6C)   ; \e.A\eNl
-    (latin-iso8859-3   #x6C)   ; \e.A\eNl
-    (latin-iso8859-9   #x6C)   ; \e.A\eNl
-    (latin-viscii-lower        #x6C)   ; \e.A\eNl
+    (latin-iso8859-1   #xEC)   ; \e.A\eNl
+    (latin-iso8859-3   #xEC)   ; \e.C\eNl
+    (latin-iso8859-9   #xEC)   ; \e.M\eNl
+    (latin-viscii-lower #xEC)  ; \e.A\eNl
+    (latin-viscii      #xEC)   ; \e.A\eNl
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER I WITH GRAVE")
     (->ucs             . #x00EC)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00EC)
     (mirrored          . nil)
+    (->decomposition   wide #x00EC)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER I WITH GRAVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER I WITH GRAVE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER I WITH GRAVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER I WITH GRAVE")))
     (chinese-gb2312    #x28 #x2C)      ; \e$(D+@\e(B
     (japanese-jisx0212 #x2B #x40)      ; \e$(D+@\e(B
     ))
     (ucs               . #x00ED)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0069 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x0069 #x0301)
     (->uppercase       #x00CD)
     (->titlecase       #x00CD)
-    (latin-iso8859-1   #x6D)   ; \e.A\eNm
-    (latin-iso8859-2   #x6D)   ; \e.A\eNm
-    (latin-iso8859-3   #x6D)   ; \e.A\eNm
-    (latin-iso8859-4   #x6D)   ; \e.A\eNm
-    (latin-iso8859-9   #x6D)   ; \e.A\eNm
-    (latin-viscii-lower        #x6D)   ; \e.A\eNm
+    (latin-iso8859-1   #xED)   ; \e.A\eNm
+    (latin-iso8859-2   #xED)   ; \e.B\eNm
+    (latin-iso8859-3   #xED)   ; \e.C\eNm
+    (latin-iso8859-4   #xED)   ; \e.D\eNm
+    (latin-iso8859-9   #xED)   ; \e.M\eNm
+    (latin-viscii-lower #xED)  ; \e.A\eNm
+    (latin-viscii      #xED)   ; \e.A\eNm
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER I WITH ACUTE")
     (->ucs             . #x00ED)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00ED)
     (mirrored          . nil)
+    (->decomposition   wide #x00ED)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER I WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER I WITH ACUTE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER I WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER I WITH ACUTE")))
     (chinese-gb2312    #x28 #x2A)      ; \e$(D+?\e(B
     (japanese-jisx0212 #x2B #x3F)      ; \e$(D+?\e(B
     ))
     (ucs               . #x00EE)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0069 #x0302)
     (mirrored          . nil)
+    (->decomposition   #x0069 #x0302)
     (->uppercase       #x00CE)
     (->titlecase       #x00CE)
-    (latin-iso8859-1   #x6E)   ; \e.A\eNn
-    (latin-iso8859-2   #x6E)   ; \e.A\eNn
-    (latin-iso8859-3   #x6E)   ; \e.A\eNn
-    (latin-iso8859-4   #x6E)   ; \e.A\eNn
-    (latin-iso8859-9   #x6E)   ; \e.A\eNn
+    (latin-iso8859-1   #xEE)   ; \e.A\eNn
+    (latin-iso8859-2   #xEE)   ; \e.B\eNn
+    (latin-iso8859-3   #xEE)   ; \e.C\eNn
+    (latin-iso8859-4   #xEE)   ; \e.D\eNn
+    (latin-iso8859-9   #xEE)   ; \e.M\eNn
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER I WITH CIRCUMFLEX")
     (->ucs             . #x00EE)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00EE)
     (mirrored          . nil)
+    (->decomposition   wide #x00EE)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER I WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER I WITH CIRCUMFLEX")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER I WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER I WITH CIRCUMFLEX")))
     (japanese-jisx0212 #x2B #x42)      ; \e$(D+B\e(B
     ))
 (define-char
     (ucs               . #x00EF)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0069 #x0308)
     (mirrored          . nil)
+    (->decomposition   #x0069 #x0308)
     (->uppercase       #x00CF)
     (->titlecase       #x00CF)
-    (latin-iso8859-1   #x6F)   ; \e.A\eNo
-    (latin-iso8859-3   #x6F)   ; \e.A\eNo
-    (latin-iso8859-9   #x6F)   ; \e.A\eNo
+    (latin-iso8859-1   #xEF)   ; \e.A\eNo
+    (latin-iso8859-3   #xEF)   ; \e.C\eNo
+    (latin-iso8859-9   #xEF)   ; \e.M\eNo
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER I WITH DIAERESIS")
     (->ucs             . #x00EF)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0069 #x0308)
     (mirrored          . nil)
+    (->decomposition   #x0069 #x0308)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER I WITH DIAERESIS")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER I WITH DIAERESIS")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER I WITH DIAERESIS")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER I WITH DIAERESIS")))
     (japanese-jisx0212 #x2B #x41)      ; \e$(D+A\e(B
     ))
 (define-char
     (iso-10646-comment . "Icelandic")
     (->uppercase       #x00D0)
     (->titlecase       #x00D0)
-    (latin-iso8859-1   #x70)   ; \e.A\eNp
-    (ipa               #x49)
+    (latin-iso8859-1   #xF0)   ; \e.A\eNp
+    (ipa               #xC9)   ; \e.0\eNI
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER ETH")
     (mirrored          . nil)
     (iso-10646-comment . "Icelandic")
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER ETH")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER ETH")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER ETH")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER ETH")))
     (korean-ksc5601    #x29 #x23)      ; \e$(D)C\e(B
     (japanese-jisx0212 #x29 #x43)      ; \e$(D)C\e(B
     ))
     (ucs               . #x00F1)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006E #x0303)
     (mirrored          . nil)
+    (->decomposition   #x006E #x0303)
     (->uppercase       #x00D1)
     (->titlecase       #x00D1)
-    (latin-iso8859-1   #x71)   ; \e.A\eNq
-    (latin-iso8859-3   #x71)   ; \e.A\eNq
-    (latin-iso8859-9   #x71)   ; \e.A\eNq
+    (latin-iso8859-1   #xF1)   ; \e.A\eNq
+    (latin-iso8859-3   #xF1)   ; \e.C\eNq
+    (latin-iso8859-9   #xF1)   ; \e.M\eNq
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER N WITH TILDE")
     (->ucs             . #x00F1)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00F1)
     (mirrored          . nil)
+    (->decomposition   wide #x00F1)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER N WITH TILDE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER N WITH TILDE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER N WITH TILDE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER N WITH TILDE")))
     (japanese-jisx0212 #x2B #x50)      ; \e$(D+P\e(B
     ))
 (define-char
     (ucs               . #x00F2)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006F #x0300)
     (mirrored          . nil)
+    (->decomposition   #x006F #x0300)
     (->uppercase       #x00D2)
     (->titlecase       #x00D2)
-    (latin-iso8859-1   #x72)   ; \e.A\eNr
-    (latin-iso8859-3   #x72)   ; \e.A\eNr
-    (latin-iso8859-9   #x72)   ; \e.A\eNr
-    (latin-viscii-lower        #x72)   ; \e.A\eNr
+    (latin-iso8859-1   #xF2)   ; \e.A\eNr
+    (latin-iso8859-3   #xF2)   ; \e.C\eNr
+    (latin-iso8859-9   #xF2)   ; \e.M\eNr
+    (latin-viscii-lower #xF2)  ; \e.A\eNr
+    (latin-viscii      #xF2)   ; \e.A\eNr
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER O WITH GRAVE")
     (->ucs             . #x00F2)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00F2)
     (mirrored          . nil)
+    (->decomposition   wide #x00F2)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER O WITH GRAVE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER O WITH GRAVE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER O WITH GRAVE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER O WITH GRAVE")))
     (chinese-gb2312    #x28 #x30)      ; \e$(D+R\e(B
     (japanese-jisx0212 #x2B #x52)      ; \e$(D+R\e(B
     ))
     (ucs               . #x00F3)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006F #x0301)
     (mirrored          . nil)
+    (->decomposition   #x006F #x0301)
     (->uppercase       #x00D3)
     (->titlecase       #x00D3)
-    (latin-iso8859-1   #x73)   ; \e.A\eNs
-    (latin-iso8859-2   #x73)   ; \e.A\eNs
-    (latin-iso8859-3   #x73)   ; \e.A\eNs
-    (latin-iso8859-9   #x73)   ; \e.A\eNs
-    (latin-viscii-lower        #x73)   ; \e.A\eNs
+    (latin-iso8859-1   #xF3)   ; \e.A\eNs
+    (latin-iso8859-2   #xF3)   ; \e.B\eNs
+    (latin-iso8859-3   #xF3)   ; \e.C\eNs
+    (latin-iso8859-9   #xF3)   ; \e.M\eNs
+    (latin-viscii-lower #xF3)  ; \e.A\eNs
+    (latin-viscii      #xF3)   ; \e.A\eNs
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER O WITH ACUTE")
     (->ucs             . #x00F3)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00F3)
     (mirrored          . nil)
+    (->decomposition   wide #x00F3)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER O WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER O WITH ACUTE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER O WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER O WITH ACUTE")))
     (chinese-gb2312    #x28 #x2E)      ; \e$(D+Q\e(B
     (japanese-jisx0212 #x2B #x51)      ; \e$(D+Q\e(B
     ))
     (ucs               . #x00F4)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006F #x0302)
     (mirrored          . nil)
+    (->decomposition   #x006F #x0302)
     (->uppercase       #x00D4)
     (->titlecase       #x00D4)
-    (latin-iso8859-1   #x74)   ; \e.A\eNt
-    (latin-iso8859-2   #x74)   ; \e.A\eNt
-    (latin-iso8859-3   #x74)   ; \e.A\eNt
-    (latin-iso8859-4   #x74)   ; \e.A\eNt
-    (latin-iso8859-9   #x74)   ; \e.A\eNt
-    (latin-viscii-lower        #x74)   ; \e.A\eNt
+    (latin-iso8859-1   #xF4)   ; \e.A\eNt
+    (latin-iso8859-2   #xF4)   ; \e.B\eNt
+    (latin-iso8859-3   #xF4)   ; \e.C\eNt
+    (latin-iso8859-4   #xF4)   ; \e.D\eNt
+    (latin-iso8859-9   #xF4)   ; \e.M\eNt
+    (latin-viscii-lower #xF4)  ; \e.A\eNt
+    (latin-viscii      #xF4)   ; \e.A\eNt
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER O WITH CIRCUMFLEX")
     (->ucs             . #x00F4)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00F4)
     (mirrored          . nil)
+    (->decomposition   wide #x00F4)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER O WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER O WITH CIRCUMFLEX")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER O WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER O WITH CIRCUMFLEX")))
     (japanese-jisx0212 #x2B #x54)      ; \e$(D+T\e(B
     ))
 (define-char
     (ucs               . #x00F5)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006F #x0303)
     (mirrored          . nil)
+    (->decomposition   #x006F #x0303)
     (->uppercase       #x00D5)
     (->titlecase       #x00D5)
-    (latin-iso8859-1   #x75)   ; \e.A\eNu
-    (latin-iso8859-4   #x75)   ; \e.A\eNu
-    (latin-iso8859-9   #x75)   ; \e.A\eNu
-    (latin-viscii-lower        #x75)   ; \e.A\eNu
+    (latin-iso8859-1   #xF5)   ; \e.A\eNu
+    (latin-iso8859-4   #xF5)   ; \e.D\eNu
+    (latin-iso8859-9   #xF5)   ; \e.M\eNu
+    (latin-viscii-lower #xF5)  ; \e.A\eNu
+    (latin-viscii      #xF5)   ; \e.A\eNu
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER O WITH TILDE")
     (->ucs             . #x00F5)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00F5)
     (mirrored          . nil)
+    (->decomposition   wide #x00F5)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER O WITH TILDE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER O WITH TILDE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER O WITH TILDE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER O WITH TILDE")))
     (japanese-jisx0212 #x2B #x58)      ; \e$(D+X\e(B
     ))
 (define-char
     (ucs               . #x00F6)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006F #x0308)
     (mirrored          . nil)
+    (->decomposition   #x006F #x0308)
     (->uppercase       #x00D6)
     (->titlecase       #x00D6)
-    (latin-iso8859-1   #x76)   ; \e.A\eNv
-    (latin-iso8859-2   #x76)   ; \e.A\eNv
-    (latin-iso8859-3   #x76)   ; \e.A\eNv
-    (latin-iso8859-4   #x76)   ; \e.A\eNv
-    (latin-iso8859-9   #x76)   ; \e.A\eNv
+    (latin-iso8859-1   #xF6)   ; \e.A\eNv
+    (latin-iso8859-2   #xF6)   ; \e.B\eNv
+    (latin-iso8859-3   #xF6)   ; \e.C\eNv
+    (latin-iso8859-4   #xF6)   ; \e.D\eNv
+    (latin-iso8859-9   #xF6)   ; \e.M\eNv
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER O WITH DIAERESIS")
     (->ucs             . #x00F6)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00F6)
     (mirrored          . nil)
+    (->decomposition   wide #x00F6)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER O WITH DIAERESIS")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER O WITH DIAERESIS")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER O WITH DIAERESIS")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER O WITH DIAERESIS")))
     (japanese-jisx0212 #x2B #x53)      ; \e$(D+S\e(B
     ))
 (define-char
     (general-category  symbol math) ; Informative Category
     (bidi-category     . "ON")
     (mirrored          . nil)
-    (latin-iso8859-1   #x77)   ; \e.A\eNw
-    (latin-iso8859-2   #x77)   ; \e.A\eNw
-    (latin-iso8859-3   #x77)   ; \e.A\eNw
-    (latin-iso8859-4   #x77)   ; \e.A\eNw
-    (latin-iso8859-9   #x77)   ; \e.A\eNw
-    (hebrew-iso8859-8  #x3A)   ; \e.A\eNw
+    (latin-iso8859-1   #xF7)   ; \e.A\eNw
+    (latin-iso8859-2   #xF7)   ; \e.B\eNw
+    (latin-iso8859-3   #xF7)   ; \e.C\eNw
+    (latin-iso8859-4   #xF7)   ; \e.D\eNw
+    (hebrew-iso8859-8  #xBA)   ; \e[2]\e.H\eN:\e[0]
+    (latin-iso8859-9   #xF7)   ; \e.M\eNw
     ))
 (define-char
   '((name              . "FULLWIDTH DIVISION SIGN")
     (->ucs             . #x00F7)
     (general-category  symbol math) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   wide #x00F7)
     (mirrored          . nil)
+    (->decomposition   wide #x00F7)
     (japanese-jisx0208-1978    #x21 #x60)      ; \e$B!`\e(B
-    (chinese-gb2312            #x21 #x42)      ; \e$B!`\e(B
+    (chinese-gb2312            #x21 #x42)      ; \e$A!B\e(B
     (japanese-jisx0208         #x21 #x60)      ; \e$B!`\e(B
-    (korean-ksc5601            #x21 #x40)      ; \e$B!`\e(B
-    (chinese-cns11643-1                #x22 #x33)      ; \e$B!`\e(B
+    (korean-ksc5601            #x21 #x40)      ; \e$(C!@\e(B
+    (chinese-cns11643-1                #x22 #x33)      ; \e$(G"3\e(B
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER O WITH STROKE")
     (mirrored          . nil)
     (->uppercase       #x00D8)
     (->titlecase       #x00D8)
-    (latin-iso8859-1   #x78)   ; \e.A\eNx
-    (latin-iso8859-4   #x78)   ; \e.A\eNx
-    (latin-iso8859-9   #x78)   ; \e.A\eNx
-    (ipa               #x2F)   ; \e.A\eNx
+    (latin-iso8859-1   #xF8)   ; \e.A\eNx
+    (latin-iso8859-4   #xF8)   ; \e.D\eNx
+    (latin-iso8859-9   #xF8)   ; \e.M\eNx
+    (ipa               #xAF)   ; \e.0\eN/
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER O WITH STROKE")
     (->ucs             . #x00F8)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00F8)
     (mirrored          . nil)
+    (->decomposition   wide #x00F8)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER O WITH STROKE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER O WITH STROKE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER O WITH STROKE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER O WITH STROKE")))
     (korean-ksc5601    #x29 #x2A)      ; \e$(D)L\e(B
     (japanese-jisx0212 #x29 #x4C)      ; \e$(D)L\e(B
     ))
     (ucs               . #x00F9)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0075 #x0300)
     (mirrored          . nil)
+    (->decomposition   #x0075 #x0300)
     (->uppercase       #x00D9)
     (->titlecase       #x00D9)
-    (latin-iso8859-1   #x79)   ; \e.A\eNy
-    (latin-iso8859-3   #x79)   ; \e.A\eNy
-    (latin-iso8859-9   #x79)   ; \e.A\eNy
-    (latin-viscii-lower        #x79)   ; \e.A\eNy
+    (latin-iso8859-1   #xF9)   ; \e.A\eNy
+    (latin-iso8859-3   #xF9)   ; \e.C\eNy
+    (latin-iso8859-9   #xF9)   ; \e.M\eNy
+    (latin-viscii-lower #xF9)  ; \e.A\eNy
+    (latin-viscii      #xF9)   ; \e.A\eNy
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER U WITH GRAVE")
     (->ucs             . #x00F9)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00F9)
     (mirrored          . nil)
+    (->decomposition   wide #x00F9)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER U WITH GRAVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH GRAVE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER U WITH GRAVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH GRAVE")))
     (chinese-gb2312    #x28 #x34)      ; \e$(D+c\e(B
     (japanese-jisx0212 #x2B #x63)      ; \e$(D+c\e(B
     ))
     (ucs               . #x00FA)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0075 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x0075 #x0301)
     (->uppercase       #x00DA)
     (->titlecase       #x00DA)
-    (latin-iso8859-1   #x7A)   ; \e.A\eNz
-    (latin-iso8859-2   #x7A)   ; \e.A\eNz
-    (latin-iso8859-3   #x7A)   ; \e.A\eNz
-    (latin-iso8859-4   #x7A)   ; \e.A\eNz
-    (latin-iso8859-9   #x7A)   ; \e.A\eNz
-    (latin-viscii-lower        #x7A)   ; \e.A\eNz
+    (latin-iso8859-1   #xFA)   ; \e.A\eNz
+    (latin-iso8859-2   #xFA)   ; \e.B\eNz
+    (latin-iso8859-3   #xFA)   ; \e.C\eNz
+    (latin-iso8859-4   #xFA)   ; \e.D\eNz
+    (latin-iso8859-9   #xFA)   ; \e.M\eNz
+    (latin-viscii-lower #xFA)  ; \e.A\eNz
+    (latin-viscii      #xFA)   ; \e.A\eNz
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER U WITH ACUTE")
     (->ucs             . #x00FA)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00FA)
     (mirrored          . nil)
+    (->decomposition   wide #x00FA)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER U WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH ACUTE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER U WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH ACUTE")))
     (chinese-gb2312    #x28 #x32)      ; \e$(D+b\e(B
     (japanese-jisx0212 #x2B #x62)      ; \e$(D+b\e(B
     ))
     (ucs               . #x00FB)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0075 #x0302)
     (mirrored          . nil)
+    (->decomposition   #x0075 #x0302)
     (->uppercase       #x00DB)
     (->titlecase       #x00DB)
-    (latin-iso8859-1   #x7B)   ; \e.A\eN{
-    (latin-iso8859-3   #x7B)   ; \e.A\eN{
-    (latin-iso8859-4   #x7B)   ; \e.A\eN{
-    (latin-iso8859-9   #x7B)   ; \e.A\eN{
+    (latin-iso8859-1   #xFB)   ; \e.A\eN{
+    (latin-iso8859-3   #xFB)   ; \e.C\eN{
+    (latin-iso8859-4   #xFB)   ; \e.D\eN{
+    (latin-iso8859-9   #xFB)   ; \e.M\eN{
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER U WITH CIRCUMFLEX")
     (->ucs             . #x00FB)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00FB)
     (mirrored          . nil)
+    (->decomposition   wide #x00FB)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER U WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH CIRCUMFLEX")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER U WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH CIRCUMFLEX")))
     (japanese-jisx0212 #x2B #x65)      ; \e$(D+e\e(B
     ))
 (define-char
     (ucs               . #x00FC)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0075 #x0308)
     (mirrored          . nil)
+    (->decomposition   #x0075 #x0308)
     (->uppercase       #x00DC)
     (->titlecase       #x00DC)
-    (latin-iso8859-1   #x7C)   ; \e.A\eN|
-    (latin-iso8859-2   #x7C)   ; \e.A\eN|
-    (latin-iso8859-3   #x7C)   ; \e.A\eN|
-    (latin-iso8859-4   #x7C)   ; \e.A\eN|
-    (latin-iso8859-9   #x7C)   ; \e.A\eN|
+    (latin-iso8859-1   #xFC)   ; \e.A\eN|
+    (latin-iso8859-2   #xFC)   ; \e.B\eN|
+    (latin-iso8859-3   #xFC)   ; \e.C\eN|
+    (latin-iso8859-4   #xFC)   ; \e.D\eN|
+    (latin-iso8859-9   #xFC)   ; \e.M\eN|
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER U WITH DIAERESIS")
     (->ucs             . #x00FC)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00FC)
     (mirrored          . nil)
+    (->decomposition   wide #x00FC)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER U WITH DIAERESIS")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH DIAERESIS")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER U WITH DIAERESIS")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH DIAERESIS")))
     (chinese-gb2312    #x28 #x39)      ; \e$(D+d\e(B
     (japanese-jisx0212 #x2B #x64)      ; \e$(D+d\e(B
     ))
     (ucs               . #x00FD)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0079 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x0079 #x0301)
     (->uppercase       #x00DD)
     (->titlecase       #x00DD)
-    (latin-iso8859-1   #x7D)   ; \e.A\eN}
-    (latin-iso8859-2   #x7D)   ; \e.A\eN}
-    (latin-viscii-lower        #x7D)   ; \e.A\eN}
+    (latin-iso8859-1   #xFD)   ; \e.A\eN}
+    (latin-iso8859-2   #xFD)   ; \e.B\eN}
+    (latin-viscii-lower #xFD)  ; \e.A\eN}
+    (latin-viscii      #xFD)   ; \e.A\eN}
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER Y WITH ACUTE")
     (->ucs             . #x00FD)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00FD)
     (mirrored          . nil)
+    (->decomposition   wide #x00FD)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER Y WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER Y WITH ACUTE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER Y WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER Y WITH ACUTE")))
     (japanese-jisx0212 #x2B #x72)      ; \e$(D+r\e(B
     ))
 (define-char
     (iso-10646-comment . "Icelandic")
     (->uppercase       #x00DE)
     (->titlecase       #x00DE)
-    (latin-iso8859-1   #x7E)   ; \e.A\eN~
+    (latin-iso8859-1   #xFE)   ; \e.A\eN~
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER THORN")
     (->ucs             . #x00FE)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00FE)
     (mirrored          . nil)
     (iso-10646-comment . "Icelandic")
+    (->decomposition   wide #x00FE)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER THORN")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER THORN")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER THORN")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER THORN")))
     (korean-ksc5601    #x29 #x2D)      ; \e$(D)P\e(B
     (japanese-jisx0212 #x29 #x50)      ; \e$(D)P\e(B
     ))
     (ucs               . #x00FF)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0079 #x0308)
     (mirrored          . nil)
+    (->decomposition   #x0079 #x0308)
     (->uppercase       #x0178)
     (->titlecase       #x0178)
-    (latin-iso8859-1   #x7F)   ; \e.A\eN\7f
-    (latin-iso8859-9   #x7F)   ; \e.A\eN\7f
+    (latin-iso8859-1   #xFF)   ; \e.A\eN\7f
+    (latin-iso8859-9   #xFF)   ; \e.M\eN\7f
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER Y WITH DIAERESIS")
     (->ucs             . #x00FF)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x00FF)
     (mirrored          . nil)
+    (->decomposition   wide #x00FF)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER Y WITH DIAERESIS")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER Y WITH DIAERESIS")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER Y WITH DIAERESIS")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER Y WITH DIAERESIS")))
     (japanese-jisx0212 #x2B #x73)      ; \e$(D+s\e(B
     ))
index 7a8e7cf..5e96fb1 100644 (file)
@@ -3,20 +3,20 @@
     (ucs               . #x0100)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0041 #x0304)
     (mirrored          . nil)
+    (->decomposition   #x0041 #x0304)
     (->lowercase       #x0101)
-    (latin-iso8859-4   #x40)   ; \e-DÀ\e-A
+    (latin-iso8859-4   #xC0)   ; \e-DÀ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER A WITH MACRON")
     (->ucs             . #x0100)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0100)
     (mirrored          . nil)
+    (->decomposition   wide #x0100)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER A WITH MACRON")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER A WITH MACRON")))
     (japanese-jisx0212 #x2A #x27)      ; \e$(D*'\e(B
     ))
 (define-char
     (ucs               . #x0101)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0061 #x0304)
     (mirrored          . nil)
+    (->decomposition   #x0061 #x0304)
     (->uppercase       #x0100)
     (->titlecase       #x0100)
-    (latin-iso8859-4   #x60)   ; \e-Dà\e-A
+    (latin-iso8859-4   #xE0)   ; \e-Dà\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER A WITH MACRON")
     (->ucs             . #x0101)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0101)
     (mirrored          . nil)
+    (->decomposition   wide #x0101)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER A WITH MACRON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER A WITH MACRON")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER A WITH MACRON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER A WITH MACRON")))
     (chinese-gb2312    #x28 #x21)      ; \e$(D+'\e(B
     (japanese-jisx0212 #x2B #x27)      ; \e$(D+'\e(B
     ))
     (ucs               . #x0102)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0041 #x0306)
     (mirrored          . nil)
+    (->decomposition   #x0041 #x0306)
     (->lowercase       #x0103)
-    (latin-iso8859-2   #x43)   ; \e-BÃ\e-A
-    (latin-viscii-upper        #x65)   ; \e-BÃ\e-A
+    (latin-iso8859-2   #xC3)   ; \e-BÃ\e-A
+    (latin-viscii-upper #xE5)  ; \e-BÃ\e-A
+    (latin-viscii      #xC5)   ; \e-BÃ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER A WITH BREVE")
     (->ucs             . #x0102)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0102)
     (mirrored          . nil)
+    (->decomposition   wide #x0102)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER A WITH BREVE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER A WITH BREVE")))
     (japanese-jisx0212 #x2A #x25)      ; \e$(D*%\e(B
     ))
 (define-char
     (ucs               . #x0103)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0061 #x0306)
     (mirrored          . nil)
+    (->decomposition   #x0061 #x0306)
     (->uppercase       #x0102)
     (->titlecase       #x0102)
-    (latin-iso8859-2   #x63)   ; \e-Bã\e-A
-    (latin-viscii-lower        #x65)   ; \e-Bã\e-A
+    (latin-iso8859-2   #xE3)   ; \e-Bã\e-A
+    (latin-viscii-lower #xE5)  ; \e-Bã\e-A
+    (latin-viscii      #xE5)   ; \e-Bã\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER A WITH BREVE")
     (->ucs             . #x0103)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0103)
     (mirrored          . nil)
+    (->decomposition   wide #x0103)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER A WITH BREVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER A WITH BREVE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER A WITH BREVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER A WITH BREVE")))
     (japanese-jisx0212 #x2B #x25)      ; \e$(D+%\e(B
     ))
 (define-char
     (ucs               . #x0104)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0041 #x0328)
     (mirrored          . nil)
+    (->decomposition   #x0041 #x0328)
     (->lowercase       #x0105)
-    (latin-iso8859-2   #x21)   ; \e-B¡\e-A
-    (latin-iso8859-4   #x21)   ; \e-B¡\e-A
+    (latin-iso8859-2   #xA1)   ; \e-B¡\e-A
+    (latin-iso8859-4   #xA1)   ; \e-D¡\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER A WITH OGONEK")
     (->ucs             . #x0104)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0104)
     (mirrored          . nil)
+    (->decomposition   wide #x0104)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER A WITH OGONEK")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER A WITH OGONEK")))
     (japanese-jisx0212 #x2A #x28)      ; \e$(D*(\e(B
     ))
 (define-char
     (ucs               . #x0105)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0061 #x0328)
     (mirrored          . nil)
+    (->decomposition   #x0061 #x0328)
     (->uppercase       #x0104)
     (->titlecase       #x0104)
-    (latin-iso8859-2   #x31)   ; \e-B±\e-A
-    (latin-iso8859-4   #x31)   ; \e-B±\e-A
+    (latin-iso8859-2   #xB1)   ; \e-B±\e-A
+    (latin-iso8859-4   #xB1)   ; \e-D±\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER A WITH OGONEK")
     (->ucs             . #x0105)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0105)
     (mirrored          . nil)
+    (->decomposition   wide #x0105)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER A WITH OGONEK")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER A WITH OGONEK")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER A WITH OGONEK")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER A WITH OGONEK")))
     (japanese-jisx0212 #x2B #x28)      ; \e$(D+(\e(B
     ))
 (define-char
     (ucs               . #x0106)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0043 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x0043 #x0301)
     (->lowercase       #x0107)
-    (latin-iso8859-2   #x46)   ; \e-BÆ\e-A
+    (latin-iso8859-2   #xC6)   ; \e-BÆ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER C WITH ACUTE")
     (->ucs             . #x0106)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0106)
     (mirrored          . nil)
+    (->decomposition   wide #x0106)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER C WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER C WITH ACUTE")))
     (japanese-jisx0212 #x2A #x2B)      ; \e$(D*+\e(B
     ))
 (define-char
     (ucs               . #x0107)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0063 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x0063 #x0301)
     (->uppercase       #x0106)
     (->titlecase       #x0106)
-    (latin-iso8859-2   #x66)   ; \e-Bæ\e-A
+    (latin-iso8859-2   #xE6)   ; \e-Bæ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER C WITH ACUTE")
     (->ucs             . #x0107)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0107)
     (mirrored          . nil)
+    (->decomposition   wide #x0107)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER C WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER C WITH ACUTE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER C WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER C WITH ACUTE")))
     (japanese-jisx0212 #x2B #x2B)      ; \e$(D++\e(B
     ))
 (define-char
     (ucs               . #x0108)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0043 #x0302)
     (mirrored          . nil)
+    (->decomposition   #x0043 #x0302)
     (->lowercase       #x0109)
-    (latin-iso8859-3   #x46)   ; \e-CÆ\e-A
+    (latin-iso8859-3   #xC6)   ; \e-CÆ\e-A
     ))
 (define-char
-  '((name              . "FULLWIDTH LATIN CAPITAL LETTER C WITH CIRCUMFLEX")
+  '((name . "FULLWIDTH LATIN CAPITAL LETTER C WITH CIRCUMFLEX")
     (->ucs             . #x0108)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0108)
     (mirrored          . nil)
+    (->decomposition   wide #x0108)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER C WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER C WITH CIRCUMFLEX")))
     (japanese-jisx0212 #x2A #x2C)      ; \e$(D*,\e(B
     ))
 (define-char
     (ucs               . #x0109)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0063 #x0302)
     (mirrored          . nil)
+    (->decomposition   #x0063 #x0302)
     (->uppercase       #x0108)
     (->titlecase       #x0108)
-    (latin-iso8859-3   #x66)   ; \e-Cæ\e-A
+    (latin-iso8859-3   #xE6)   ; \e-Cæ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER C WITH CIRCUMFLEX")
     (->ucs             . #x0109)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0109)
     (mirrored          . nil)
+    (->decomposition   wide #x0109)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER C WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER C WITH CIRCUMFLEX")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER C WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER C WITH CIRCUMFLEX")))
     (japanese-jisx0212 #x2B #x2C)      ; \e$(D+,\e(B
     ))
 (define-char
     (ucs               . #x010A)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0043 #x0307)
     (mirrored          . nil)
+    (->decomposition   #x0043 #x0307)
     (->lowercase       #x010B)
-    (latin-iso8859-3   #x45)   ; \e-CÅ\e-A
+    (latin-iso8859-3   #xC5)   ; \e-CÅ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER C WITH DOT ABOVE")
     (->ucs             . #x010A)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x010A)
     (mirrored          . nil)
+    (->decomposition   wide #x010A)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER C WITH DOT ABOVE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER C WITH DOT ABOVE")))
     (japanese-jisx0212 #x2A #x2F)      ; \e$(D*/\e(B
     ))
 (define-char
     (ucs               . #x010B)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0063 #x0307)
     (mirrored          . nil)
+    (->decomposition   #x0063 #x0307)
     (->uppercase       #x010A)
     (->titlecase       #x010A)
-    (latin-iso8859-3   #x65)   ; \e-Cå\e-A
+    (latin-iso8859-3   #xE5)   ; \e-Cå\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER C WITH DOT ABOVE")
     (->ucs             . #x010B)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x010B)
     (mirrored          . nil)
+    (->decomposition   wide #x010B)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER C WITH DOT ABOVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER C WITH DOT ABOVE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER C WITH DOT ABOVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER C WITH DOT ABOVE")))
     (japanese-jisx0212 #x2B #x2F)      ; \e$(D+/\e(B
     ))
 (define-char
     (ucs               . #x010C)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0043 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x0043 #x030C)
     (->lowercase       #x010D)
-    (latin-iso8859-2   #x48)   ; \e-BÈ\e-A
-    (latin-iso8859-4   #x48)   ; \e-BÈ\e-A
+    (latin-iso8859-2   #xC8)   ; \e-BÈ\e-A
+    (latin-iso8859-4   #xC8)   ; \e-DÈ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER C WITH CARON")
     (->ucs             . #x010C)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x010C)
     (mirrored          . nil)
+    (->decomposition   wide #x010C)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER C WITH CARON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER C WITH CARON")))
     (japanese-jisx0212 #x2A #x2D)      ; \e$(D*-\e(B
     ))
 (define-char
     (ucs               . #x010D)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0063 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x0063 #x030C)
     (->uppercase       #x010C)
     (->titlecase       #x010C)
-    (latin-iso8859-2   #x68)   ; \e-Bè\e-A
-    (latin-iso8859-4   #x68)   ; \e-Bè\e-A
+    (latin-iso8859-2   #xE8)   ; \e-Bè\e-A
+    (latin-iso8859-4   #xE8)   ; \e-Dè\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER C WITH CARON")
     (->ucs             . #x010D)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x010D)
     (mirrored          . nil)
+    (->decomposition   wide #x010D)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER C WITH CARON")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER C WITH CARON")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER C WITH CARON")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER C WITH CARON")))
     (japanese-jisx0212 #x2B #x2D)      ; \e$(D+-\e(B
     ))
 (define-char
     (ucs               . #x010E)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0044 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x0044 #x030C)
     (->lowercase       #x010F)
-    (latin-iso8859-2   #x4F)   ; \e-BÏ\e-A
+    (latin-iso8859-2   #xCF)   ; \e-BÏ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER D WITH CARON")
     (->ucs             . #x010E)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x010E)
     (mirrored          . nil)
+    (->decomposition   wide #x010E)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER D WITH CARON")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER D WITH CARON")))
     (japanese-jisx0212 #x2A #x30)      ; \e$(D*0\e(B
     ))
 (define-char
     (ucs               . #x010F)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0064 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x0064 #x030C)
     (->uppercase       #x010E)
     (->titlecase       #x010E)
-    (latin-iso8859-2   #x6F)   ; \e-Bï\e-A
+    (latin-iso8859-2   #xEF)   ; \e-Bï\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER D WITH CARON")
     (->ucs             . #x010F)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x010F)
     (mirrored          . nil)
+    (->decomposition   wide #x010F)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER D WITH CARON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER D WITH CARON")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER D WITH CARON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER D WITH CARON")))
     (japanese-jisx0212 #x2B #x30)      ; \e$(D+0\e(B
     ))
 (define-char
     (bidi-category     . "L")
     (mirrored          . nil)
     (->lowercase       #x0111)
-    (latin-iso8859-2   #x50)   ; \e-BÐ\e-A
-    (latin-iso8859-4   #x50)   ; \e-BÐ\e-A
-    (latin-viscii-upper        #x70)   ; \e-BÐ\e-A
+    (latin-iso8859-2   #xD0)   ; \e-BÐ\e-A
+    (latin-iso8859-4   #xD0)   ; \e-DÐ\e-A
+    (latin-viscii-upper #xF0)  ; \e-BÐ\e-A
+    (latin-viscii      #xD0)   ; \e-BÐ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER D WITH STROKE")
     (->ucs             . #x0110)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0110)
     (mirrored          . nil)
+    (->decomposition   wide #x0110)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER D WITH STROKE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER D WITH STROKE")))
     (japanese-jisx0212 #x29 #x22)      ; \e$(D)"\e(B
     ))
 (define-char
     (mirrored          . nil)
     (->uppercase       #x0110)
     (->titlecase       #x0110)
-    (latin-iso8859-2   #x70)   ; \e-Bð\e-A
-    (latin-iso8859-4   #x70)   ; \e-Bð\e-A
-    (latin-viscii-lower        #x70)   ; \e-Bð\e-A
+    (latin-iso8859-2   #xF0)   ; \e-Bð\e-A
+    (latin-iso8859-4   #xF0)   ; \e-Dð\e-A
+    (latin-viscii-lower #xF0)  ; \e-Bð\e-A
+    (latin-viscii      #xF0)   ; \e-Bð\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER D WITH STROKE")
     (bidi-category     . "L")
     (mirrored          . nil)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER D WITH STROKE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER D WITH STROKE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER D WITH STROKE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER D WITH STROKE")))
     (korean-ksc5601    #x29 #x22)      ; \e$(D)B\e(B
     (japanese-jisx0212 #x29 #x42)      ; \e$(D)B\e(B
     ))
     (ucs               . #x0112)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0045 #x0304)
     (mirrored          . nil)
+    (->decomposition   #x0045 #x0304)
     (->lowercase       #x0113)
-    (latin-iso8859-4   #x2A)   ; \e-Dª\e-A
+    (latin-iso8859-4   #xAA)   ; \e-Dª\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER E WITH MACRON")
     (->ucs             . #x0112)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0112)
     (mirrored          . nil)
+    (->decomposition   wide #x0112)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER E WITH MACRON")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER E WITH MACRON")))
     (japanese-jisx0212 #x2A #x37)      ; \e$(D*7\e(B
     ))
 (define-char
     (ucs               . #x0113)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0065 #x0304)
     (mirrored          . nil)
+    (->decomposition   #x0065 #x0304)
     (->uppercase       #x0112)
     (->titlecase       #x0112)
-    (latin-iso8859-4   #x3A)   ; \e-Dº\e-A
+    (latin-iso8859-4   #xBA)   ; \e-Dº\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER E WITH MACRON")
     (->ucs             . #x0113)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0113)
     (mirrored          . nil)
+    (->decomposition   wide #x0113)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER E WITH MACRON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER E WITH MACRON")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER E WITH MACRON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER E WITH MACRON")))
     (chinese-gb2312    #x28 #x25)      ; \e$(D+7\e(B
     (japanese-jisx0212 #x2B #x37)      ; \e$(D+7\e(B
     ))
     (ucs               . #x0114)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0045 #x0306)
     (mirrored          . nil)
+    (->decomposition   #x0045 #x0306)
     (->lowercase       #x0115)
     ))
 (define-char
     (ucs               . #x0115)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0065 #x0306)
     (mirrored          . nil)
+    (->decomposition   #x0065 #x0306)
     (->uppercase       #x0114)
     (->titlecase       #x0114)
     ))
     (ucs               . #x0116)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0045 #x0307)
     (mirrored          . nil)
+    (->decomposition   #x0045 #x0307)
     (->lowercase       #x0117)
-    (latin-iso8859-4   #x4C)   ; \e-DÌ\e-A
+    (latin-iso8859-4   #xCC)   ; \e-DÌ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER E WITH DOT ABOVE")
     (->ucs             . #x0116)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0116)
     (mirrored          . nil)
+    (->decomposition   wide #x0116)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER E WITH DOT ABOVE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER E WITH DOT ABOVE")))
     (japanese-jisx0212 #x2A #x36)      ; \e$(D*6\e(B
     ))
 (define-char
     (ucs               . #x0117)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0065 #x0307)
     (mirrored          . nil)
+    (->decomposition   #x0065 #x0307)
     (->uppercase       #x0116)
     (->titlecase       #x0116)
-    (latin-iso8859-4   #x6C)   ; \e-Dì\e-A
+    (latin-iso8859-4   #xEC)   ; \e-Dì\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER E WITH DOT ABOVE")
     (->ucs             . #x0117)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0117)
     (mirrored          . nil)
+    (->decomposition   wide #x0117)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER E WITH DOT ABOVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER E WITH DOT ABOVE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER E WITH DOT ABOVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER E WITH DOT ABOVE")))
     (japanese-jisx0212 #x2B #x36)      ; \e$(D+6\e(B
     ))
 (define-char
     (ucs               . #x0118)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0045 #x0328)
     (mirrored          . nil)
+    (->decomposition   #x0045 #x0328)
     (->lowercase       #x0119)
-    (latin-iso8859-2   #x4A)   ; \e-BÊ\e-A
-    (latin-iso8859-4   #x4A)   ; \e-BÊ\e-A
+    (latin-iso8859-2   #xCA)   ; \e-BÊ\e-A
+    (latin-iso8859-4   #xCA)   ; \e-DÊ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER E WITH OGONEK")
     (->ucs             . #x0118)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0118)
     (mirrored          . nil)
+    (->decomposition   wide #x0118)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER E WITH OGONEK")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER E WITH OGONEK")))
     (japanese-jisx0212 #x2A #x38)      ; \e$(D*8\e(B
     ))
 (define-char
     (ucs               . #x0119)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0065 #x0328)
     (mirrored          . nil)
+    (->decomposition   #x0065 #x0328)
     (->uppercase       #x0118)
     (->titlecase       #x0118)
-    (latin-iso8859-2   #x6A)   ; \e-Bê\e-A
-    (latin-iso8859-4   #x6A)   ; \e-Bê\e-A
+    (latin-iso8859-2   #xEA)   ; \e-Bê\e-A
+    (latin-iso8859-4   #xEA)   ; \e-Dê\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER E WITH OGONEK")
     (->ucs             . #x0119)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0119)
     (mirrored          . nil)
+    (->decomposition   wide #x0119)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER E WITH OGONEK")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER E WITH OGONEK")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER E WITH OGONEK")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER E WITH OGONEK")))
     (japanese-jisx0212 #x2B #x38)      ; \e$(D+8\e(B
     ))
 (define-char
     (ucs               . #x011A)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0045 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x0045 #x030C)
     (->lowercase       #x011B)
-    (latin-iso8859-2   #x4C)   ; \e-BÌ\e-A
+    (latin-iso8859-2   #xCC)   ; \e-BÌ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER E WITH CARON")
     (->ucs             . #x011A)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x011A)
     (mirrored          . nil)
+    (->decomposition   wide #x011A)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER E WITH CARON")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER E WITH CARON")))
     (japanese-jisx0212 #x2A #x35)      ; \e$(D*5\e(B
     ))
 (define-char
     (ucs               . #x011B)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0065 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x0065 #x030C)
     (->uppercase       #x011A)
     (->titlecase       #x011A)
-    (latin-iso8859-2   #x6C)   ; \e-Bì\e-A
+    (latin-iso8859-2   #xEC)   ; \e-Bì\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER E WITH CARON")
     (->ucs             . #x011B)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x011B)
     (mirrored          . nil)
+    (->decomposition   wide #x011B)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER E WITH CARON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER E WITH CARON")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER E WITH CARON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER E WITH CARON")))
     (chinese-gb2312    #x28 #x27)      ; \e$(D+5\e(B
     (japanese-jisx0212 #x2B #x35)      ; \e$(D+5\e(B
     ))
     (ucs               . #x011C)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0047 #x0302)
     (mirrored          . nil)
+    (->decomposition   #x0047 #x0302)
     (->lowercase       #x011D)
-    (latin-iso8859-3   #x58)   ; \e-CØ\e-A
+    (latin-iso8859-3   #xD8)   ; \e-CØ\e-A
     ))
 (define-char
-  '((name              . "FULLWIDTH LATIN CAPITAL LETTER G WITH CIRCUMFLEX")
+  '((name . "FULLWIDTH LATIN CAPITAL LETTER G WITH CIRCUMFLEX")
     (->ucs             . #x011C)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x011C)
     (mirrored          . nil)
+    (->decomposition   wide #x011C)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER G WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER G WITH CIRCUMFLEX")))
     (japanese-jisx0212 #x2A #x3A)      ; \e$(D*:\e(B
     ))
 (define-char
     (ucs               . #x011D)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0067 #x0302)
     (mirrored          . nil)
+    (->decomposition   #x0067 #x0302)
     (->uppercase       #x011C)
     (->titlecase       #x011C)
-    (latin-iso8859-3   #x78)   ; \e-Cø\e-A
+    (latin-iso8859-3   #xF8)   ; \e-Cø\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER G WITH CIRCUMFLEX")
     (->ucs             . #x011D)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x011D)
     (mirrored          . nil)
+    (->decomposition   wide #x011D)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER G WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER G WITH CIRCUMFLEX")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER G WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER G WITH CIRCUMFLEX")))
     (japanese-jisx0212 #x2B #x3A)      ; \e$(D+:\e(B
     ))
 (define-char
     (ucs               . #x011E)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0047 #x0306)
     (mirrored          . nil)
+    (->decomposition   #x0047 #x0306)
     (->lowercase       #x011F)
-    (latin-iso8859-3   #x2B)   ; \e-C«\e-A
-    (latin-iso8859-9   #x50)   ; \e-C«\e-A
+    (latin-iso8859-3   #xAB)   ; \e-C«\e-A
+    (latin-iso8859-9   #xD0)   ; \e-MÐ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER G WITH BREVE")
     (->ucs             . #x011E)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x011E)
     (mirrored          . nil)
+    (->decomposition   wide #x011E)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER G WITH BREVE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER G WITH BREVE")))
     (japanese-jisx0212 #x2A #x3B)      ; \e$(D*;\e(B
     ))
 (define-char
     (ucs               . #x011F)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0067 #x0306)
     (mirrored          . nil)
+    (->decomposition   #x0067 #x0306)
     (->uppercase       #x011E)
     (->titlecase       #x011E)
-    (latin-iso8859-3   #x3B)   ; \e-C»\e-A
-    (latin-iso8859-9   #x70)   ; \e-C»\e-A
+    (latin-iso8859-3   #xBB)   ; \e-C»\e-A
+    (latin-iso8859-9   #xF0)   ; \e-Mð\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER G WITH BREVE")
     (->ucs             . #x011F)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x011F)
     (mirrored          . nil)
+    (->decomposition   wide #x011F)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER G WITH BREVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER G WITH BREVE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER G WITH BREVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER G WITH BREVE")))
     (japanese-jisx0212 #x2B #x3B)      ; \e$(D+;\e(B
     ))
 (define-char
     (ucs               . #x0120)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0047 #x0307)
     (mirrored          . nil)
+    (->decomposition   #x0047 #x0307)
     (->lowercase       #x0121)
-    (latin-iso8859-3   #x55)   ; \e-CÕ\e-A
+    (latin-iso8859-3   #xD5)   ; \e-CÕ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER G WITH DOT ABOVE")
     (->ucs             . #x0120)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0120)
     (mirrored          . nil)
+    (->decomposition   wide #x0120)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER G WITH DOT ABOVE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER G WITH DOT ABOVE")))
     (japanese-jisx0212 #x2A #x3D)      ; \e$(D*=\e(B
     ))
 (define-char
     (ucs               . #x0121)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0067 #x0307)
     (mirrored          . nil)
+    (->decomposition   #x0067 #x0307)
     (->uppercase       #x0120)
     (->titlecase       #x0120)
-    (latin-iso8859-3   #x75)   ; \e-Cõ\e-A
+    (latin-iso8859-3   #xF5)   ; \e-Cõ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER G WITH DOT ABOVE")
     (->ucs             . #x0121)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0121)
     (mirrored          . nil)
+    (->decomposition   wide #x0121)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER G WITH DOT ABOVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER G WITH DOT ABOVE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER G WITH DOT ABOVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER G WITH DOT ABOVE")))
     (japanese-jisx0212 #x2B #x3D)      ; \e$(D+=\e(B
     ))
 (define-char
     (ucs               . #x0122)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0047 #x0327)
     (mirrored          . nil)
+    (->decomposition   #x0047 #x0327)
     (->lowercase       #x0123)
-    (latin-iso8859-4   #x2B)   ; \e-D«\e-A
+    (latin-iso8859-4   #xAB)   ; \e-D«\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER G WITH CEDILLA")
     (->ucs             . #x0122)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0122)
     (mirrored          . nil)
+    (->decomposition   wide #x0122)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER G WITH CEDILLA")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER G WITH CEDILLA")))
     (japanese-jisx0212 #x2A #x3C)      ; \e$(D*<\e(B
     ))
 (define-char
     (ucs               . #x0123)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0067 #x0327)
     (mirrored          . nil)
+    (->decomposition   #x0067 #x0327)
     (->uppercase       #x0122)
     (->titlecase       #x0122)
-    (latin-iso8859-4   #x3B)   ; \e-D»\e-A
+    (latin-iso8859-4   #xBB)   ; \e-D»\e-A
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER H WITH CIRCUMFLEX")
     (ucs               . #x0124)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0048 #x0302)
     (mirrored          . nil)
+    (->decomposition   #x0048 #x0302)
     (->lowercase       #x0125)
-    (latin-iso8859-3   #x26)   ; \e-C¦\e-A
+    (latin-iso8859-3   #xA6)   ; \e-C¦\e-A
     ))
 (define-char
-  '((name              . "FULLWIDTH LATIN CAPITAL LETTER H WITH CIRCUMFLEX")
+  '((name . "FULLWIDTH LATIN CAPITAL LETTER H WITH CIRCUMFLEX")
     (->ucs             . #x0124)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0124)
     (mirrored          . nil)
+    (->decomposition   wide #x0124)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER H WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER H WITH CIRCUMFLEX")))
     (japanese-jisx0212 #x2A #x3E)      ; \e$(D*>\e(B
     ))
 (define-char
     (ucs               . #x0125)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0068 #x0302)
     (mirrored          . nil)
+    (->decomposition   #x0068 #x0302)
     (->uppercase       #x0124)
     (->titlecase       #x0124)
-    (latin-iso8859-3   #x36)   ; \e-C¶\e-A
+    (latin-iso8859-3   #xB6)   ; \e-C¶\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER H WITH CIRCUMFLEX")
     (->ucs             . #x0125)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0125)
     (mirrored          . nil)
+    (->decomposition   wide #x0125)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER H WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER H WITH CIRCUMFLEX")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER H WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER H WITH CIRCUMFLEX")))
     (japanese-jisx0212 #x2B #x3E)      ; \e$(D+>\e(B
     ))
 (define-char
     (bidi-category     . "L")
     (mirrored          . nil)
     (->lowercase       #x0127)
-    (latin-iso8859-3   #x21)   ; \e-C¡\e-A
+    (latin-iso8859-3   #xA1)   ; \e-C¡\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER H WITH STROKE")
     (->ucs             . #x0126)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0126)
     (mirrored          . nil)
+    (->decomposition   wide #x0126)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER H WITH STROKE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER H WITH STROKE")))
     (korean-ksc5601    #x28 #x24)      ; \e$(D)$\e(B
     (japanese-jisx0212 #x29 #x24)      ; \e$(D)$\e(B
     ))
     (mirrored          . nil)
     (->uppercase       #x0126)
     (->titlecase       #x0126)
-    (latin-iso8859-3   #x31)   ; \e-C±\e-A
+    (latin-iso8859-3   #xB1)   ; \e-C±\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER H WITH STROKE")
     (->ucs             . #x0127)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0127)
     (mirrored          . nil)
+    (->decomposition   wide #x0127)
     (->uppercase       #x0126)
     (->titlecase       #x0126)
     (korean-ksc5601    #x29 #x24)      ; \e$(D)D\e(B
     (ucs               . #x0128)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0049 #x0303)
     (mirrored          . nil)
+    (->decomposition   #x0049 #x0303)
     (->lowercase       #x0129)
-    (latin-iso8859-4   #x25)   ; \e-D¥\e-A
-    (latin-viscii-upper        #x6E)   ; \e-D¥\e-A
+    (latin-iso8859-4   #xA5)   ; \e-D¥\e-A
+    (latin-viscii-upper #xEE)  ; \e-D¥\e-A
+    (latin-viscii      #xCE)   ; \e-D¥\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER I WITH TILDE")
     (->ucs             . #x0128)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0128)
     (mirrored          . nil)
+    (->decomposition   wide #x0128)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER I WITH TILDE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER I WITH TILDE")))
     (japanese-jisx0212 #x2A #x47)      ; \e$(D*G\e(B
     ))
 (define-char
     (ucs               . #x0129)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0069 #x0303)
     (mirrored          . nil)
+    (->decomposition   #x0069 #x0303)
     (->uppercase       #x0128)
     (->titlecase       #x0128)
-    (latin-iso8859-4   #x35)   ; \e-Dµ\e-A
-    (latin-viscii-lower        #x6E)   ; \e-Dµ\e-A
+    (latin-iso8859-4   #xB5)   ; \e-Dµ\e-A
+    (latin-viscii-lower #xEE)  ; \e-Dµ\e-A
+    (latin-viscii      #xEE)   ; \e-Dµ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER I WITH TILDE")
     (->ucs             . #x0129)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0129)
     (mirrored          . nil)
+    (->decomposition   wide #x0129)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER I WITH TILDE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER I WITH TILDE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER I WITH TILDE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER I WITH TILDE")))
     (japanese-jisx0212 #x2B #x47)      ; \e$(D+G\e(B
     ))
 (define-char
     (ucs               . #x012A)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0049 #x0304)
     (mirrored          . nil)
+    (->decomposition   #x0049 #x0304)
     (->lowercase       #x012B)
-    (latin-iso8859-4   #x4F)   ; \e-DÏ\e-A
+    (latin-iso8859-4   #xCF)   ; \e-DÏ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER I WITH MACRON")
     (->ucs             . #x012A)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x012A)
     (mirrored          . nil)
+    (->decomposition   wide #x012A)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER I WITH MACRON")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER I WITH MACRON")))
     (japanese-jisx0212 #x2A #x45)      ; \e$(D*E\e(B
     ))
 (define-char
     (ucs               . #x012B)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0069 #x0304)
     (mirrored          . nil)
+    (->decomposition   #x0069 #x0304)
     (->uppercase       #x012A)
     (->titlecase       #x012A)
-    (latin-iso8859-4   #x6F)   ; \e-Dï\e-A
+    (latin-iso8859-4   #xEF)   ; \e-Dï\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER I WITH MACRON")
     (->ucs             . #x012B)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x012B)
     (mirrored          . nil)
+    (->decomposition   wide #x012B)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER I WITH MACRON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER I WITH MACRON")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER I WITH MACRON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER I WITH MACRON")))
     (chinese-gb2312    #x28 #x29)      ; \e$(D+E\e(B
     (japanese-jisx0212 #x2B #x45)      ; \e$(D+E\e(B
     ))
     (ucs               . #x012C)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0049 #x0306)
     (mirrored          . nil)
+    (->decomposition   #x0049 #x0306)
     (->lowercase       #x012D)
     ))
 (define-char
     (ucs               . #x012D)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0069 #x0306)
     (mirrored          . nil)
+    (->decomposition   #x0069 #x0306)
     (->uppercase       #x012C)
     (->titlecase       #x012C)
     ))
     (ucs               . #x012E)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0049 #x0328)
     (mirrored          . nil)
+    (->decomposition   #x0049 #x0328)
     (->lowercase       #x012F)
-    (latin-iso8859-4   #x47)   ; \e-DÇ\e-A
+    (latin-iso8859-4   #xC7)   ; \e-DÇ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER I WITH OGONEK")
     (->ucs             . #x012E)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x012E)
     (mirrored          . nil)
+    (->decomposition   wide #x012E)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER I WITH OGONEK")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER I WITH OGONEK")))
     (japanese-jisx0212 #x2A #x46)      ; \e$(D*F\e(B
     ))
 (define-char
     (ucs               . #x012F)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0069 #x0328)
     (mirrored          . nil)
+    (->decomposition   #x0069 #x0328)
     (->uppercase       #x012E)
     (->titlecase       #x012E)
-    (latin-iso8859-4   #x67)   ; \e-Dç\e-A
+    (latin-iso8859-4   #xE7)   ; \e-Dç\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER I WITH OGONEK")
     (->ucs             . #x012F)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x012F)
     (mirrored          . nil)
+    (->decomposition   wide #x012F)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER I WITH OGONEK")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER I WITH OGONEK")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER I WITH OGONEK")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER I WITH OGONEK")))
     (japanese-jisx0212 #x2B #x46)      ; \e$(D+F\e(B
     ))
 (define-char
     (ucs               . #x0130)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0049 #x0307)
     (mirrored          . nil)
+    (->decomposition   #x0049 #x0307)
     (->lowercase       #x0069)
-    (latin-iso8859-3   #x29)   ; \e-C©\e-A
-    (latin-iso8859-9   #x5D)   ; \e-C©\e-A
+    (latin-iso8859-3   #xA9)   ; \e-C©\e-A
+    (latin-iso8859-9   #xDD)   ; \e-MÝ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER I WITH DOT ABOVE")
     (->ucs             . #x0130)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0130)
     (mirrored          . nil)
+    (->decomposition   wide #x0130)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER I WITH DOT ABOVE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER I WITH DOT ABOVE")))
     (japanese-jisx0212 #x2A #x44)      ; \e$(D*D\e(B
     ))
 (define-char
     (mirrored          . nil)
     (->uppercase       #x0049)
     (->titlecase       #x0049)
-    (latin-iso8859-3   #x39)   ; \e-C¹\e-A
-    (latin-iso8859-9   #x7D)   ; \e-C¹\e-A
+    (latin-iso8859-3   #xB9)   ; \e-C¹\e-A
+    (latin-iso8859-9   #xFD)   ; \e-Mý\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER DOTLESS I")
     (bidi-category     . "L")
     (mirrored          . nil)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER DOTLESS I")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER DOTLESS I")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER DOTLESS I")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER DOTLESS I")))
     (korean-ksc5601    #x29 #x25)      ; \e$(D)E\e(B
     (japanese-jisx0212 #x29 #x45)      ; \e$(D)E\e(B
     ))
     (ucs               . #x0132)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x0049 #x004A)
     (mirrored          . nil)
+    (->decomposition   compat #x0049 #x004A)
     (->lowercase       #x0133)
-    (korean-ksc5601    #x28 #x26)      ; \e$(D)&\e(B
+    (korean-ksc5601    #x28 #x26)      ; \e$(C(&\e(B
     (japanese-jisx0212 #x29 #x26)      ; \e$(D)&\e(B
     ))
 (define-char
     (ucs               . #x0133)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
+    (mirrored          . nil)
     (->decomposition   compat #x0069 #x006A)
+    (->uppercase       #x0132)
+    (->titlecase       #x0132)
+    ))
+(define-char
+  '((name              . "FULLWIDTH LATIN SMALL LIGATURE IJ")
+    (->ucs             . #x0133)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
     (mirrored          . nil)
+    (->decomposition   wide #x0133)
     (->uppercase       #x0132)
     (->titlecase       #x0132)
-    (korean-ksc5601    #x29 #x26)      ; \e$(D)F\e(B
+    (korean-ksc5601    #x29 #x26)      ; \e$(C)&\e(B
     (japanese-jisx0212 #x29 #x46)      ; \e$(D)F\e(B
     ))
 (define-char
     (ucs               . #x0134)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004A #x0302)
     (mirrored          . nil)
+    (->decomposition   #x004A #x0302)
     (->lowercase       #x0135)
-    (latin-iso8859-3   #x2C)   ; \e-C¬\e-A
+    (latin-iso8859-3   #xAC)   ; \e-C¬\e-A
     ))
 (define-char
-  '((name              . "FULLWIDTH LATIN CAPITAL LETTER J WITH CIRCUMFLEX")
+  '((name . "FULLWIDTH LATIN CAPITAL LETTER J WITH CIRCUMFLEX")
     (->ucs             . #x0134)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0134)
     (mirrored          . nil)
+    (->decomposition   wide #x0134)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER J WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER J WITH CIRCUMFLEX")))
     (japanese-jisx0212 #x2A #x48)      ; \e$(D*H\e(B
     ))
 (define-char
     (ucs               . #x0135)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006A #x0302)
     (mirrored          . nil)
+    (->decomposition   #x006A #x0302)
     (->uppercase       #x0134)
     (->titlecase       #x0134)
-    (latin-iso8859-3   #x3C)   ; \e-C¼\e-A
+    (latin-iso8859-3   #xBC)   ; \e-C¼\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER J WITH CIRCUMFLEX")
     (->ucs             . #x0135)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0135)
     (mirrored          . nil)
+    (->decomposition   wide #x0135)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER J WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER J WITH CIRCUMFLEX")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER J WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER J WITH CIRCUMFLEX")))
     (japanese-jisx0212 #x2B #x48)      ; \e$(D+H\e(B
     ))
 (define-char
     (ucs               . #x0136)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004B #x0327)
     (mirrored          . nil)
+    (->decomposition   #x004B #x0327)
     (->lowercase       #x0137)
-    (latin-iso8859-4   #x53)   ; \e-DÓ\e-A
+    (latin-iso8859-4   #xD3)   ; \e-DÓ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER K WITH CEDILLA")
     (->ucs             . #x0136)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0136)
     (mirrored          . nil)
+    (->decomposition   wide #x0136)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER K WITH CEDILLA")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER K WITH CEDILLA")))
     (japanese-jisx0212 #x2A #x49)      ; \e$(D*I\e(B
     ))
 (define-char
     (ucs               . #x0137)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006B #x0327)
     (mirrored          . nil)
+    (->decomposition   #x006B #x0327)
     (->uppercase       #x0136)
     (->titlecase       #x0136)
-    (latin-iso8859-4   #x73)   ; \e-Dó\e-A
+    (latin-iso8859-4   #xF3)   ; \e-Dó\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER K WITH CEDILLA")
     (->ucs             . #x0137)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0137)
     (mirrored          . nil)
+    (->decomposition   wide #x0137)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER K WITH CEDILLA")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER K WITH CEDILLA")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER K WITH CEDILLA")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER K WITH CEDILLA")))
     (japanese-jisx0212 #x2B #x49)      ; \e$(D+I\e(B
     ))
 (define-char
     (bidi-category     . "L")
     (mirrored          . nil)
     (iso-10646-comment . "Greenlandic")
-    (latin-iso8859-4   #x22)   ; \e-D¢\e-A
+    (latin-iso8859-4   #xA2)   ; \e-D¢\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER KRA")
     (->ucs             . #x0138)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0138)
     (mirrored          . nil)
     (iso-10646-comment . "Greenlandic")
+    (->decomposition   wide #x0138)
     (korean-ksc5601    #x29 #x27)      ; \e$(D)G\e(B
     (japanese-jisx0212 #x29 #x47)      ; \e$(D)G\e(B
     ))
     (ucs               . #x0139)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004C #x0301)
     (mirrored          . nil)
+    (->decomposition   #x004C #x0301)
     (->lowercase       #x013A)
-    (latin-iso8859-2   #x45)   ; \e-BÅ\e-A
+    (latin-iso8859-2   #xC5)   ; \e-BÅ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER L WITH ACUTE")
     (->ucs             . #x0139)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0139)
     (mirrored          . nil)
+    (->decomposition   wide #x0139)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER L WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER L WITH ACUTE")))
     (japanese-jisx0212 #x2A #x4A)      ; \e$(D*J\e(B
     ))
 (define-char
     (ucs               . #x013A)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006C #x0301)
     (mirrored          . nil)
+    (->decomposition   #x006C #x0301)
     (->uppercase       #x0139)
     (->titlecase       #x0139)
-    (latin-iso8859-2   #x65)   ; \e-Bå\e-A
+    (latin-iso8859-2   #xE5)   ; \e-Bå\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER L WITH ACUTE")
     (->ucs             . #x013A)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x013A)
     (mirrored          . nil)
+    (->decomposition   wide #x013A)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER L WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER L WITH ACUTE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER L WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER L WITH ACUTE")))
     (japanese-jisx0212 #x2B #x4A)      ; \e$(D+J\e(B
     ))
 (define-char
     (ucs               . #x013B)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004C #x0327)
     (mirrored          . nil)
+    (->decomposition   #x004C #x0327)
     (->lowercase       #x013C)
-    (latin-iso8859-4   #x26)   ; \e-D¦\e-A
+    (latin-iso8859-4   #xA6)   ; \e-D¦\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER L WITH CEDILLA")
     (->ucs             . #x013B)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x013B)
     (mirrored          . nil)
+    (->decomposition   wide #x013B)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER L WITH CEDILLA")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER L WITH CEDILLA")))
     (japanese-jisx0212 #x2A #x4C)      ; \e$(D*L\e(B
     ))
 (define-char
     (ucs               . #x013C)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006C #x0327)
     (mirrored          . nil)
+    (->decomposition   #x006C #x0327)
     (->uppercase       #x013B)
     (->titlecase       #x013B)
-    (latin-iso8859-4   #x36)   ; \e-D¶\e-A
+    (latin-iso8859-4   #xB6)   ; \e-D¶\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER L WITH CEDILLA")
     (->ucs             . #x013C)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x013C)
     (mirrored          . nil)
+    (->decomposition   wide #x013C)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER L WITH CEDILLA")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER L WITH CEDILLA")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER L WITH CEDILLA")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER L WITH CEDILLA")))
     (japanese-jisx0212 #x2B #x4C)      ; \e$(D+L\e(B
     ))
 (define-char
     (ucs               . #x013D)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004C #x030C)
     (mirrored          . nil)
+    (->decomposition   #x004C #x030C)
     (->lowercase       #x013E)
-    (latin-iso8859-2   #x25)   ; \e-B¥\e-A
+    (latin-iso8859-2   #xA5)   ; \e-B¥\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER L WITH CARON")
     (->ucs             . #x013D)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x013D)
     (mirrored          . nil)
+    (->decomposition   wide #x013D)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER L WITH CARON")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER L WITH CARON")))
     (japanese-jisx0212 #x2A #x4B)      ; \e$(D*K\e(B
     ))
 (define-char
     (ucs               . #x013E)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006C #x030C)
     (mirrored          . nil)
+    (->decomposition   #x006C #x030C)
     (->uppercase       #x013D)
     (->titlecase       #x013D)
-    (latin-iso8859-2   #x35)   ; \e-Bµ\e-A
+    (latin-iso8859-2   #xB5)   ; \e-Bµ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER L WITH CARON")
     (->ucs             . #x013E)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x013E)
     (mirrored          . nil)
+    (->decomposition   wide #x013E)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER L WITH CARON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER L WITH CARON")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER L WITH CARON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER L WITH CARON")))
     (japanese-jisx0212 #x2B #x4B)      ; \e$(D+K\e(B
     ))
 (define-char
     (ucs               . #x013F)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x004C #x00B7)
     (mirrored          . nil)
+    (->decomposition   compat #x004C #x00B7)
     (->lowercase       #x0140)
     ))
 (define-char
-  '((name              . "FULLWIDTH LATIN CAPITAL LETTER L WITH MIDDLE DOT")
+  '((name . "FULLWIDTH LATIN CAPITAL LETTER L WITH MIDDLE DOT")
     (->ucs             . #x013F)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x013F)
     (mirrored          . nil)
+    (->decomposition   wide #x013F)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER L WITH MIDDLE DOT")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER L WITH MIDDLE DOT")))
     (korean-ksc5601    #x28 #x28)      ; \e$(D))\e(B
     (japanese-jisx0212 #x29 #x29)      ; \e$(D))\e(B
     ))
     (ucs               . #x0140)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x006C #x00B7)
     (mirrored          . nil)
+    (->decomposition   compat #x006C #x00B7)
     (->uppercase       #x013F)
     (->titlecase       #x013F)
     ))
     (->ucs             . #x0140)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0140)
     (mirrored          . nil)
+    (->decomposition   wide #x0140)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER L WITH MIDDLE DOT")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER L WITH MIDDLE DOT")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER L WITH MIDDLE DOT")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER L WITH MIDDLE DOT")))
     (korean-ksc5601    #x29 #x28)      ; \e$(D)I\e(B
     (japanese-jisx0212 #x29 #x49)      ; \e$(D)I\e(B
     ))
     (bidi-category     . "L")
     (mirrored          . nil)
     (->lowercase       #x0142)
-    (latin-iso8859-2   #x23)   ; \e-B£\e-A
+    (latin-iso8859-2   #xA3)   ; \e-B£\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER L WITH STROKE")
     (->ucs             . #x0141)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0141)
     (mirrored          . nil)
+    (->decomposition   wide #x0141)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER L WITH STROKE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER L WITH STROKE")))
     (korean-ksc5601    #x28 #x29)      ; \e$(D)(\e(B
     (japanese-jisx0212 #x29 #x28)      ; \e$(D)(\e(B
     ))
     (mirrored          . nil)
     (->uppercase       #x0141)
     (->titlecase       #x0141)
-    (latin-iso8859-2   #x33)   ; \e-B³\e-A
+    (latin-iso8859-2   #xB3)   ; \e-B³\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER L WITH STROKE")
     (->ucs             . #x0142)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0142)
     (mirrored          . nil)
+    (->decomposition   wide #x0142)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER L WITH STROKE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER L WITH STROKE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER L WITH STROKE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER L WITH STROKE")))
     (korean-ksc5601    #x29 #x29)      ; \e$(D)H\e(B
     (japanese-jisx0212 #x29 #x48)      ; \e$(D)H\e(B
     ))
     (ucs               . #x0143)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004E #x0301)
     (mirrored          . nil)
+    (->decomposition   #x004E #x0301)
     (->lowercase       #x0144)
-    (latin-iso8859-2   #x51)   ; \e-BÑ\e-A
+    (latin-iso8859-2   #xD1)   ; \e-BÑ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER N WITH ACUTE")
     (->ucs             . #x0143)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0143)
     (mirrored          . nil)
+    (->decomposition   wide #x0143)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER N WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER N WITH ACUTE")))
     (japanese-jisx0212 #x2A #x4D)      ; \e$(D*M\e(B
     ))
 (define-char
     (ucs               . #x0144)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006E #x0301)
     (mirrored          . nil)
+    (->decomposition   #x006E #x0301)
     (->uppercase       #x0143)
     (->titlecase       #x0143)
-    (latin-iso8859-2   #x71)   ; \e-Bñ\e-A
+    (latin-iso8859-2   #xF1)   ; \e-Bñ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER N WITH ACUTE")
     (->ucs             . #x0144)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0144)
     (mirrored          . nil)
+    (->decomposition   wide #x0144)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER N WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER N WITH ACUTE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER N WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER N WITH ACUTE")))
     (japanese-jisx0212 #x2B #x4D)      ; \e$(D+M\e(B
     ))
 (define-char
     (ucs               . #x0145)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004E #x0327)
     (mirrored          . nil)
+    (->decomposition   #x004E #x0327)
     (->lowercase       #x0146)
-    (latin-iso8859-4   #x51)   ; \e-DÑ\e-A
+    (latin-iso8859-4   #xD1)   ; \e-DÑ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER N WITH CEDILLA")
     (->ucs             . #x0145)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0145)
     (mirrored          . nil)
+    (->decomposition   wide #x0145)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER N WITH CEDILLA")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER N WITH CEDILLA")))
     (japanese-jisx0212 #x2A #x4F)      ; \e$(D*O\e(B
     ))
 (define-char
     (ucs               . #x0146)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006E #x0327)
     (mirrored          . nil)
+    (->decomposition   #x006E #x0327)
     (->uppercase       #x0145)
     (->titlecase       #x0145)
-    (latin-iso8859-4   #x71)   ; \e-Dñ\e-A
-    (japanese-jisx0212 #x2B #x4F)      ; \e-Dñ\e-A
+    (latin-iso8859-4   #xF1)   ; \e-Dñ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH LATIN SMALL LETTER N WITH CEDILLA")
+    (->ucs             . #x0146)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0146)
+    (->uppercase
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER N WITH CEDILLA")))
+    (->titlecase
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER N WITH CEDILLA")))
+    (japanese-jisx0212 #x2B #x4F)      ; \e$(D+O\e(B
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER N WITH CARON")
     (ucs               . #x0147)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004E #x030C)
     (mirrored          . nil)
+    (->decomposition   #x004E #x030C)
     (->lowercase       #x0148)
-    (latin-iso8859-2   #x52)   ; \e-BÒ\e-A
+    (latin-iso8859-2   #xD2)   ; \e-BÒ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER N WITH CARON")
     (->ucs             . #x0147)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0147)
     (mirrored          . nil)
+    (->decomposition   wide #x0147)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER N WITH CARON")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER N WITH CARON")))
     (japanese-jisx0212 #x2A #x4E)      ; \e$(D*N\e(B
     ))
 (define-char
     (ucs               . #x0148)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006E #x030C)
     (mirrored          . nil)
+    (->decomposition   #x006E #x030C)
     (->uppercase       #x0147)
     (->titlecase       #x0147)
-    (latin-iso8859-2   #x72)   ; \e-Bò\e-A
+    (latin-iso8859-2   #xF2)   ; \e-Bò\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER N WITH CARON")
     (->ucs             . #x0148)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0148)
     (mirrored          . nil)
+    (->decomposition   wide #x0148)
     (->uppercase       #x0147)
     (->titlecase       #x0147)
     (japanese-jisx0212 #x2B #x4E)      ; \e$(D+N\e(B
     (ucs               . #x0149)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x02BC #x006E)
     (mirrored          . nil)
+    (->decomposition   compat #x02BC #x006E)
     ))
 (define-char
-  '((name      . "FULLWIDTH LATIN SMALL LETTER N PRECEDED BY APOSTROPHE")
-    (->ucs     . #x0149)
+  '((name . "FULLWIDTH LATIN SMALL LETTER N PRECEDED BY APOSTROPHE")
+    (->ucs             . #x0149)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0149)
     (mirrored          . nil)
+    (->decomposition   wide #x0149)
     (korean-ksc5601    #x29 #x30)      ; \e$(D)J\e(B
     (japanese-jisx0212 #x29 #x4A)      ; \e$(D)J\e(B
     ))
     (mirrored          . nil)
     (iso-10646-comment . "Sami")
     (->lowercase       #x014B)
-    (latin-iso8859-4   #x3D)   ; \e-D½\e-A
+    (latin-iso8859-4   #xBD)   ; \e-D½\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER ENG")
     (->ucs             . #x014A)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x014A)
     (mirrored          . nil)
     (iso-10646-comment . "Sami")
+    (->decomposition   wide #x014A)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER ENG")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER ENG")))
     (korean-ksc5601    #x28 #x2F)      ; \e$(D)+\e(B
     (japanese-jisx0212 #x29 #x2B)      ; \e$(D)+\e(B
     ))
     (iso-10646-comment . "Sami")
     (->uppercase       #x014A)
     (->titlecase       #x014A)
-    (latin-iso8859-4   #x3F)   ; \e-D¿\e-A
-    (ipa               #x55)
+    (latin-iso8859-4   #xBF)   ; \e-D¿\e-A
+    (ipa               #xD5)   ; \e-0Õ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER ENG")
     (->ucs             . #x014B)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x014B)
     (mirrored          . nil)
     (iso-10646-comment . "Sami")
+    (->decomposition   wide #x014B)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER ENG")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER ENG")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER ENG")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER ENG")))
     (korean-ksc5601    #x29 #x2F)      ; \e$(D)K\e(B
     (japanese-jisx0212 #x29 #x4B)      ; \e$(D)K\e(B
     ))
     (ucs               . #x014C)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004F #x0304)
     (mirrored          . nil)
+    (->decomposition   #x004F #x0304)
     (->lowercase       #x014D)
-    (latin-iso8859-4   #x52)   ; \e-DÒ\e-A
+    (latin-iso8859-4   #xD2)   ; \e-DÒ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER O WITH MACRON")
     (->ucs             . #x014C)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x014C)
     (mirrored          . nil)
+    (->decomposition   wide #x014C)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER O WITH MACRON")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER O WITH MACRON")))
     (japanese-jisx0212 #x2A #x57)      ; \e$(D*W\e(B
     ))
 (define-char
     (ucs               . #x014D)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006F #x0304)
     (mirrored          . nil)
+    (->decomposition   #x006F #x0304)
     (->uppercase       #x014C)
     (->titlecase       #x014C)
-    (latin-iso8859-4   #x72)   ; \e-Dò\e-A
+    (latin-iso8859-4   #xF2)   ; \e-Dò\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER O WITH MACRON")
     (->ucs             . #x014D)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x014D)
     (mirrored          . nil)
+    (->decomposition   wide #x014D)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER O WITH MACRON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER O WITH MACRON")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER O WITH MACRON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER O WITH MACRON")))
     (chinese-gb2312    #x28 #x2D)      ; \e$(D+W\e(B
     (japanese-jisx0212 #x2B #x57)      ; \e$(D+W\e(B
     ))
     (ucs               . #x014E)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004F #x0306)
     (mirrored          . nil)
+    (->decomposition   #x004F #x0306)
     (->lowercase       #x014F)
     ))
 (define-char
     (ucs               . #x014F)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006F #x0306)
     (mirrored          . nil)
+    (->decomposition   #x006F #x0306)
     (->uppercase       #x014E)
     (->titlecase       #x014E)
     ))
     (ucs               . #x0150)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004F #x030B)
     (mirrored          . nil)
+    (->decomposition   #x004F #x030B)
     (->lowercase       #x0151)
-    (latin-iso8859-2   #x55)   ; \e-BÕ\e-A
+    (latin-iso8859-2   #xD5)   ; \e-BÕ\e-A
     ))
 (define-char
-  '((name      . "FULLWIDTH LATIN CAPITAL LETTER O WITH DOUBLE ACUTE")
+  '((name . "FULLWIDTH LATIN CAPITAL LETTER O WITH DOUBLE ACUTE")
     (->ucs             . #x0150)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0150)
     (mirrored          . nil)
+    (->decomposition   wide #x0150)
     (->lowercase
-     ((name    . "FULLWIDTH LATIN SMALL LETTER O WITH DOUBLE ACUTE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER O WITH DOUBLE ACUTE")))
     (japanese-jisx0212 #x2A #x56)      ; \e$(D*V\e(B
     ))
 (define-char
     (ucs               . #x0151)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006F #x030B)
     (mirrored          . nil)
+    (->decomposition   #x006F #x030B)
     (->uppercase       #x0150)
     (->titlecase       #x0150)
-    (latin-iso8859-2   #x75)   ; \e-Bõ\e-A
+    (latin-iso8859-2   #xF5)   ; \e-Bõ\e-A
     ))
 (define-char
-  '((name              . "FULLWIDTH LATIN SMALL LETTER O WITH DOUBLE ACUTE")
+  '((name . "FULLWIDTH LATIN SMALL LETTER O WITH DOUBLE ACUTE")
     (->ucs             . #x0151)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0151)
     (mirrored          . nil)
+    (->decomposition   wide #x0151)
     (->uppercase
-     ((name    . "FULLWIDTH LATIN CAPITAL LETTER O WITH DOUBLE ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER O WITH DOUBLE ACUTE")))
     (->titlecase
-     ((name    . "FULLWIDTH LATIN CAPITAL LETTER O WITH DOUBLE ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER O WITH DOUBLE ACUTE")))
     (japanese-jisx0212 #x2B #x56)      ; \e$(D+V\e(B
     ))
 (define-char
     (bidi-category     . "L")
     (mirrored          . nil)
     (->lowercase       #x0153)
-    (korean-ksc5601    #x28 #x2B)      ; \e$(D)-\e(B
+    (korean-ksc5601    #x28 #x2B)      ; \e$(C(+\e(B
     (japanese-jisx0212 #x29 #x2D)      ; \e$(D)-\e(B
     ))
 (define-char
     (mirrored          . nil)
     (->uppercase       #x0152)
     (->titlecase       #x0152)
-    (ipa               #x30)   ; \e$(D)M\e(B
+    (ipa               #xB0)   ; \e-0°\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH LATIN SMALL LIGATURE OE")
+    (->ucs             . #x0153)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0153)
+    (->uppercase       #x0152)
+    (->titlecase       #x0152)
     (korean-ksc5601    #x29 #x2B)      ; \e$(D)M\e(B
     (japanese-jisx0212 #x29 #x4D)      ; \e$(D)M\e(B
     ))
     (ucs               . #x0154)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0052 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x0052 #x0301)
     (->lowercase       #x0155)
-    (latin-iso8859-2   #x40)   ; \e-BÀ\e-A
+    (latin-iso8859-2   #xC0)   ; \e-BÀ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER R WITH ACUTE")
     (->ucs             . #x0154)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0154)
     (mirrored          . nil)
+    (->decomposition   wide #x0154)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER R WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER R WITH ACUTE")))
     (japanese-jisx0212 #x2A #x59)      ; \e$(D*Y\e(B
     ))
 (define-char
     (ucs               . #x0155)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0072 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x0072 #x0301)
     (->uppercase       #x0154)
     (->titlecase       #x0154)
-    (latin-iso8859-2   #x60)   ; \e-Bà\e-A
+    (latin-iso8859-2   #xE0)   ; \e-Bà\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER R WITH ACUTE")
     (->ucs             . #x0155)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0155)
     (mirrored          . nil)
+    (->decomposition   wide #x0155)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER R WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER R WITH ACUTE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER R WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER R WITH ACUTE")))
     (japanese-jisx0212 #x2B #x59)      ; \e$(D+Y\e(B
     ))
 (define-char
     (ucs               . #x0156)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0052 #x0327)
     (mirrored          . nil)
+    (->decomposition   #x0052 #x0327)
     (->lowercase       #x0157)
-    (latin-iso8859-4   #x23)   ; \e-D£\e-A
+    (latin-iso8859-4   #xA3)   ; \e-D£\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER R WITH CEDILLA")
     (->ucs             . #x0156)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0156)
     (mirrored          . nil)
+    (->decomposition   wide #x0156)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER R WITH CEDILLA")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER R WITH CEDILLA")))
     (japanese-jisx0212 #x2A #x5B)      ; \e$(D*[\e(B
     ))
 (define-char
     (ucs               . #x0157)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0072 #x0327)
     (mirrored          . nil)
+    (->decomposition   #x0072 #x0327)
     (->uppercase       #x0156)
     (->titlecase       #x0156)
-    (latin-iso8859-4   #x33)   ; \e-D³\e-A
+    (latin-iso8859-4   #xB3)   ; \e-D³\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER R WITH CEDILLA")
     (->ucs             . #x0157)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0157)
     (mirrored          . nil)
+    (->decomposition   wide #x0157)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER R WITH CEDILLA")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER R WITH CEDILLA")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER R WITH CEDILLA")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER R WITH CEDILLA")))
     (japanese-jisx0212 #x2B #x5B)      ; \e$(D+[\e(B
     ))
 (define-char
     (ucs               . #x0158)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0052 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x0052 #x030C)
     (->lowercase       #x0159)
-    (latin-iso8859-2   #x58)   ; \e-BØ\e-A
+    (latin-iso8859-2   #xD8)   ; \e-BØ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER R WITH CARON")
     (->ucs             . #x0158)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0158)
     (mirrored          . nil)
+    (->decomposition   wide #x0158)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER R WITH CARON")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER R WITH CARON")))
     (japanese-jisx0212 #x2A #x5A)      ; \e$(D*Z\e(B
     ))
 (define-char
     (ucs               . #x0159)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0072 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x0072 #x030C)
     (->uppercase       #x0158)
     (->titlecase       #x0158)
-    (latin-iso8859-2   #x78)   ; \e-Bø\e-A
+    (latin-iso8859-2   #xF8)   ; \e-Bø\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER R WITH CARON")
     (->ucs             . #x0159)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0159)
     (mirrored          . nil)
+    (->decomposition   wide #x0159)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER R WITH CARON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER R WITH CARON")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER R WITH CARON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER R WITH CARON")))
     (japanese-jisx0212 #x2B #x5A)      ; \e$(D+Z\e(B
     ))
 (define-char
     (ucs               . #x015A)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0053 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x0053 #x0301)
     (->lowercase       #x015B)
-    (latin-iso8859-2   #x26)   ; \e-B¦\e-A
+    (latin-iso8859-2   #xA6)   ; \e-B¦\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER S WITH ACUTE")
     (->ucs             . #x015A)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x015A)
     (mirrored          . nil)
+    (->decomposition   wide #x015A)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER S WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER S WITH ACUTE")))
     (japanese-jisx0212 #x2A #x5C)      ; \e$(D*\\e(B
     ))
 (define-char
     (ucs               . #x015B)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0073 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x0073 #x0301)
     (->uppercase       #x015A)
     (->titlecase       #x015A)
-    (latin-iso8859-2   #x36)   ; \e-B¶\e-A
+    (latin-iso8859-2   #xB6)   ; \e-B¶\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER S WITH ACUTE")
     (->ucs             . #x015B)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x015B)
     (mirrored          . nil)
+    (->decomposition   wide #x015B)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER S WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER S WITH ACUTE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER S WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER S WITH ACUTE")))
     (japanese-jisx0212 #x2B #x5C)      ; \e$(D+\\e(B
     ))
 (define-char
     (ucs               . #x015C)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0053 #x0302)
     (mirrored          . nil)
+    (->decomposition   #x0053 #x0302)
     (->lowercase       #x015D)
-    (latin-iso8859-3   #x5E)   ; \e-CÞ\e-A
+    (latin-iso8859-3   #xDE)   ; \e-CÞ\e-A
     ))
 (define-char
-  '((name              . "FULLWIDTH LATIN CAPITAL LETTER S WITH CIRCUMFLEX")
+  '((name . "FULLWIDTH LATIN CAPITAL LETTER S WITH CIRCUMFLEX")
     (->ucs             . #x015C)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x015C)
     (mirrored          . nil)
+    (->decomposition   wide #x015C)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER S WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER S WITH CIRCUMFLEX")))
     (japanese-jisx0212 #x2A #x5D)      ; \e$(D*]\e(B
     ))
 (define-char
     (ucs               . #x015D)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0073 #x0302)
     (mirrored          . nil)
+    (->decomposition   #x0073 #x0302)
     (->uppercase       #x015C)
     (->titlecase       #x015C)
-    (latin-iso8859-3   #x7E)   ; \e-Cþ\e-A
+    (latin-iso8859-3   #xFE)   ; \e-Cþ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER S WITH CIRCUMFLEX")
     (->ucs             . #x015D)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x015D)
     (mirrored          . nil)
+    (->decomposition   wide #x015D)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER S WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER S WITH CIRCUMFLEX")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER S WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER S WITH CIRCUMFLEX")))
     (japanese-jisx0212 #x2B #x5D)      ; \e$(D+]\e(B
     ))
 (define-char
     (ucs               . #x015E)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0053 #x0327)
     (mirrored          . nil)
     (iso-10646-comment . "*")
+    (->decomposition   #x0053 #x0327)
     (->lowercase       #x015F)
-    (latin-iso8859-2   #x2A)   ; \e-Bª\e-A
-    (latin-iso8859-3   #x2A)   ; \e-Bª\e-A
-    (latin-iso8859-9   #x5E)   ; \e-Bª\e-A
+    (latin-iso8859-2   #xAA)   ; \e-Bª\e-A
+    (latin-iso8859-3   #xAA)   ; \e-Cª\e-A
+    (latin-iso8859-9   #xDE)   ; \e-MÞ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER S WITH CEDILLA")
     (->ucs             . #x015E)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x015E)
     (mirrored          . nil)
     (iso-10646-comment . "*")
+    (->decomposition   wide #x015E)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER S WITH CEDILLA")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER S WITH CEDILLA")))
     (japanese-jisx0212 #x2A #x5F)      ; \e$(D*_\e(B
     ))
 (define-char
     (ucs               . #x015F)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0073 #x0327)
     (mirrored          . nil)
     (iso-10646-comment . "*")
+    (->decomposition   #x0073 #x0327)
     (->uppercase       #x015E)
     (->titlecase       #x015E)
-    (latin-iso8859-2   #x3A)   ; \e-Bº\e-A
-    (latin-iso8859-3   #x3A)   ; \e-Bº\e-A
-    (latin-iso8859-9   #x7E)   ; \e-Bº\e-A
+    (latin-iso8859-2   #xBA)   ; \e-Bº\e-A
+    (latin-iso8859-3   #xBA)   ; \e-Cº\e-A
+    (latin-iso8859-9   #xFE)   ; \e-Mþ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER S WITH CEDILLA")
     (->ucs             . #x015F)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x015F)
     (mirrored          . nil)
     (iso-10646-comment . "*")
+    (->decomposition   wide #x015F)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER S WITH CEDILLA")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER S WITH CEDILLA")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER S WITH CEDILLA")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER S WITH CEDILLA")))
     (japanese-jisx0212 #x2B #x5F)      ; \e$(D+_\e(B
     ))
 (define-char
     (ucs               . #x0160)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0053 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x0053 #x030C)
     (->lowercase       #x0161)
-    (latin-iso8859-2   #x29)   ; \e-B©\e-A
-    (latin-iso8859-4   #x29)   ; \e-B©\e-A
+    (latin-iso8859-2   #xA9)   ; \e-B©\e-A
+    (latin-iso8859-4   #xA9)   ; \e-D©\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER S WITH CARON")
     (->ucs             . #x0160)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0160)
     (mirrored          . nil)
+    (->decomposition   wide #x0160)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER S WITH CARON")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER S WITH CARON")))
     (japanese-jisx0212 #x2A #x5E)      ; \e$(D*^\e(B
     ))
 (define-char
     (ucs               . #x0161)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0073 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x0073 #x030C)
     (->uppercase       #x0160)
     (->titlecase       #x0160)
-    (latin-iso8859-2   #x39)   ; \e-B¹\e-A
-    (latin-iso8859-4   #x39)   ; \e-B¹\e-A
+    (latin-iso8859-2   #xB9)   ; \e-B¹\e-A
+    (latin-iso8859-4   #xB9)   ; \e-D¹\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER S WITH CARON")
     (->ucs             . #x0161)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0161)
     (mirrored          . nil)
+    (->decomposition   wide #x0161)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER S WITH CARON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER S WITH CARON")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER S WITH CARON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER S WITH CARON")))
     (japanese-jisx0212 #x2B #x5E)      ; \e$(D+^\e(B
     ))
 (define-char
     (ucs               . #x0162)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0054 #x0327)
     (mirrored          . nil)
     (iso-10646-comment . "*")
+    (->decomposition   #x0054 #x0327)
     (->lowercase       #x0163)
-    (latin-iso8859-2   #x5E)   ; \e-BÞ\e-A
+    (latin-iso8859-2   #xDE)   ; \e-BÞ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER T WITH CEDILLA")
     (->ucs             . #x0162)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0162)
     (mirrored          . nil)
     (iso-10646-comment . "*")
+    (->decomposition   wide #x0162)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER T WITH CEDILLA")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER T WITH CEDILLA")))
     (japanese-jisx0212 #x2A #x61)      ; \e$(D*a\e(B
     ))
 (define-char
     (ucs               . #x0163)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0074 #x0327)
     (mirrored          . nil)
     (iso-10646-comment . "*")
+    (->decomposition   #x0074 #x0327)
     (->uppercase       #x0162)
     (->titlecase       #x0162)
-    (latin-iso8859-2   #x7E)   ; \e-Bþ\e-A
+    (latin-iso8859-2   #xFE)   ; \e-Bþ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER T WITH CEDILLA")
     (->ucs             . #x0163)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0163)
     (mirrored          . nil)
     (iso-10646-comment . "*")
+    (->decomposition   wide #x0163)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER T WITH CEDILLA")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER T WITH CEDILLA")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER T WITH CEDILLA")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER T WITH CEDILLA")))
     (japanese-jisx0212 #x2B #x61)      ; \e$(D+a\e(B
     ))
 (define-char
     (ucs               . #x0164)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0054 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x0054 #x030C)
     (->lowercase       #x0165)
-    (latin-iso8859-2   #x2B)   ; \e-B«\e-A
+    (latin-iso8859-2   #xAB)   ; \e-B«\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER T WITH CARON")
     (->ucs             . #x0164)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0164)
     (mirrored          . nil)
+    (->decomposition   wide #x0164)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER T WITH CARON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER T WITH CARON")))
     (japanese-jisx0212 #x2A #x60)      ; \e$(D*`\e(B
     ))
 (define-char
     (ucs               . #x0165)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0074 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x0074 #x030C)
     (->uppercase       #x0164)
     (->titlecase       #x0164)
-    (latin-iso8859-2   #x3B)   ; \e-B»\e-A
+    (latin-iso8859-2   #xBB)   ; \e-B»\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER T WITH CARON")
     (->ucs             . #x0165)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0165)
     (mirrored          . nil)
+    (->decomposition   wide #x0165)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER T WITH CARON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER T WITH CARON")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER T WITH CARON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER T WITH CARON")))
     (japanese-jisx0212 #x2B #x60)      ; \e$(D+`\e(B
     ))
 (define-char
     (bidi-category     . "L")
     (mirrored          . nil)
     (->lowercase       #x0167)
-    (latin-iso8859-4   #x2C)   ; \e-D¬\e-A
+    (latin-iso8859-4   #xAC)   ; \e-D¬\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER T WITH STROKE")
     (->ucs             . #x0166)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0166)
     (mirrored          . nil)
+    (->decomposition   wide #x0166)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER T WITH STROKE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER T WITH STROKE")))
     (korean-ksc5601    #x28 #x2E)      ; \e$(D)/\e(B
     (japanese-jisx0212 #x29 #x2F)      ; \e$(D)/\e(B
     ))
     (mirrored          . nil)
     (->uppercase       #x0166)
     (->titlecase       #x0166)
-    (latin-iso8859-4   #x3C)   ; \e-D¼\e-A
+    (latin-iso8859-4   #xBC)   ; \e-D¼\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER T WITH STROKE")
     (->ucs             . #x0167)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0167)
     (mirrored          . nil)
+    (->decomposition   wide #x0167)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER T WITH STROKE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER T WITH STROKE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER T WITH STROKE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER T WITH STROKE")))
     (korean-ksc5601    #x29 #x2E)      ; \e$(D)O\e(B
     (japanese-jisx0212 #x29 #x4F)      ; \e$(D)O\e(B
     ))
     (ucs               . #x0168)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0055 #x0303)
     (mirrored          . nil)
+    (->decomposition   #x0055 #x0303)
     (->lowercase       #x0169)
-    (latin-iso8859-4   #x5D)   ; \e-DÝ\e-A
-    (latin-viscii-upper        #x7B)   ; \e-DÝ\e-A
+    (latin-iso8859-4   #xDD)   ; \e-DÝ\e-A
+    (latin-viscii-upper #xFB)  ; \e-DÝ\e-A
+    (latin-viscii      #x9D)   ; \e-DÝ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER U WITH TILDE")
     (->ucs             . #x0168)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0168)
     (mirrored          . nil)
+    (->decomposition   wide #x0168)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER U WITH TILDE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH TILDE")))
     (japanese-jisx0212 #x2A #x6C)      ; \e$(D*l\e(B
     ))
 (define-char
     (ucs               . #x0169)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0075 #x0303)
     (mirrored          . nil)
+    (->decomposition   #x0075 #x0303)
     (->uppercase       #x0168)
     (->titlecase       #x0168)
-    (latin-iso8859-4   #x7D)   ; \e-Dý\e-A
-    (latin-viscii-lower        #x7B)   ; \e-Dý\e-A
+    (latin-iso8859-4   #xFD)   ; \e-Dý\e-A
+    (latin-viscii-lower #xFB)  ; \e-Dý\e-A
+    (latin-viscii      #xFB)   ; \e-Dý\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER U WITH TILDE")
     (->ucs             . #x0169)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0169)
     (mirrored          . nil)
+    (->decomposition   wide #x0169)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER U WITH TILDE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH TILDE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER U WITH TILDE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH TILDE")))
     (japanese-jisx0212 #x2B #x6C)      ; \e$(D+l\e(B
     ))
 (define-char
     (ucs               . #x016A)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0055 #x0304)
     (mirrored          . nil)
+    (->decomposition   #x0055 #x0304)
     (->lowercase       #x016B)
-    (latin-iso8859-4   #x5E)   ; \e-DÞ\e-A
+    (latin-iso8859-4   #xDE)   ; \e-DÞ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER U WITH MACRON")
     (->ucs             . #x016A)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x016A)
     (mirrored          . nil)
+    (->decomposition   wide #x016A)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER U WITH MACRON")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER U WITH MACRON")))
     (japanese-jisx0212 #x2A #x69)      ; \e$(D*i\e(B
     ))
 (define-char
     (ucs               . #x016B)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0075 #x0304)
     (mirrored          . nil)
+    (->decomposition   #x0075 #x0304)
     (->uppercase       #x016A)
     (->titlecase       #x016A)
-    (latin-iso8859-4   #x7E)   ; \e-Dþ\e-A
+    (latin-iso8859-4   #xFE)   ; \e-Dþ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER U WITH MACRON")
     (->ucs             . #x016B)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x016B)
     (mirrored          . nil)
+    (->decomposition   wide #x016B)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER U WITH MACRON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH MACRON")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER U WITH MACRON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH MACRON")))
     (chinese-gb2312    #x28 #x31)      ; \e$(D+i\e(B
     (japanese-jisx0212 #x2B #x69)      ; \e$(D+i\e(B
     ))
     (ucs               . #x016C)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0055 #x0306)
     (mirrored          . nil)
+    (->decomposition   #x0055 #x0306)
     (->lowercase       #x016D)
-    (latin-iso8859-3   #x5D)   ; \e-CÝ\e-A
+    (latin-iso8859-3   #xDD)   ; \e-CÝ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER U WITH BREVE")
     (->ucs             . #x016C)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x016C)
     (mirrored          . nil)
+    (->decomposition   wide #x016C)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER U WITH BREVE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER U WITH BREVE")))
     (japanese-jisx0212 #x2A #x66)      ; \e$(D*f\e(B
     ))
 (define-char
     (ucs               . #x016D)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0075 #x0306)
     (mirrored          . nil)
+    (->decomposition   #x0075 #x0306)
     (->uppercase       #x016C)
     (->titlecase       #x016C)
-    (latin-iso8859-3   #x7D)   ; \e-Cý\e-A
+    (latin-iso8859-3   #xFD)   ; \e-Cý\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER U WITH BREVE")
     (->ucs             . #x016D)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x016D)
     (mirrored          . nil)
+    (->decomposition   wide #x016D)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER U WITH BREVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH BREVE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER U WITH BREVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH BREVE")))
     (japanese-jisx0212 #x2B #x66)      ; \e$(D+f\e(B
     ))
 (define-char
     (ucs               . #x016E)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0055 #x030A)
     (mirrored          . nil)
+    (->decomposition   #x0055 #x030A)
     (->lowercase       #x016F)
-    (latin-iso8859-2   #x59)   ; \e-BÙ\e-A
+    (latin-iso8859-2   #xD9)   ; \e-BÙ\e-A
     ))
 (define-char
-  '((name              . "FULLWIDTH LATIN CAPITAL LETTER U WITH RING ABOVE")
+  '((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH RING ABOVE")
     (->ucs             . #x016E)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x016E)
     (mirrored          . nil)
+    (->decomposition   wide #x016E)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER U WITH RING ABOVE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER U WITH RING ABOVE")))
     (japanese-jisx0212 #x2A #x6B)      ; \e$(D*k\e(B
     ))
 (define-char
     (ucs               . #x016F)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0075 #x030A)
     (mirrored          . nil)
+    (->decomposition   #x0075 #x030A)
     (->uppercase       #x016E)
     (->titlecase       #x016E)
-    (latin-iso8859-2   #x79)   ; \e-Bù\e-A
+    (latin-iso8859-2   #xF9)   ; \e-Bù\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER U WITH RING ABOVE")
     (->ucs             . #x016F)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x016F)
     (mirrored          . nil)
+    (->decomposition   wide #x016F)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER U WITH RING ABOVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH RING ABOVE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER U WITH RING ABOVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH RING ABOVE")))
     (japanese-jisx0212 #x2B #x6B)      ; \e$(D+k\e(B
     ))
 (define-char
     (ucs               . #x0170)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0055 #x030B)
     (mirrored          . nil)
+    (->decomposition   #x0055 #x030B)
     (->lowercase       #x0171)
-    (latin-iso8859-2   #x5B)   ; \e-BÛ\e-A
+    (latin-iso8859-2   #xDB)   ; \e-BÛ\e-A
     ))
 (define-char
-  '((name              . "FULLWIDTH LATIN CAPITAL LETTER U WITH DOUBLE ACUTE")
+  '((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH DOUBLE ACUTE")
     (->ucs             . #x0170)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0170)
     (mirrored          . nil)
+    (->decomposition   wide #x0170)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER U WITH DOUBLE ACUTE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER U WITH DOUBLE ACUTE")))
     (japanese-jisx0212 #x2A #x68)      ; \e$(D*h\e(B
     ))
 (define-char
     (ucs               . #x0171)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0075 #x030B)
     (mirrored          . nil)
+    (->decomposition   #x0075 #x030B)
     (->uppercase       #x0170)
     (->titlecase       #x0170)
-    (latin-iso8859-2   #x7B)   ; \e-Bû\e-A
+    (latin-iso8859-2   #xFB)   ; \e-Bû\e-A
     ))
 (define-char
-  '((name              . "FULLWIDTH LATIN SMALL LETTER U WITH DOUBLE ACUTE")
+  '((name . "FULLWIDTH LATIN SMALL LETTER U WITH DOUBLE ACUTE")
     (->ucs             . #x0171)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0171)
     (mirrored          . nil)
+    (->decomposition   wide #x0171)
     (->uppercase
-     ((name    . "FULLWIDTH LATIN CAPITAL LETTER U WITH DOUBLE ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH DOUBLE ACUTE")))
     (->titlecase
-     ((name    . "FULLWIDTH LATIN CAPITAL LETTER U WITH DOUBLE ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH DOUBLE ACUTE")))
     (japanese-jisx0212 #x2B #x68)      ; \e$(D+h\e(B
     ))
 (define-char
     (ucs               . #x0172)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0055 #x0328)
     (mirrored          . nil)
+    (->decomposition   #x0055 #x0328)
     (->lowercase       #x0173)
-    (latin-iso8859-4   #x59)   ; \e-DÙ\e-A
+    (latin-iso8859-4   #xD9)   ; \e-DÙ\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER U WITH OGONEK")
     (->ucs             . #x0172)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0172)
     (mirrored          . nil)
+    (->decomposition   wide #x0172)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER U WITH OGONEK")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER U WITH OGONEK")))
     (japanese-jisx0212 #x2A #x6A)      ; \e$(D*j\e(B
     ))
 (define-char
     (ucs               . #x0173)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0075 #x0328)
     (mirrored          . nil)
+    (->decomposition   #x0075 #x0328)
     (->uppercase       #x0172)
     (->titlecase       #x0172)
-    (latin-iso8859-4   #x79)   ; \e-Dù\e-A
+    (latin-iso8859-4   #xF9)   ; \e-Dù\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER U WITH OGONEK")
     (->ucs             . #x0173)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0173)
     (mirrored          . nil)
+    (->decomposition   wide #x0173)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER U WITH OGONEK")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH OGONEK")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER U WITH OGONEK")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH OGONEK")))
     (japanese-jisx0212 #x2B #x6A)      ; \e$(D+j\e(B
     ))
 (define-char
     (ucs               . #x0174)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0057 #x0302)
     (mirrored          . nil)
+    (->decomposition   #x0057 #x0302)
     (->lowercase       #x0175)
     ))
 (define-char
-  '((name              . "FULLWIDTH LATIN CAPITAL LETTER W WITH CIRCUMFLEX")
+  '((name . "FULLWIDTH LATIN CAPITAL LETTER W WITH CIRCUMFLEX")
     (->ucs             . #x0174)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0174)
     (mirrored          . nil)
+    (->decomposition   wide #x0174)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER W WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER W WITH CIRCUMFLEX")))
     (japanese-jisx0212 #x2A #x71)      ; \e$(D*q\e(B
     ))
 (define-char
     (ucs               . #x0175)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0077 #x0302)
     (mirrored          . nil)
+    (->decomposition   #x0077 #x0302)
     (->uppercase       #x0174)
     (->titlecase       #x0174)
     ))
     (->ucs             . #x0175)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0175)
     (mirrored          . nil)
+    (->decomposition   wide #x0175)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER W WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER W WITH CIRCUMFLEX")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER W WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER W WITH CIRCUMFLEX")))
     (japanese-jisx0212 #x2B #x71)      ; \e$(D+q\e(B
     ))
 (define-char
     (ucs               . #x0176)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0059 #x0302)
     (mirrored          . nil)
+    (->decomposition   #x0059 #x0302)
     (->lowercase       #x0177)
     ))
 (define-char
-  '((name              . "FULLWIDTH LATIN CAPITAL LETTER Y WITH CIRCUMFLEX")
+  '((name . "FULLWIDTH LATIN CAPITAL LETTER Y WITH CIRCUMFLEX")
     (->ucs             . #x0176)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0176)
     (mirrored          . nil)
+    (->decomposition   wide #x0176)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER Y WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER Y WITH CIRCUMFLEX")))
     (japanese-jisx0212 #x2A #x74)      ; \e$(D*t\e(B
     ))
 (define-char
     (ucs               . #x0177)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0079 #x0302)
     (mirrored          . nil)
+    (->decomposition   #x0079 #x0302)
     (->uppercase       #x0176)
     (->titlecase       #x0176)
     ))
     (->ucs             . #x0177)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0177)
     (mirrored          . nil)
+    (->decomposition   wide #x0177)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER Y WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER Y WITH CIRCUMFLEX")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER Y WITH CIRCUMFLEX")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER Y WITH CIRCUMFLEX")))
     (japanese-jisx0212 #x2B #x74)      ; \e$(D+t\e(B
     ))
 (define-char
     (ucs               . #x0178)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0059 #x0308)
     (mirrored          . nil)
+    (->decomposition   #x0059 #x0308)
     (->lowercase       #x00FF)
     ))
 (define-char
     (->ucs             . #x0178)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0178)
     (mirrored          . nil)
+    (->decomposition   wide #x0178)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER Y WITH DIAERESIS")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER Y WITH DIAERESIS")))
     (japanese-jisx0212 #x2A #x73)      ; \e$(D*s\e(B
     ))
 (define-char
     (ucs               . #x0179)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x005A #x0301)
     (mirrored          . nil)
+    (->decomposition   #x005A #x0301)
     (->lowercase       #x017A)
-    (latin-iso8859-2   #x2C)   ; \e-B¬\e-A
+    (latin-iso8859-2   #xAC)   ; \e-B¬\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER Z WITH ACUTE")
     (->ucs             . #x0179)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0179)
     (mirrored          . nil)
+    (->decomposition   wide #x0179)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER Z WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER Z WITH ACUTE")))
     (japanese-jisx0212 #x2A #x75)      ; \e$(D*u\e(B
     ))
 (define-char
     (ucs               . #x017A)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x007A #x0301)
     (mirrored          . nil)
+    (->decomposition   #x007A #x0301)
     (->uppercase       #x0179)
     (->titlecase       #x0179)
-    (latin-iso8859-2   #x3C)   ; \e-B¼\e-A
+    (latin-iso8859-2   #xBC)   ; \e-B¼\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER Z WITH ACUTE")
     (->ucs             . #x017A)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x017A)
     (mirrored          . nil)
+    (->decomposition   wide #x017A)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER Z WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER Z WITH ACUTE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER Z WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER Z WITH ACUTE")))
     (japanese-jisx0212 #x2B #x75)      ; \e$(D+u\e(B
     ))
 (define-char
     (ucs               . #x017B)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x005A #x0307)
     (mirrored          . nil)
+    (->decomposition   #x005A #x0307)
     (->lowercase       #x017C)
-    (latin-iso8859-2   #x2F)   ; \e-B¯\e-A
-    (latin-iso8859-3   #x2F)   ; \e-B¯\e-A
+    (latin-iso8859-2   #xAF)   ; \e-B¯\e-A
+    (latin-iso8859-3   #xAF)   ; \e-C¯\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER Z WITH DOT ABOVE")
     (->ucs             . #x017B)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x017B)
     (mirrored          . nil)
+    (->decomposition   wide #x017B)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER Z WITH DOT ABOVE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER Z WITH DOT ABOVE")))
     (japanese-jisx0212 #x2A #x77)      ; \e$(D*w\e(B
     ))
 (define-char
     (ucs               . #x017C)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x007A #x0307)
     (mirrored          . nil)
+    (->decomposition   #x007A #x0307)
     (->uppercase       #x017B)
     (->titlecase       #x017B)
-    (latin-iso8859-2   #x3F)   ; \e-B¿\e-A
-    (latin-iso8859-3   #x3F)   ; \e-B¿\e-A
+    (latin-iso8859-2   #xBF)   ; \e-B¿\e-A
+    (latin-iso8859-3   #xBF)   ; \e-C¿\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER Z WITH DOT ABOVE")
     (->ucs             . #x017C)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x017C)
     (mirrored          . nil)
+    (->decomposition   wide #x017C)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER Z WITH DOT ABOVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER Z WITH DOT ABOVE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER Z WITH DOT ABOVE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER Z WITH DOT ABOVE")))
     (japanese-jisx0212 #x2B #x77)      ; \e$(D+w\e(B
     ))
 (define-char
     (ucs               . #x017D)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x005A #x030C)
     (mirrored          . nil)
+    (->decomposition   #x005A #x030C)
     (->lowercase       #x017E)
-    (latin-iso8859-2   #x2E)   ; \e-B®\e-A
-    (latin-iso8859-4   #x2E)   ; \e-B®\e-A
+    (latin-iso8859-2   #xAE)   ; \e-B®\e-A
+    (latin-iso8859-4   #xAE)   ; \e-D®\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN CAPITAL LETTER Z WITH CARON")
     (->ucs             . #x017D)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x017D)
     (mirrored          . nil)
+    (->decomposition   wide #x017D)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER Z WITH CARON")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER Z WITH CARON")))
     (japanese-jisx0212 #x2A #x76)      ; \e$(D*v\e(B
     ))
 (define-char
     (ucs               . #x017E)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x007A #x030C)
     (mirrored          . nil)
+    (->decomposition   #x007A #x030C)
     (->uppercase       #x017D)
     (->titlecase       #x017D)
-    (latin-iso8859-2   #x3E)   ; \e-B¾\e-A
-    (latin-iso8859-4   #x3E)   ; \e-B¾\e-A
+    (latin-iso8859-2   #xBE)   ; \e-B¾\e-A
+    (latin-iso8859-4   #xBE)   ; \e-D¾\e-A
     ))
 (define-char
   '((name              . "FULLWIDTH LATIN SMALL LETTER Z WITH CARON")
     (->ucs             . #x017E)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x017E)
     (mirrored          . nil)
+    (->decomposition   wide #x017E)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER Z WITH CARON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER Z WITH CARON")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER Z WITH CARON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER Z WITH CARON")))
     (japanese-jisx0212 #x2B #x76)      ; \e$(D+v\e(B
     ))
 (define-char
     (ucs               . #x017F)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x0073)
     (mirrored          . nil)
+    (->decomposition   compat #x0073)
     (->uppercase       #x0053)
     (->titlecase       #x0053)
     ))
index 3c0549e..555470f 100644 (file)
     (ucs               . #x01A0)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004F #x031B)
     (mirrored          . nil)
+    (->decomposition   #x004F #x031B)
     (->lowercase       #x01A1)
-    (latin-viscii-upper        #x3D)   ; \e-2\ e=\ f
+    (latin-viscii-upper #xBD)  ; \e-2½\e-A
+    (latin-viscii      #xB4)   ; \e-2½\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER O WITH HORN")
     (ucs               . #x01A1)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006F #x031B)
     (mirrored          . nil)
+    (->decomposition   #x006F #x031B)
     (->uppercase       #x01A0)
     (->titlecase       #x01A0)
-    (latin-viscii-lower        #x3D)   ; \e-1\ e=\ f
+    (latin-viscii-lower #xBD)  ; \e-1½\e-A
+    (latin-viscii      #xBD)   ; \e-1½\e-A
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER OI")
     (ucs               . #x01AF)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0055 #x031B)
     (mirrored          . nil)
+    (->decomposition   #x0055 #x031B)
     (->lowercase       #x01B0)
-    (latin-viscii-upper        #x5F)   ; \e-2\ e_\ f
+    (latin-viscii-upper #xDF)  ; \e-2ß\e-A
+    (latin-viscii      #xBF)   ; \e-2ß\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER U WITH HORN")
     (ucs               . #x01B0)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0075 #x031B)
     (mirrored          . nil)
+    (->decomposition   #x0075 #x031B)
     (->uppercase       #x01AF)
     (->titlecase       #x01AF)
-    (latin-viscii-lower        #x5F)   ; \e-1\ e_\ f
+    (latin-viscii-lower #xDF)  ; \e-1ß\e-A
+    (latin-viscii      #xDF)   ; \e-1ß\e-A
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER UPSILON")
     (ucs               . #x01C4)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x0044 #x017D)
     (mirrored          . nil)
+    (->decomposition   compat #x0044 #x017D)
     (->lowercase       #x01C6)
     (->titlecase       #x01C5)
     ))
 (define-char
   '((name . "LATIN CAPITAL LETTER D WITH SMALL LETTER Z WITH CARON")
-    (ucs  . #x01C5)
+    (ucs               . #x01C5)
     (general-category  letter titlecase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x0044 #x017E)
     (mirrored          . nil)
+    (->decomposition   compat #x0044 #x017E)
     (->uppercase       #x01C4)
     (->lowercase       #x01C6)
     ))
     (ucs               . #x01C6)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x0064 #x017E)
     (mirrored          . nil)
+    (->decomposition   compat #x0064 #x017E)
     (->uppercase       #x01C4)
     (->titlecase       #x01C5)
     ))
     (ucs               . #x01C7)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x004C #x004A)
     (mirrored          . nil)
+    (->decomposition   compat #x004C #x004A)
     (->lowercase       #x01C9)
     (->titlecase       #x01C8)
     ))
     (ucs               . #x01C8)
     (general-category  letter titlecase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x004C #x006A)
     (mirrored          . nil)
+    (->decomposition   compat #x004C #x006A)
     (->uppercase       #x01C7)
     (->lowercase       #x01C9)
     ))
     (ucs               . #x01C9)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x006C #x006A)
     (mirrored          . nil)
+    (->decomposition   compat #x006C #x006A)
     (->uppercase       #x01C7)
     (->titlecase       #x01C8)
     ))
     (ucs               . #x01CA)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x004E #x004A)
     (mirrored          . nil)
+    (->decomposition   compat #x004E #x004A)
     (->lowercase       #x01CC)
     (->titlecase       #x01CB)
     ))
     (ucs               . #x01CB)
     (general-category  letter titlecase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x004E #x006A)
     (mirrored          . nil)
+    (->decomposition   compat #x004E #x006A)
     (->uppercase       #x01CA)
     (->lowercase       #x01CC)
     ))
     (ucs               . #x01CC)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x006E #x006A)
     (mirrored          . nil)
+    (->decomposition   compat #x006E #x006A)
     (->uppercase       #x01CA)
     (->titlecase       #x01CB)
     ))
     (ucs               . #x01CD)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0041 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x0041 #x030C)
     (->lowercase       #x01CE)
     ))
 (define-char
     (->ucs             . #x01CD)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x01CD)
     (mirrored          . nil)
+    (->decomposition   wide #x01CD)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER A WITH CARON")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER A WITH CARON")))
     (japanese-jisx0212 #x2A #x26)      ; \e$(D*&\e(B
     ))
 (define-char
     (ucs               . #x01CE)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0061 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x0061 #x030C)
     (->uppercase       #x01CD)
     (->titlecase       #x01CD)
     ))
     (->ucs             . #x01CE)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x01CE)
     (mirrored          . nil)
+    (->decomposition   wide #x01CE)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER A WITH CARON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER A WITH CARON")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER A WITH CARON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER A WITH CARON")))
     (chinese-gb2312    #x28 #x23)      ; \e$(D+&\e(B
     (japanese-jisx0212 #x2B #x26)      ; \e$(D+&\e(B
     ))
     (ucs               . #x01CF)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0049 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x0049 #x030C)
     (->lowercase       #x01D0)
     ))
 (define-char
     (->ucs             . #x01CF)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x01CF)
     (mirrored          . nil)
+    (->decomposition   wide #x01CF)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER I WITH CARON")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER I WITH CARON")))
     (japanese-jisx0212 #x2A #x43)      ; \e$(D*C\e(B
     ))
 (define-char
     (ucs               . #x01D0)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0069 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x0069 #x030C)
     (->uppercase       #x01CF)
     (->titlecase       #x01CF)
     ))
     (->ucs             . #x01D0)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x01D0)
     (mirrored          . nil)
+    (->decomposition   wide #x01D0)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER I WITH CARON")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER I WITH CARON")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER I WITH CARON")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER I WITH CARON")))
     (chinese-gb2312    #x28 #x2B)      ; \e$(D+C\e(B
     (japanese-jisx0212 #x2B #x43)      ; \e$(D+C\e(B
     ))
     (ucs               . #x01D1)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004F #x030C)
     (mirrored          . nil)
+    (->decomposition   #x004F #x030C)
     (->lowercase       #x01D2)
     ))
 (define-char
     (->ucs             . #x01D1)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x01D1)
     (mirrored          . nil)
+    (->decomposition   wide #x01D1)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER O WITH CARON")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER O WITH CARON")))
     (japanese-jisx0212 #x2A #x55)      ; \e$(D*U\e(B
     ))
 (define-char
     (ucs               . #x01D2)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006F #x030C)
     (mirrored          . nil)
+    (->decomposition   #x006F #x030C)
     (->uppercase       #x01D1)
     (->titlecase       #x01D1)
     ))
     (->ucs             . #x01D2)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x01D2)
     (mirrored          . nil)
+    (->decomposition   wide #x01D2)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER O WITH CARON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER O WITH CARON")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER O WITH CARON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER O WITH CARON")))
     (chinese-gb2312    #x28 #x2F)      ; \e$(D+U\e(B
     (japanese-jisx0212 #x2B #x55)      ; \e$(D+U\e(B
     ))
     (ucs               . #x01D3)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0055 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x0055 #x030C)
     (->lowercase       #x01D4)
     ))
 (define-char
     (->ucs             . #x01D3)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x01D3)
     (mirrored          . nil)
+    (->decomposition   wide #x01D3)
     (->lowercase
-     ((name            . "FULLWIDTH LATIN SMALL LETTER U WITH CARON")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER U WITH CARON")))
     (japanese-jisx0212 #x2A #x67)      ; \e$(D*g\e(B
     ))
 (define-char
     (ucs               . #x01D4)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0075 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x0075 #x030C)
     (->uppercase       #x01D3)
     (->titlecase       #x01D3)
     ))
     (->ucs             . #x01D4)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x01D4)
     (mirrored          . nil)
+    (->decomposition   wide #x01D4)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER U WITH CARON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH CARON")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER U WITH CARON")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH CARON")))
     (chinese-gb2312    #x28 #x33)      ; \e$(D+g\e(B
     (japanese-jisx0212 #x2B #x67)      ; \e$(D+g\e(B
     ))
 (define-char
   '((name . "LATIN CAPITAL LETTER U WITH DIAERESIS AND MACRON")
-    (ucs  . #x01D5)
+    (ucs               . #x01D5)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x00DC #x0304)
     (mirrored          . nil)
+    (->decomposition   #x00DC #x0304)
     (->lowercase       #x01D6)
     ))
 (define-char
   '((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH DIAERESIS AND MACRON")
-    (->ucs  . #x01D5)
+    (->ucs             . #x01D5)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x01D5)
     (mirrored          . nil)
+    (->decomposition   wide #x01D5)
     (->lowercase
      ((name . "FULLWIDTH LATIN SMALL LETTER U WITH DIAERESIS AND MACRON")))
     (japanese-jisx0212 #x2A #x70)      ; \e$(D*p\e(B
     (ucs               . #x01D6)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x00FC #x0304)
     (mirrored          . nil)
+    (->decomposition   #x00FC #x0304)
     (->uppercase       #x01D5)
     (->titlecase       #x01D5)
     ))
 (define-char
-  '((name      . "FULLWIDTH LATIN SMALL LETTER U WITH DIAERESIS AND MACRON")
+  '((name . "FULLWIDTH LATIN SMALL LETTER U WITH DIAERESIS AND MACRON")
     (->ucs             . #x01D6)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x01D6)
     (mirrored          . nil)
+    (->decomposition   wide #x01D6)
     (->uppercase
      ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH DIAERESIS AND MACRON")))
     (->titlecase
     (ucs               . #x01D7)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x00DC #x0301)
     (mirrored          . nil)
+    (->decomposition   #x00DC #x0301)
     (->lowercase       #x01D8)
     ))
 (define-char
-  '((name      . "FULLWIDTH LATIN CAPITAL LETTER U WITH DIAERESIS AND ACUTE")
+  '((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH DIAERESIS AND ACUTE")
     (->ucs             . #x01D7)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x01D7)
     (mirrored          . nil)
+    (->decomposition   wide #x01D7)
     (->lowercase
-     ((name    . "FULLWIDTH LATIN SMALL LETTER U WITH DIAERESIS AND ACUTE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER U WITH DIAERESIS AND ACUTE")))
     (japanese-jisx0212 #x2A #x6D)      ; \e$(D*m\e(B
     ))
 (define-char
     (ucs               . #x01D8)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x00FC #x0301)
     (mirrored          . nil)
+    (->decomposition   #x00FC #x0301)
     (->uppercase       #x01D7)
     (->titlecase       #x01D7)
     ))
 (define-char
-  '((name      . "FULLWIDTH LATIN SMALL LETTER U WITH DIAERESIS AND ACUTE")
+  '((name . "FULLWIDTH LATIN SMALL LETTER U WITH DIAERESIS AND ACUTE")
     (->ucs             . #x01D8)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x01D8)
     (mirrored          . nil)
+    (->decomposition   wide #x01D8)
     (->uppercase
      ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH DIAERESIS AND ACUTE")))
     (->titlecase
     (ucs               . #x01D9)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x00DC #x030C)
     (mirrored          . nil)
+    (->decomposition   #x00DC #x030C)
     (->lowercase       #x01DA)
     ))
 (define-char
-  '((name      . "FULLWIDTH LATIN CAPITAL LETTER U WITH DIAERESIS AND CARON")
+  '((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH DIAERESIS AND CARON")
     (->ucs             . #x01D9)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x01D9)
     (mirrored          . nil)
+    (->decomposition   wide #x01D9)
     (->lowercase
-     ((name    . "FULLWIDTH LATIN SMALL LETTER U WITH DIAERESIS AND CARON")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER U WITH DIAERESIS AND CARON")))
     (japanese-jisx0212 #x2A #x6F)      ; \e$(D*o\e(B
     ))
 (define-char
     (ucs               . #x01DA)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x00FC #x030C)
     (mirrored          . nil)
+    (->decomposition   #x00FC #x030C)
     (->uppercase       #x01D9)
     (->titlecase       #x01D9)
     ))
 (define-char
-  '((name      . "FULLWIDTH LATIN SMALL LETTER U WITH DIAERESIS AND CARON")
-    (->ucs     . #x01DA)
+  '((name . "FULLWIDTH LATIN SMALL LETTER U WITH DIAERESIS AND CARON")
+    (->ucs             . #x01DA)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x01DA)
     (mirrored          . nil)
+    (->decomposition   wide #x01DA)
     (->uppercase
      ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH DIAERESIS AND CARON")))
     (->titlecase
     (ucs               . #x01DB)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x00DC #x0300)
     (mirrored          . nil)
+    (->decomposition   #x00DC #x0300)
     (->lowercase       #x01DC)
     ))
 (define-char
-  '((name      . "FULLWIDTH LATIN CAPITAL LETTER U WITH DIAERESIS AND GRAVE")
-    (ucs       . #x01DB)
+  '((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH DIAERESIS AND GRAVE")
+    (->ucs             . #x01DB)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x01DB)
     (mirrored          . nil)
+    (->decomposition   wide #x01DB)
     (->lowercase
-     ((name    . "FULLWIDTH LATIN SMALL LETTER U WITH DIAERESIS AND GRAVE")))
+     ((name . "FULLWIDTH LATIN SMALL LETTER U WITH DIAERESIS AND GRAVE")))
     (japanese-jisx0212 #x2A #x6E)      ; \e$(D*n\e(B
     ))
 (define-char
     (ucs               . #x01DC)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x00FC #x0300)
     (mirrored          . nil)
+    (->decomposition   #x00FC #x0300)
     (->uppercase       #x01DB)
     (->titlecase       #x01DB)
     ))
 (define-char
-  '((name      . "FULLWIDTH LATIN SMALL LETTER U WITH DIAERESIS AND GRAVE")
-    (->ucs     . #x01DC)
+  '((name . "FULLWIDTH LATIN SMALL LETTER U WITH DIAERESIS AND GRAVE")
+    (->ucs             . #x01DC)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x01DC)
     (mirrored          . nil)
+    (->decomposition   wide #x01DC)
     (->uppercase
      ((name . "FULLWIDTH LATIN CAPITAL LETTER U WITH DIAERESIS AND GRAVE")))
     (->titlecase
     ))
 (define-char
   '((name . "LATIN CAPITAL LETTER A WITH DIAERESIS AND MACRON")
-    (ucs  . #x01DE)
+    (ucs               . #x01DE)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x00C4 #x0304)
     (mirrored          . nil)
+    (->decomposition   #x00C4 #x0304)
     (->lowercase       #x01DF)
     ))
 (define-char
     (ucs               . #x01DF)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x00E4 #x0304)
     (mirrored          . nil)
+    (->decomposition   #x00E4 #x0304)
     (->uppercase       #x01DE)
     (->titlecase       #x01DE)
     ))
 (define-char
   '((name . "LATIN CAPITAL LETTER A WITH DOT ABOVE AND MACRON")
-    (ucs  . #x01E0)
+    (ucs               . #x01E0)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0226 #x0304)
     (mirrored          . nil)
+    (->decomposition   #x0226 #x0304)
     (->lowercase       #x01E1)
     ))
 (define-char
     (ucs               . #x01E1)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0227 #x0304)
     (mirrored          . nil)
+    (->decomposition   #x0227 #x0304)
     (->uppercase       #x01E0)
     (->titlecase       #x01E0)
     ))
     (ucs               . #x01E2)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x00C6 #x0304)
     (mirrored          . nil)
     (iso-10646-comment . "ash *")
+    (->decomposition   #x00C6 #x0304)
     (->lowercase       #x01E3)
     ))
 (define-char
     (ucs               . #x01E3)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x00E6 #x0304)
     (mirrored          . nil)
     (iso-10646-comment . "ash *")
+    (->decomposition   #x00E6 #x0304)
     (->uppercase       #x01E2)
     (->titlecase       #x01E2)
     ))
     (ucs               . #x01E6)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0047 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x0047 #x030C)
     (->lowercase       #x01E7)
     ))
 (define-char
     (ucs               . #x01E7)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0067 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x0067 #x030C)
     (->uppercase       #x01E6)
     (->titlecase       #x01E6)
     ))
     (ucs               . #x01E8)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004B #x030C)
     (mirrored          . nil)
+    (->decomposition   #x004B #x030C)
     (->lowercase       #x01E9)
     ))
 (define-char
     (ucs               . #x01E9)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006B #x030C)
     (mirrored          . nil)
+    (->decomposition   #x006B #x030C)
     (->uppercase       #x01E8)
     (->titlecase       #x01E8)
     ))
     (ucs               . #x01EA)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004F #x0328)
     (mirrored          . nil)
+    (->decomposition   #x004F #x0328)
     (->lowercase       #x01EB)
     ))
 (define-char
     (ucs               . #x01EB)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006F #x0328)
     (mirrored          . nil)
+    (->decomposition   #x006F #x0328)
     (->uppercase       #x01EA)
     (->titlecase       #x01EA)
     ))
     (ucs               . #x01EC)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x01EA #x0304)
     (mirrored          . nil)
+    (->decomposition   #x01EA #x0304)
     (->lowercase       #x01ED)
     ))
 (define-char
     (ucs               . #x01ED)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x01EB #x0304)
     (mirrored          . nil)
+    (->decomposition   #x01EB #x0304)
     (->uppercase       #x01EC)
     (->titlecase       #x01EC)
     ))
     (ucs               . #x01EE)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x01B7 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x01B7 #x030C)
     (->lowercase       #x01EF)
     ))
 (define-char
     (ucs               . #x01EF)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0292 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x0292 #x030C)
     (->uppercase       #x01EE)
     (->titlecase       #x01EE)
     ))
     (ucs               . #x01F0)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006A #x030C)
     (mirrored          . nil)
+    (->decomposition   #x006A #x030C)
     ))
 (define-char
   '((name              . "LATIN CAPITAL LETTER DZ")
     (ucs               . #x01F1)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x0044 #x005A)
     (mirrored          . nil)
+    (->decomposition   compat #x0044 #x005A)
     (->lowercase       #x01F3)
     (->titlecase       #x01F2)
     ))
     (ucs               . #x01F2)
     (general-category  letter titlecase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x0044 #x007A)
     (mirrored          . nil)
+    (->decomposition   compat #x0044 #x007A)
     (->uppercase       #x01F1)
     (->lowercase       #x01F3)
     ))
     (ucs               . #x01F3)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x0064 #x007A)
     (mirrored          . nil)
+    (->decomposition   compat #x0064 #x007A)
     (->uppercase       #x01F1)
     (->titlecase       #x01F2)
     ))
     (ucs               . #x01F4)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0047 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x0047 #x0301)
     (->lowercase       #x01F5)
     ))
 (define-char
     (ucs               . #x01F5)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0067 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x0067 #x0301)
     (->uppercase       #x01F4)
     (->titlecase       #x01F4)
     ))
     (->ucs             . #x01F5)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x01F5)
     (mirrored          . nil)
+    (->decomposition   wide #x01F5)
     (->uppercase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER G WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER G WITH ACUTE")))
     (->titlecase
-     ((name            . "FULLWIDTH LATIN CAPITAL LETTER G WITH ACUTE")))
+     ((name . "FULLWIDTH LATIN CAPITAL LETTER G WITH ACUTE")))
     (japanese-jisx0212 #x2B #x39)      ; \e$(D+9\e(B
     ))
 (define-char
     (ucs               . #x01F8)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004E #x0300)
     (mirrored          . nil)
+    (->decomposition   #x004E #x0300)
     (->lowercase       #x01F9)
     ))
 (define-char
     (ucs               . #x01F9)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006E #x0300)
     (mirrored          . nil)
+    (->decomposition   #x006E #x0300)
     (->uppercase       #x01F8)
     (->titlecase       #x01F8)
     ))
 (define-char
   '((name . "LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE")
-    (ucs  . #x01FA)
+    (ucs               . #x01FA)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x00C5 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x00C5 #x0301)
     (->lowercase       #x01FB)
     ))
 (define-char
     (ucs               . #x01FB)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x00E5 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x00E5 #x0301)
     (->uppercase       #x01FA)
     (->titlecase       #x01FA)
     ))
     (ucs               . #x01FC)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x00C6 #x0301)
     (mirrored          . nil)
     (iso-10646-comment . "ash *")
+    (->decomposition   #x00C6 #x0301)
     (->lowercase       #x01FD)
     ))
 (define-char
     (ucs               . #x01FD)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x00E6 #x0301)
     (mirrored          . nil)
     (iso-10646-comment . "ash *")
+    (->decomposition   #x00E6 #x0301)
     (->uppercase       #x01FC)
     (->titlecase       #x01FC)
     ))
     (ucs               . #x01FE)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x00D8 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x00D8 #x0301)
     (->lowercase       #x01FF)
     ))
 (define-char
     (ucs               . #x01FF)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x00F8 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x00F8 #x0301)
     (->uppercase       #x01FE)
     (->titlecase       #x01FE)
     ))
     (ucs               . #x0200)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0041 #x030F)
     (mirrored          . nil)
+    (->decomposition   #x0041 #x030F)
     (->lowercase       #x0201)
     ))
 (define-char
     (ucs               . #x0201)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0061 #x030F)
     (mirrored          . nil)
+    (->decomposition   #x0061 #x030F)
     (->uppercase       #x0200)
     (->titlecase       #x0200)
     ))
     (ucs               . #x0202)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0041 #x0311)
     (mirrored          . nil)
+    (->decomposition   #x0041 #x0311)
     (->lowercase       #x0203)
     ))
 (define-char
     (ucs               . #x0203)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0061 #x0311)
     (mirrored          . nil)
+    (->decomposition   #x0061 #x0311)
     (->uppercase       #x0202)
     (->titlecase       #x0202)
     ))
     (ucs               . #x0204)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0045 #x030F)
     (mirrored          . nil)
+    (->decomposition   #x0045 #x030F)
     (->lowercase       #x0205)
     ))
 (define-char
     (ucs               . #x0205)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0065 #x030F)
     (mirrored          . nil)
+    (->decomposition   #x0065 #x030F)
     (->uppercase       #x0204)
     (->titlecase       #x0204)
     ))
     (ucs               . #x0206)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0045 #x0311)
     (mirrored          . nil)
+    (->decomposition   #x0045 #x0311)
     (->lowercase       #x0207)
     ))
 (define-char
     (ucs               . #x0207)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0065 #x0311)
     (mirrored          . nil)
+    (->decomposition   #x0065 #x0311)
     (->uppercase       #x0206)
     (->titlecase       #x0206)
     ))
     (ucs               . #x0208)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0049 #x030F)
     (mirrored          . nil)
+    (->decomposition   #x0049 #x030F)
     (->lowercase       #x0209)
     ))
 (define-char
     (ucs               . #x0209)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0069 #x030F)
     (mirrored          . nil)
+    (->decomposition   #x0069 #x030F)
     (->uppercase       #x0208)
     (->titlecase       #x0208)
     ))
     (ucs               . #x020A)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0049 #x0311)
     (mirrored          . nil)
+    (->decomposition   #x0049 #x0311)
     (->lowercase       #x020B)
     ))
 (define-char
     (ucs               . #x020B)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0069 #x0311)
     (mirrored          . nil)
+    (->decomposition   #x0069 #x0311)
     (->uppercase       #x020A)
     (->titlecase       #x020A)
     ))
     (ucs               . #x020C)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004F #x030F)
     (mirrored          . nil)
+    (->decomposition   #x004F #x030F)
     (->lowercase       #x020D)
     ))
 (define-char
     (ucs               . #x020D)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006F #x030F)
     (mirrored          . nil)
+    (->decomposition   #x006F #x030F)
     (->uppercase       #x020C)
     (->titlecase       #x020C)
     ))
     (ucs               . #x020E)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004F #x0311)
     (mirrored          . nil)
+    (->decomposition   #x004F #x0311)
     (->lowercase       #x020F)
     ))
 (define-char
     (ucs               . #x020F)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006F #x0311)
     (mirrored          . nil)
+    (->decomposition   #x006F #x0311)
     (->uppercase       #x020E)
     (->titlecase       #x020E)
     ))
     (ucs               . #x0210)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0052 #x030F)
     (mirrored          . nil)
+    (->decomposition   #x0052 #x030F)
     (->lowercase       #x0211)
     ))
 (define-char
     (ucs               . #x0211)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0072 #x030F)
     (mirrored          . nil)
+    (->decomposition   #x0072 #x030F)
     (->uppercase       #x0210)
     (->titlecase       #x0210)
     ))
     (ucs               . #x0212)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0052 #x0311)
     (mirrored          . nil)
+    (->decomposition   #x0052 #x0311)
     (->lowercase       #x0213)
     ))
 (define-char
     (ucs               . #x0213)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0072 #x0311)
     (mirrored          . nil)
+    (->decomposition   #x0072 #x0311)
     (->uppercase       #x0212)
     (->titlecase       #x0212)
     ))
     (ucs               . #x0214)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0055 #x030F)
     (mirrored          . nil)
+    (->decomposition   #x0055 #x030F)
     (->lowercase       #x0215)
     ))
 (define-char
     (ucs               . #x0215)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0075 #x030F)
     (mirrored          . nil)
+    (->decomposition   #x0075 #x030F)
     (->uppercase       #x0214)
     (->titlecase       #x0214)
     ))
     (ucs               . #x0216)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0055 #x0311)
     (mirrored          . nil)
+    (->decomposition   #x0055 #x0311)
     (->lowercase       #x0217)
     ))
 (define-char
     (ucs               . #x0217)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0075 #x0311)
     (mirrored          . nil)
+    (->decomposition   #x0075 #x0311)
     (->uppercase       #x0216)
     (->titlecase       #x0216)
     ))
     (ucs               . #x0218)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0053 #x0326)
     (mirrored          . nil)
     (iso-10646-comment . "*")
+    (->decomposition   #x0053 #x0326)
     (->lowercase       #x0219)
     ))
 (define-char
     (ucs               . #x0219)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0073 #x0326)
     (mirrored          . nil)
     (iso-10646-comment . "*")
+    (->decomposition   #x0073 #x0326)
     (->uppercase       #x0218)
     (->titlecase       #x0218)
     ))
     (ucs               . #x021A)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0054 #x0326)
     (mirrored          . nil)
     (iso-10646-comment . "*")
+    (->decomposition   #x0054 #x0326)
     (->lowercase       #x021B)
     ))
 (define-char
     (ucs               . #x021B)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0074 #x0326)
     (mirrored          . nil)
     (iso-10646-comment . "*")
+    (->decomposition   #x0074 #x0326)
     (->uppercase       #x021A)
     (->titlecase       #x021A)
     ))
     (ucs               . #x021E)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0048 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x0048 #x030C)
     (->lowercase       #x021F)
     ))
 (define-char
     (ucs               . #x021F)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0068 #x030C)
     (mirrored          . nil)
+    (->decomposition   #x0068 #x030C)
     (->uppercase       #x021E)
     (->titlecase       #x021E)
     ))
     (ucs               . #x0226)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0041 #x0307)
     (mirrored          . nil)
+    (->decomposition   #x0041 #x0307)
     (->lowercase       #x0227)
     ))
 (define-char
     (ucs               . #x0227)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0061 #x0307)
     (mirrored          . nil)
+    (->decomposition   #x0061 #x0307)
     (->uppercase       #x0226)
     (->titlecase       #x0226)
     ))
     (ucs               . #x0228)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0045 #x0327)
     (mirrored          . nil)
+    (->decomposition   #x0045 #x0327)
     (->lowercase       #x0229)
     ))
 (define-char
     (ucs               . #x0229)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0065 #x0327)
     (mirrored          . nil)
+    (->decomposition   #x0065 #x0327)
     (->uppercase       #x0228)
     (->titlecase       #x0228)
     ))
 (define-char
   '((name . "LATIN CAPITAL LETTER O WITH DIAERESIS AND MACRON")
-    (ucs  . #x022A)
+    (ucs               . #x022A)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x00D6 #x0304)
     (mirrored          . nil)
+    (->decomposition   #x00D6 #x0304)
     (->lowercase       #x022B)
     ))
 (define-char
     (ucs               . #x022B)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x00F6 #x0304)
     (mirrored          . nil)
+    (->decomposition   #x00F6 #x0304)
     (->uppercase       #x022A)
     (->titlecase       #x022A)
     ))
     (ucs               . #x022C)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x00D5 #x0304)
     (mirrored          . nil)
+    (->decomposition   #x00D5 #x0304)
     (->lowercase       #x022D)
     ))
 (define-char
     (ucs               . #x022D)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x00F5 #x0304)
     (mirrored          . nil)
+    (->decomposition   #x00F5 #x0304)
     (->uppercase       #x022C)
     (->titlecase       #x022C)
     ))
     (ucs               . #x022E)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x004F #x0307)
     (mirrored          . nil)
+    (->decomposition   #x004F #x0307)
     (->lowercase       #x022F)
     ))
 (define-char
     (ucs               . #x022F)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x006F #x0307)
     (mirrored          . nil)
+    (->decomposition   #x006F #x0307)
     (->uppercase       #x022E)
     (->titlecase       #x022E)
     ))
 (define-char
   '((name . "LATIN CAPITAL LETTER O WITH DOT ABOVE AND MACRON")
-    (ucs  . #x0230)
+    (ucs               . #x0230)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x022E #x0304)
     (mirrored          . nil)
+    (->decomposition   #x022E #x0304)
     (->lowercase       #x0231)
     ))
 (define-char
     (ucs               . #x0231)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x022F #x0304)
     (mirrored          . nil)
+    (->decomposition   #x022F #x0304)
     (->uppercase       #x0230)
     (->titlecase       #x0230)
     ))
     (ucs               . #x0232)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0059 #x0304)
     (mirrored          . nil)
+    (->decomposition   #x0059 #x0304)
     (->lowercase       #x0233)
     ))
 (define-char
     (ucs               . #x0233)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0079 #x0304)
     (mirrored          . nil)
+    (->decomposition   #x0079 #x0304)
     (->uppercase       #x0232)
     (->titlecase       #x0232)
     ))
index cb119cf..d21bd33 100644 (file)
@@ -12,7 +12,7 @@
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
     (mirrored          . nil)
-    (ipa       #x2C)   ; \e-0¬\e-A
+    (ipa               #x2C)   ; \e-0¬\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER TURNED ALPHA")
@@ -20,7 +20,7 @@
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
     (mirrored          . nil)
-    (ipa       #x38)   ; \e-0¸\e-A
+    (ipa               #x38)   ; \e-0¸\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER B WITH HOOK")
@@ -39,7 +39,7 @@
     (mirrored          . nil)
     (->uppercase       #x0186)
     (->titlecase       #x0186)
-    (ipa       #x37)   ; \e-0·\e-A
+    (ipa               #x37)   ; \e-0·\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER C WITH CURL")
@@ -81,7 +81,7 @@
     (mirrored          . nil)
     (->uppercase       #x018F)
     (->titlecase       #x018F)
-    (ipa       #x27)   ; \e-0§\e-A
+    (ipa               #x27)   ; \e-0§\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER SCHWA WITH HOOK")
@@ -89,7 +89,7 @@
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
     (mirrored          . nil)
-    (ipa       #x3A)   ; \e-0º\e-A
+    (ipa               #x3A)   ; \e-0º\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER OPEN E")
@@ -99,7 +99,7 @@
     (mirrored          . nil)
     (->uppercase       #x0190)
     (->titlecase       #x0190)
-    (ipa       #x23)   ; \e-0£\e-A
+    (ipa               #x23)   ; \e-0£\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER REVERSED OPEN E")
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
     (mirrored          . nil)
-    (ipa       #x2A)   ; \e-0ª\e-A
+    (ipa               #x2A)   ; \e-0ª\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER TURNED H")
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
     (mirrored          . nil)
-    (ipa       #x5D)   ; \e-0Ý\e-A
+    (ipa               #x5D)   ; \e-0Ý\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER H WITH HOOK")
     (mirrored          . nil)
     (->uppercase       #x0197)
     (->titlecase       #x0197)
-    (ipa       #x26)   ; \e-0¦\e-A
+    (ipa               #x26)   ; \e-0¦\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER IOTA")
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
     (mirrored          . nil)
-    (ipa       #x21)   ; \e-0¡\e-A
+    (ipa               #x21)   ; \e-0¡\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER L WITH MIDDLE TILDE")
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
     (mirrored          . nil)
-    (ipa       #x5F)   ; \e-0ß\e-A
+    (ipa               #x5F)   ; \e-0ß\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER N WITH LEFT HOOK")
     (mirrored          . nil)
     (->uppercase       #x019D)
     (->titlecase       #x019D)
-    (ipa       #x54)   ; \e-0Ô\e-A
+    (ipa               #x54)   ; \e-0Ô\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER N WITH RETROFLEX HOOK")
     (mirrored          . nil)
     (->uppercase       #x019F)
     (->titlecase       #x019F)
-    (ipa       #x33)   ; \e-0³\e-A
+    (ipa               #x33)   ; \e-0³\e-A
     ))
 (define-char
   '((name              . "LATIN LETTER SMALL CAPITAL OE")
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
     (mirrored          . nil)
-    (ipa       #x31)   ; \e-0±\e-A
+    (ipa               #x31)   ; \e-0±\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER CLOSED OMEGA")
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
     (mirrored          . nil)
-    (ipa       #x58)   ; \e-0Ø\e-A
+    (ipa               #x58)   ; \e-0Ø\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER TURNED R WITH LONG LEG")
     (mirrored          . nil)
     (->uppercase       #x01A6)
     (->titlecase       #x01A6)
-    (ipa       #x57)   ; \e-0×\e-A
+    (ipa               #x57)   ; \e-0×\e-A
     ))
 (define-char
   '((name              . "LATIN LETTER SMALL CAPITAL INVERTED R")
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
     (mirrored          . nil)
-    (ipa       #x50)   ; \e-0Ð\e-A
+    (ipa               #x50)   ; \e-0Ð\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER S WITH HOOK")
     (mirrored          . nil)
     (->uppercase       #x01A9)
     (->titlecase       #x01A9)
-    (ipa       #x4C)   ; \e-0Ì\e-A
+    (ipa               #x4C)   ; \e-0Ì\e-A
     ))
 (define-char
   '((name . "LATIN SMALL LETTER DOTLESS J WITH STROKE AND HOOK")
-    (ucs  . #x0284)
+    (ucs               . #x0284)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
     (mirrored          . nil)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
     (mirrored          . nil)
-    (ipa       #x32)   ; \e-0²\e-A
+    (ipa               #x32)   ; \e-0²\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER UPSILON")
     (mirrored          . nil)
     (->uppercase       #x01B1)
     (->titlecase       #x01B1)
-    (ipa       #x35)   ; \e-0µ\e-A
+    (ipa               #x35)   ; \e-0µ\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER V WITH HOOK")
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
     (mirrored          . nil)
-    (ipa               #x2B)
+    (ipa               #x2B)   ; \e-0«\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER TURNED W")
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
     (mirrored          . nil)
-    (ipa               #x5F)
+    (ipa               #x5F)   ; \e-0ß\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER TURNED Y")
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
     (mirrored          . nil)
-    (ipa       #x5B)   ; \e-0Û\e-A
+    (ipa               #x5B)   ; \e-0Û\e-A
     ))
 (define-char
   '((name              . "LATIN LETTER SMALL CAPITAL Y")
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
     (mirrored          . nil)
-    (ipa       #x2E)   ; \e-0®\e-A
+    (ipa               #x2E)   ; \e-0®\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER Z WITH RETROFLEX HOOK")
     (mirrored          . nil)
     (->uppercase       #x01B7)
     (->titlecase       #x01B7)
-    (ipa       #x4D)   ; \e-0Í\e-A
+    (ipa               #x4D)   ; \e-0Í\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER EZH WITH CURL")
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
     (mirrored          . nil)
-    (ipa       #x5C)   ; \e-0Ü\e-A
+    (ipa               #x5C)   ; \e-0Ü\e-A
     ))
 (define-char
   '((name              . "LATIN SMALL LETTER Q WITH HOOK")
index 54aea9b..e54032f 100644 (file)
@@ -3,72 +3,72 @@
     (ucs               . #x02B0)
     (general-category  letter modifier) ; Informative Category
     (bidi-category     . "L")
-    (->decomposition   super #x0068)
     (mirrored          . nil)
+    (->decomposition   super #x0068)
     ))
 (define-char
   '((name              . "MODIFIER LETTER SMALL H WITH HOOK")
     (ucs               . #x02B1)
     (general-category  letter modifier) ; Informative Category
     (bidi-category     . "L")
-    (->decomposition   super #x0266)
     (mirrored          . nil)
+    (->decomposition   super #x0266)
     ))
 (define-char
   '((name              . "MODIFIER LETTER SMALL J")
     (ucs               . #x02B2)
     (general-category  letter modifier) ; Informative Category
     (bidi-category     . "L")
-    (->decomposition   super #x006A)
     (mirrored          . nil)
+    (->decomposition   super #x006A)
     ))
 (define-char
   '((name              . "MODIFIER LETTER SMALL R")
     (ucs               . #x02B3)
     (general-category  letter modifier) ; Informative Category
     (bidi-category     . "L")
-    (->decomposition   super #x0072)
     (mirrored          . nil)
+    (->decomposition   super #x0072)
     ))
 (define-char
   '((name              . "MODIFIER LETTER SMALL TURNED R")
     (ucs               . #x02B4)
     (general-category  letter modifier) ; Informative Category
     (bidi-category     . "L")
-    (->decomposition   super #x0279)
     (mirrored          . nil)
+    (->decomposition   super #x0279)
     ))
 (define-char
   '((name              . "MODIFIER LETTER SMALL TURNED R WITH HOOK")
     (ucs               . #x02B5)
     (general-category  letter modifier) ; Informative Category
     (bidi-category     . "L")
-    (->decomposition   super #x027B)
     (mirrored          . nil)
+    (->decomposition   super #x027B)
     ))
 (define-char
   '((name              . "MODIFIER LETTER SMALL CAPITAL INVERTED R")
     (ucs               . #x02B6)
     (general-category  letter modifier) ; Informative Category
     (bidi-category     . "L")
-    (->decomposition   super #x0281)
     (mirrored          . nil)
+    (->decomposition   super #x0281)
     ))
 (define-char
   '((name              . "MODIFIER LETTER SMALL W")
     (ucs               . #x02B7)
     (general-category  letter modifier) ; Informative Category
     (bidi-category     . "L")
-    (->decomposition   super #x0077)
     (mirrored          . nil)
+    (->decomposition   super #x0077)
     ))
 (define-char
   '((name              . "MODIFIER LETTER SMALL Y")
     (ucs               . #x02B8)
     (general-category  letter modifier) ; Informative Category
     (bidi-category     . "L")
-    (->decomposition   super #x0079)
     (mirrored          . nil)
+    (->decomposition   super #x0079)
     ))
 (define-char
   '((name              . "MODIFIER LETTER PRIME")
     (->ucs             . #x02C7)
     (general-category  symbol modifier) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   wide #x02C7)
     (mirrored          . nil)
     (iso-10646-comment . "Mandarin Chinese third tone")
+    (->decomposition   wide #x02C7)
     (chinese-gb2312    #x21 #x26)      ; \e$(D"0\e(B
     (korean-ksc5601    #x22 #x27)      ; \e$(C"'\e(B
     (japanese-jisx0212 #x22 #x30)      ; \e$(D"0\e(B
-    (chinese-cns11643-1        #x25 #x6F)      ; \e$(G%o\e(B
+    (chinese-cns11643-1 #x25 #x6F)     ; \e$(G%o\e(B
     ))
 (define-char
   '((name              . "MODIFIER LETTER VERTICAL LINE")
     (bidi-category     . "ON")
     (mirrored          . nil)
     (iso-10646-comment . "Mandarin Chinese second tone")
-    (chinese-cns11643-1        #x25 #x6E)      ; \e$(G%n\e(B
+    (chinese-cns11643-1 #x25 #x6E)     ; \e$(G%n\e(B
     ))
 (define-char
   '((name              . "MODIFIER LETTER GRAVE ACCENT")
     (bidi-category     . "ON")
     (mirrored          . nil)
     (iso-10646-comment . "Mandarin Chinese fourth tone")
-    (chinese-cns11643-1        #x25 #x70)      ; \e$(G%p\e(B
+    (chinese-cns11643-1 #x25 #x70)     ; \e$(G%p\e(B
     ))
 (define-char
   '((name              . "MODIFIER LETTER LOW VERTICAL LINE")
     (->ucs             . #x02D0)
     (general-category  letter modifier) ; Informative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x02D0)
     (mirrored          . nil)
+    (->decomposition   wide #x02D0)
     (korean-ksc5601    #x22 #x30)      ; \e$(C"0\e(B
     ))
 (define-char
     (ucs               . #x02D8)
     (general-category  symbol modifier) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   compat #x0020 #x0306)
     (mirrored          . nil)
+    (->decomposition   compat #x0020 #x0306)
     (latin-iso8859-2   #x22)   ; \e-B¢\e-A
     (latin-iso8859-3   #x22)   ; \e-C¢\e-A
     ))
     (->ucs             . #x02D8)
     (general-category  symbol modifier) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   wide #x02D8)
     (mirrored          . nil)
+    (->decomposition   wide #x02D8)
     (korean-ksc5601    #x22 #x28)      ; \e$(D"/\e(B
     (japanese-jisx0212 #x22 #x2F)      ; \e$(D"/\e(B
     ))
     (ucs               . #x02D9)
     (general-category  symbol modifier) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   compat #x0020 #x0307)
     (mirrored          . nil)
     (iso-10646-comment . "Mandarin Chinese light tone")
+    (->decomposition   compat #x0020 #x0307)
     (latin-iso8859-2   #x7F)   ; \e-Bÿ\e-A
     (latin-iso8859-3   #x7F)   ; \e-Cÿ\e-A
     (latin-iso8859-4   #x7F)   ; \e-Dÿ\e-A
     (->ucs             . #x02D9)
     (general-category  symbol modifier) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   wide #x02D9)
     (mirrored          . nil)
     (iso-10646-comment . "Mandarin Chinese light tone")
+    (->decomposition   wide #x02D9)
     (korean-ksc5601    #x22 #x2B)      ; \e$(D"2\e(B
     (japanese-jisx0212 #x22 #x32)      ; \e$(D"2\e(B
-    (chinese-cns11643-1        #x25 #x6C)      ; \e$(G%l\e(B
+    (chinese-cns11643-1 #x25 #x6C)     ; \e$(G%l\e(B
     ))
 (define-char
   '((name              . "RING ABOVE")
     (ucs               . #x02DA)
     (general-category  symbol modifier) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   compat #x0020 #x030A)
     (mirrored          . nil)
+    (->decomposition   compat #x0020 #x030A)
     (korean-ksc5601    #x22 #x2A)      ; \e$(C"*\e(B
     (japanese-jisx0212 #x22 #x36)      ; \e$(D"6\e(B
     ))
     (ucs               . #x02DB)
     (general-category  symbol modifier) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   compat #x0020 #x0328)
     (mirrored          . nil)
+    (->decomposition   compat #x0020 #x0328)
     (latin-iso8859-2   #x32)   ; \e-B²\e-A
     (latin-iso8859-4   #x32)   ; \e-D²\e-A
     ))
     (ucs               . #x02DC)
     (general-category  symbol modifier) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   compat #x0020 #x0303)
     (mirrored          . nil)
+    (->decomposition   compat #x0020 #x0303)
     ))
 (define-char
   '((name              . "DOUBLE ACUTE ACCENT")
     (ucs               . #x02DD)
     (general-category  symbol modifier) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   compat #x0020 #x030B)
     (mirrored          . nil)
+    (->decomposition   compat #x0020 #x030B)
     (latin-iso8859-2   #x3D)   ; \e-B½\e-A
     ))
 (define-char
     (->ucs             . #x02DD)
     (general-category  symbol modifier) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   wide #x02DD)
     (mirrored          . nil)
+    (->decomposition   wide #x02DD)
     (korean-ksc5601    #x22 #x29)      ; \e$(D"3\e(B
     (japanese-jisx0212 #x22 #x33)      ; \e$(D"3\e(B
     ))
     (ucs               . #x02E0)
     (general-category  letter modifier) ; Informative Category
     (bidi-category     . "L")
-    (->decomposition   super #x0263)
     (mirrored          . nil)
+    (->decomposition   super #x0263)
     ))
 (define-char
   '((name              . "MODIFIER LETTER SMALL L")
     (ucs               . #x02E1)
     (general-category  letter modifier) ; Informative Category
     (bidi-category     . "L")
-    (->decomposition   super #x006C)
     (mirrored          . nil)
+    (->decomposition   super #x006C)
     ))
 (define-char
   '((name              . "MODIFIER LETTER SMALL S")
     (ucs               . #x02E2)
     (general-category  letter modifier) ; Informative Category
     (bidi-category     . "L")
-    (->decomposition   super #x0073)
     (mirrored          . nil)
+    (->decomposition   super #x0073)
     ))
 (define-char
   '((name              . "MODIFIER LETTER SMALL X")
     (ucs               . #x02E3)
     (general-category  letter modifier) ; Informative Category
     (bidi-category     . "L")
-    (->decomposition   super #x0078)
     (mirrored          . nil)
+    (->decomposition   super #x0078)
     ))
 (define-char
   '((name              . "MODIFIER LETTER SMALL REVERSED GLOTTAL STOP")
     (ucs               . #x02E4)
     (general-category  letter modifier) ; Informative Category
     (bidi-category     . "L")
-    (->decomposition   super #x0295)
     (mirrored          . nil)
+    (->decomposition   super #x0295)
     ))
 (define-char
   '((name              . "MODIFIER LETTER EXTRA-HIGH TONE BAR")
index 9a90387..c12e58c 100644 (file)
     (ucs               . #x0340)
     (general-category  mark non-spacing) ; Normative Category
     (bidi-category     . "NSM")
-    (->decomposition   #x0300)
     (mirrored          . nil)
     (iso-10646-comment . "Vietnamese")
+    (->decomposition   #x0300)
     ))
 (define-char
   '((name              . "COMBINING ACUTE TONE MARK")
     (ucs               . #x0341)
     (general-category  mark non-spacing) ; Normative Category
     (bidi-category     . "NSM")
-    (->decomposition   #x0301)
     (mirrored          . nil)
     (iso-10646-comment . "Vietnamese")
+    (->decomposition   #x0301)
     ))
 (define-char
   '((name              . "COMBINING GREEK PERISPOMENI")
     (ucs               . #x0343)
     (general-category  mark non-spacing) ; Normative Category
     (bidi-category     . "NSM")
-    (->decomposition   #x0313)
     (mirrored          . nil)
+    (->decomposition   #x0313)
     ))
 (define-char
   '((name              . "COMBINING GREEK DIALYTIKA TONOS")
     (ucs               . #x0344)
     (general-category  mark non-spacing) ; Normative Category
     (bidi-category     . "NSM")
-    (->decomposition   #x0308 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x0308 #x0301)
     ))
 (define-char
   '((name              . "COMBINING GREEK YPOGEGRAMMENI")
index 4a18a8f..b840dba 100644 (file)
@@ -3,9 +3,9 @@
     (ucs               . #x0374)
     (general-category  symbol modifier) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   #x02B9)
     (mirrored          . nil)
     (iso-10646-comment . "Dexia keraia")
+    (->decomposition   #x02B9)
     ))
 (define-char
   '((name              . "GREEK LOWER NUMERAL SIGN")
     (ucs               . #x037A)
     (general-category  letter modifier) ; Informative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x0020 #x0345)
     (mirrored          . nil)
+    (->decomposition   compat #x0020 #x0345)
     ))
 (define-char
   '((name              . "GREEK QUESTION MARK")
     (ucs               . #x037E)
     (general-category  punctuation other) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   #x003B)
     (mirrored          . nil)
     (iso-10646-comment . "Erotimatiko")
+    (->decomposition   #x003B)
     ))
 (define-char
   '((name              . "GREEK TONOS")
     (ucs               . #x0384)
     (general-category  symbol modifier) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   compat #x0020 #x0301)
     (mirrored          . nil)
+    (->decomposition   compat #x0020 #x0301)
     (greek-iso8859-7   #x34)   ; \e-F´\e-A
     ))
 (define-char
@@ -46,8 +46,8 @@
     (->ucs             . #x0384)
     (general-category  symbol modifier) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   wide #x0384)
     (mirrored          . nil)
+    (->decomposition   wide #x0384)
     (japanese-jisx0212 #x22 #x38)      ; \e$(D"8\e(B
     ))
 (define-char
@@ -55,8 +55,8 @@
     (ucs               . #x0385)
     (general-category  symbol modifier) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   #x00A8 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x00A8 #x0301)
     (greek-iso8859-7   #x35)   ; \e-Fµ\e-A
     ))
 (define-char
@@ -64,8 +64,8 @@
     (->ucs             . #x0385)
     (general-category  symbol modifier) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   wide #x0385)
     (mirrored          . nil)
+    (->decomposition   wide #x0385)
     (japanese-jisx0212 #x22 #x39)      ; \e$(D"9\e(B
     ))
 (define-char
@@ -73,8 +73,8 @@
     (ucs               . #x0386)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0391 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x0391 #x0301)
     (->lowercase       #x03AC)
     (greek-iso8859-7   #x36)   ; \e-F¶\e-A
     ))
     (->ucs             . #x0386)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0386)
     (mirrored          . nil)
+    (->decomposition   wide #x0386)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER ALPHA WITH TONOS")))
+     ((name . "FULLWIDTH GREEK SMALL LETTER ALPHA WITH TONOS")))
     (japanese-jisx0212 #x26 #x61)      ; \e$(D&a\e(B
     ))
 (define-char
     (ucs               . #x0387)
     (general-category  punctuation other) ; Informative Category
     (bidi-category     . "ON")
-    (->decomposition   #x00B7)
     (mirrored          . nil)
+    (->decomposition   #x00B7)
     ))
 (define-char
   '((name              . "GREEK CAPITAL LETTER EPSILON WITH TONOS")
     (ucs               . #x0388)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0395 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x0395 #x0301)
     (->lowercase       #x03AD)
     (greek-iso8859-7   #x38)   ; \e-F¸\e-A
     ))
 (define-char
-  '((name              . "FULLWIDTH GREEK CAPITAL LETTER EPSILON WITH TONOS")
+  '((name . "FULLWIDTH GREEK CAPITAL LETTER EPSILON WITH TONOS")
     (->ucs             . #x0388)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0388)
     (mirrored          . nil)
+    (->decomposition   wide #x0388)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER EPSILON WITH TONOS")))
+     ((name . "FULLWIDTH GREEK SMALL LETTER EPSILON WITH TONOS")))
     (japanese-jisx0212 #x26 #x62)      ; \e$(D&b\e(B
     ))
 (define-char
     (ucs               . #x0389)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0397 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x0397 #x0301)
     (->lowercase       #x03AE)
     (greek-iso8859-7   #x39)   ; \e-F¹\e-A
     ))
     (->ucs             . #x0389)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0389)
     (mirrored          . nil)
+    (->decomposition   wide #x0389)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER ETA WITH TONOS")))
+     ((name . "FULLWIDTH GREEK SMALL LETTER ETA WITH TONOS")))
     (japanese-jisx0212 #x26 #x63)      ; \e$(D&c\e(B
     ))
 (define-char
     (ucs               . #x038A)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0399 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x0399 #x0301)
     (->lowercase       #x03AF)
     (greek-iso8859-7   #x3A)   ; \e-Fº\e-A
     ))
     (->ucs             . #x038A)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x038A)
     (mirrored          . nil)
+    (->decomposition   wide #x038A)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER IOTA WITH TONOS")))
+     ((name . "FULLWIDTH GREEK SMALL LETTER IOTA WITH TONOS")))
     (japanese-jisx0212 #x26 #x64)      ; \e$(D&d\e(B
     ))
 (define-char
     (ucs               . #x038C)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x039F #x0301)
     (mirrored          . nil)
+    (->decomposition   #x039F #x0301)
     (->lowercase       #x03CC)
     (greek-iso8859-7   #x3C)   ; \e-F¼\e-A
     ))
 (define-char
-  '((name              . "FULLWIDTH GREEK CAPITAL LETTER OMICRON WITH TONOS")
+  '((name . "FULLWIDTH GREEK CAPITAL LETTER OMICRON WITH TONOS")
     (->ucs             . #x038C)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x038C)
     (mirrored          . nil)
+    (->decomposition   wide #x038C)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER OMICRON WITH TONOS")))
+     ((name . "FULLWIDTH GREEK SMALL LETTER OMICRON WITH TONOS")))
     (japanese-jisx0212 #x26 #x67)      ; \e$(D&g\e(B
     ))
 (define-char
     (ucs               . #x038E)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x03A5 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x03A5 #x0301)
     (->lowercase       #x03CD)
     (greek-iso8859-7   #x3E)   ; \e-F¾\e-A
     ))
 (define-char
-  '((name              . "FULLWIDTH GREEK CAPITAL LETTER UPSILON WITH TONOS")
+  '((name . "FULLWIDTH GREEK CAPITAL LETTER UPSILON WITH TONOS")
     (->ucs             . #x038E)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x038E)
     (mirrored          . nil)
+    (->decomposition   wide #x038E)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER UPSILON WITH TONOS")))
+     ((name . "FULLWIDTH GREEK SMALL LETTER UPSILON WITH TONOS")))
     (japanese-jisx0212 #x26 #x69)      ; \e$(D&i\e(B
     ))
 (define-char
     (ucs               . #x038F)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x03A9 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x03A9 #x0301)
     (->lowercase       #x03CE)
     (greek-iso8859-7   #x3F)   ; \e-F¿\e-A
     ))
     (->ucs             . #x038F)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x038F)
     (mirrored          . nil)
+    (->decomposition   wide #x038F)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER OMEGA WITH TONOS")))
+     ((name . "FULLWIDTH GREEK SMALL LETTER OMEGA WITH TONOS")))
     (japanese-jisx0212 #x26 #x6C)      ; \e$(D&l\e(B
     ))
 (define-char
   '((name . "GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS")
-    (ucs  . #x0390)
+    (ucs               . #x0390)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x03CA #x0301)
     (mirrored          . nil)
+    (->decomposition   #x03CA #x0301)
     (greek-iso8859-7   #x40)   ; \e-FÀ\e-A
     ))
 (define-char
   '((name . "FULLWIDTH GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS")
-    (->ucs  . #x0390)
+    (->ucs             . #x0390)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0390)
     (mirrored          . nil)
+    (->decomposition   wide #x0390)
     (japanese-jisx0212 #x26 #x76)      ; \e$(D&v\e(B
     ))
 (define-char
     (->ucs             . #x0391)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0391)
     (mirrored          . nil)
+    (->decomposition   wide #x0391)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER ALPHA")))
-    (japanese-jisx0208-1978    #x26 #x21)      ; \e$B&!\e(B
-    (chinese-gb2312            #x26 #x21)      ; \e$A&!\e(B
-    (japanese-jisx0208         #x26 #x21)      ; \e$B&!\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER ALPHA")))
+    (japanese-jisx0208-1978    #x26 #x21)      ; \e$(B&!\e(B
+    (chinese-gb2312            #x26 #x21)      ; \e$(A&!\e(B
+    (japanese-jisx0208         #x26 #x21)      ; \e$(B&!\e(B
     (korean-ksc5601            #x25 #x41)      ; \e$(C%A\e(B
     (chinese-cns11643-1                #x24 #x75)      ; \e$(G$u\e(B
     ))
     (->ucs             . #x0392)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0392)
     (mirrored          . nil)
+    (->decomposition   wide #x0392)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER BETA")))
-    (japanese-jisx0208-1978    #x26 #x22)      ; \e$B&"\e(B
-    (chinese-gb2312            #x26 #x22)      ; \e$A&"\e(B
-    (japanese-jisx0208         #x26 #x22)      ; \e$B&"\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER BETA")))
+    (japanese-jisx0208-1978    #x26 #x22)      ; \e$(B&"\e(B
+    (chinese-gb2312            #x26 #x22)      ; \e$(A&"\e(B
+    (japanese-jisx0208         #x26 #x22)      ; \e$(B&"\e(B
     (korean-ksc5601            #x25 #x42)      ; \e$(C%B\e(B
     (chinese-cns11643-1                #x24 #x76)      ; \e$(G$v\e(B
     ))
     (->ucs             . #x0393)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0393)
     (mirrored          . nil)
+    (->decomposition   wide #x0393)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER GAMMA")))
-    (japanese-jisx0208-1978    #x26 #x23)      ; \e$B&#\e(B
-    (chinese-gb2312            #x26 #x23)      ; \e$A&#\e(B
-    (japanese-jisx0208         #x26 #x23)      ; \e$B&#\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER GAMMA")))
+    (japanese-jisx0208-1978    #x26 #x23)      ; \e$(B&#\e(B
+    (chinese-gb2312            #x26 #x23)      ; \e$(A&#\e(B
+    (japanese-jisx0208         #x26 #x23)      ; \e$(B&#\e(B
     (korean-ksc5601            #x25 #x43)      ; \e$(C%C\e(B
     (chinese-cns11643-1                #x24 #x77)      ; \e$(G$w\e(B
     ))
     (->ucs             . #x0394)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0394)
     (mirrored          . nil)
+    (->decomposition   wide #x0394)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER DELTA")))
-    (japanese-jisx0208-1978    #x26 #x24)      ; \e$B&$\e(B
-    (chinese-gb2312            #x26 #x24)      ; \e$A&$\e(B
-    (japanese-jisx0208         #x26 #x24)      ; \e$B&$\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER DELTA")))
+    (japanese-jisx0208-1978    #x26 #x24)      ; \e$(B&$\e(B
+    (chinese-gb2312            #x26 #x24)      ; \e$(A&$\e(B
+    (japanese-jisx0208         #x26 #x24)      ; \e$(B&$\e(B
     (korean-ksc5601            #x25 #x44)      ; \e$(C%D\e(B
     (chinese-cns11643-1                #x24 #x78)      ; \e$(G$x\e(B
     ))
     (->ucs             . #x0395)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0395)
     (mirrored          . nil)
+    (->decomposition   wide #x0395)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER EPSILON")))
-    (japanese-jisx0208-1978    #x26 #x25)      ; \e$B&%\e(B
-    (chinese-gb2312            #x26 #x25)      ; \e$A&%\e(B
-    (japanese-jisx0208         #x26 #x25)      ; \e$B&%\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER EPSILON")))
+    (japanese-jisx0208-1978    #x26 #x25)      ; \e$(B&%\e(B
+    (chinese-gb2312            #x26 #x25)      ; \e$(A&%\e(B
+    (japanese-jisx0208         #x26 #x25)      ; \e$(B&%\e(B
     (korean-ksc5601            #x25 #x45)      ; \e$(C%E\e(B
     (chinese-cns11643-1                #x24 #x79)      ; \e$(G$y\e(B
     ))
     (->ucs             . #x0396)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0396)
     (mirrored          . nil)
+    (->decomposition   wide #x0396)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER ZETA")))
-    (japanese-jisx0208-1978    #x26 #x26)      ; \e$B&&\e(B
-    (chinese-gb2312            #x26 #x26)      ; \e$A&&\e(B
-    (japanese-jisx0208         #x26 #x26)      ; \e$B&&\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER ZETA")))
+    (japanese-jisx0208-1978    #x26 #x26)      ; \e$(B&&\e(B
+    (chinese-gb2312            #x26 #x26)      ; \e$(A&&\e(B
+    (japanese-jisx0208         #x26 #x26)      ; \e$(B&&\e(B
     (korean-ksc5601            #x25 #x46)      ; \e$(C%F\e(B
     (chinese-cns11643-1                #x24 #x7A)      ; \e$(G$z\e(B
     ))
     (->ucs             . #x0397)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0397)
     (mirrored          . nil)
+    (->decomposition   wide #x0397)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER ETA")))
-    (japanese-jisx0208-1978    #x26 #x27)      ; \e$B&'\e(B
-    (chinese-gb2312            #x26 #x27)      ; \e$A&'\e(B
-    (japanese-jisx0208         #x26 #x27)      ; \e$B&'\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER ETA")))
+    (japanese-jisx0208-1978    #x26 #x27)      ; \e$(B&'\e(B
+    (chinese-gb2312            #x26 #x27)      ; \e$(A&'\e(B
+    (japanese-jisx0208         #x26 #x27)      ; \e$(B&'\e(B
     (korean-ksc5601            #x25 #x47)      ; \e$(C%G\e(B
     (chinese-cns11643-1                #x24 #x7B)      ; \e$(G${\e(B
     ))
     (->ucs             . #x0398)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0398)
     (mirrored          . nil)
+    (->decomposition   wide #x0398)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER THETA")))
-    (japanese-jisx0208-1978    #x26 #x28)      ; \e$B&(\e(B
-    (chinese-gb2312            #x26 #x28)      ; \e$A&(\e(B
-    (japanese-jisx0208         #x26 #x28)      ; \e$B&(\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER THETA")))
+    (japanese-jisx0208-1978    #x26 #x28)      ; \e$(B&(\e(B
+    (chinese-gb2312            #x26 #x28)      ; \e$(A&(\e(B
+    (japanese-jisx0208         #x26 #x28)      ; \e$(B&(\e(B
     (korean-ksc5601            #x25 #x48)      ; \e$(C%H\e(B
     (chinese-cns11643-1                #x24 #x7C)      ; \e$(G$|\e(B
     ))
     (->ucs             . #x0399)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x0399)
     (mirrored          . nil)
+    (->decomposition   wide #x0399)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER IOTA")))
-    (japanese-jisx0208-1978    #x26 #x29)      ; \e$B&)\e(B
-    (chinese-gb2312            #x26 #x29)      ; \e$A&)\e(B
-    (japanese-jisx0208         #x26 #x29)      ; \e$B&)\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER IOTA")))
+    (japanese-jisx0208-1978    #x26 #x29)      ; \e$(B&)\e(B
+    (chinese-gb2312            #x26 #x29)      ; \e$(A&)\e(B
+    (japanese-jisx0208         #x26 #x29)      ; \e$(B&)\e(B
     (korean-ksc5601            #x25 #x49)      ; \e$(C%I\e(B
     (chinese-cns11643-1                #x24 #x7D)      ; \e$(G$}\e(B
     ))
     (->ucs             . #x039A)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x039A)
     (mirrored          . nil)
+    (->decomposition   wide #x039A)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER KAPPA")))
-    (japanese-jisx0208-1978    #x26 #x2A)      ; \e$B&*\e(B
-    (chinese-gb2312            #x26 #x2A)      ; \e$A&*\e(B
-    (japanese-jisx0208         #x26 #x2A)      ; \e$B&*\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER KAPPA")))
+    (japanese-jisx0208-1978    #x26 #x2A)      ; \e$(B&*\e(B
+    (chinese-gb2312            #x26 #x2A)      ; \e$(A&*\e(B
+    (japanese-jisx0208         #x26 #x2A)      ; \e$(B&*\e(B
     (korean-ksc5601            #x25 #x4A)      ; \e$(C%J\e(B
     (chinese-cns11643-1                #x24 #x7E)      ; \e$(G$~\e(B
     ))
     (->ucs             . #x039B)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x039B)
     (mirrored          . nil)
+    (->decomposition   wide #x039B)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER LAMDA")))
-    (japanese-jisx0208-1978    #x26 #x2B)      ; \e$B&+\e(B
-    (chinese-gb2312            #x26 #x2B)      ; \e$A&+\e(B
-    (japanese-jisx0208         #x26 #x2B)      ; \e$B&+\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER LAMDA")))
+    (japanese-jisx0208-1978    #x26 #x2B)      ; \e$(B&+\e(B
+    (chinese-gb2312            #x26 #x2B)      ; \e$(A&+\e(B
+    (japanese-jisx0208         #x26 #x2B)      ; \e$(B&+\e(B
     (korean-ksc5601            #x25 #x4B)      ; \e$(C%K\e(B
     (chinese-cns11643-1                #x25 #x21)      ; \e$(G%!\e(B
     ))
     (->ucs             . #x039C)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x039C)
     (mirrored          . nil)
+    (->decomposition   wide #x039C)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER MU")))
-    (japanese-jisx0208-1978    #x26 #x2C)      ; \e$B&,\e(B
-    (chinese-gb2312            #x26 #x2C)      ; \e$A&,\e(B
-    (japanese-jisx0208         #x26 #x2C)      ; \e$B&,\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER MU")))
+    (japanese-jisx0208-1978    #x26 #x2C)      ; \e$(B&,\e(B
+    (chinese-gb2312            #x26 #x2C)      ; \e$(A&,\e(B
+    (japanese-jisx0208         #x26 #x2C)      ; \e$(B&,\e(B
     (korean-ksc5601            #x25 #x4C)      ; \e$(C%L\e(B
     (chinese-cns11643-1                #x25 #x22)      ; \e$(G%"\e(B
     ))
     (->ucs             . #x039D)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x039D)
     (mirrored          . nil)
+    (->decomposition   wide #x039D)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER NU")))
-    (japanese-jisx0208-1978    #x26 #x2D)      ; \e$B&-\e(B
-    (chinese-gb2312            #x26 #x2D)      ; \e$A&-\e(B
-    (japanese-jisx0208         #x26 #x2D)      ; \e$B&-\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER NU")))
+    (japanese-jisx0208-1978    #x26 #x2D)      ; \e$(B&-\e(B
+    (chinese-gb2312            #x26 #x2D)      ; \e$(A&-\e(B
+    (japanese-jisx0208         #x26 #x2D)      ; \e$(B&-\e(B
     (korean-ksc5601            #x25 #x4D)      ; \e$(C%M\e(B
     (chinese-cns11643-1                #x25 #x23)      ; \e$(G%#\e(B
     ))
     (->ucs             . #x039E)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x039E)
     (mirrored          . nil)
+    (->decomposition   wide #x039E)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER XI")))
-    (japanese-jisx0208-1978    #x26 #x2E)      ; \e$B&.\e(B
-    (chinese-gb2312            #x26 #x2E)      ; \e$A&.\e(B
-    (japanese-jisx0208         #x26 #x2E)      ; \e$B&.\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER XI")))
+    (japanese-jisx0208-1978    #x26 #x2E)      ; \e$(B&.\e(B
+    (chinese-gb2312            #x26 #x2E)      ; \e$(A&.\e(B
+    (japanese-jisx0208         #x26 #x2E)      ; \e$(B&.\e(B
     (korean-ksc5601            #x25 #x4E)      ; \e$(C%N\e(B
     (chinese-cns11643-1                #x25 #x24)      ; \e$(G%$\e(B
     ))
     (->ucs             . #x039F)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x039F)
     (mirrored          . nil)
+    (->decomposition   wide #x039F)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER OMICRON")))
-    (japanese-jisx0208-1978    #x26 #x2F)      ; \e$B&/\e(B
-    (chinese-gb2312            #x26 #x2F)      ; \e$A&/\e(B
-    (japanese-jisx0208         #x26 #x2F)      ; \e$B&/\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER OMICRON")))
+    (japanese-jisx0208-1978    #x26 #x2F)      ; \e$(B&/\e(B
+    (chinese-gb2312            #x26 #x2F)      ; \e$(A&/\e(B
+    (japanese-jisx0208         #x26 #x2F)      ; \e$(B&/\e(B
     (korean-ksc5601            #x25 #x4F)      ; \e$(C%O\e(B
     (chinese-cns11643-1                #x25 #x25)      ; \e$(G%%\e(B
     ))
     (->ucs             . #x03A0)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03A0)
     (mirrored          . nil)
+    (->decomposition   wide #x03A0)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER PI")))
-    (japanese-jisx0208-1978    #x26 #x30)      ; \e$B&0\e(B
-    (chinese-gb2312            #x26 #x30)      ; \e$A&0\e(B
-    (japanese-jisx0208         #x26 #x30)      ; \e$B&0\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER PI")))
+    (japanese-jisx0208-1978    #x26 #x30)      ; \e$(B&0\e(B
+    (chinese-gb2312            #x26 #x30)      ; \e$(A&0\e(B
+    (japanese-jisx0208         #x26 #x30)      ; \e$(B&0\e(B
     (korean-ksc5601            #x25 #x50)      ; \e$(C%P\e(B
     (chinese-cns11643-1                #x25 #x26)      ; \e$(G%&\e(B
     ))
     (->ucs             . #x03A1)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03A1)
     (mirrored          . nil)
+    (->decomposition   wide #x03A1)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER RHO")))
-    (japanese-jisx0208-1978    #x26 #x31)      ; \e$B&1\e(B
-    (chinese-gb2312            #x26 #x31)      ; \e$A&1\e(B
-    (japanese-jisx0208         #x26 #x31)      ; \e$B&1\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER RHO")))
+    (japanese-jisx0208-1978    #x26 #x31)      ; \e$(B&1\e(B
+    (chinese-gb2312            #x26 #x31)      ; \e$(A&1\e(B
+    (japanese-jisx0208         #x26 #x31)      ; \e$(B&1\e(B
     (korean-ksc5601            #x25 #x51)      ; \e$(C%Q\e(B
     (chinese-cns11643-1                #x25 #x27)      ; \e$(G%'\e(B
     ))
     (->ucs             . #x03A3)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03A3)
     (mirrored          . nil)
+    (->decomposition   wide #x03A3)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER SIGMA")))
-    (japanese-jisx0208-1978    #x26 #x32)      ; \e$B&2\e(B
-    (chinese-gb2312            #x26 #x32)      ; \e$A&2\e(B
-    (japanese-jisx0208         #x26 #x32)      ; \e$B&2\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER SIGMA")))
+    (japanese-jisx0208-1978    #x26 #x32)      ; \e$(B&2\e(B
+    (chinese-gb2312            #x26 #x32)      ; \e$(A&2\e(B
+    (japanese-jisx0208         #x26 #x32)      ; \e$(B&2\e(B
     (korean-ksc5601            #x25 #x52)      ; \e$(C%R\e(B
     (chinese-cns11643-1                #x25 #x28)      ; \e$(G%(\e(B
     ))
     (->ucs             . #x03A4)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03A4)
     (mirrored          . nil)
+    (->decomposition   wide #x03A4)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER TAU")))
-    (japanese-jisx0208-1978    #x26 #x33)      ; \e$B&3\e(B
-    (chinese-gb2312            #x26 #x33)      ; \e$A&3\e(B
-    (japanese-jisx0208         #x26 #x33)      ; \e$B&3\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER TAU")))
+    (japanese-jisx0208-1978    #x26 #x33)      ; \e$(B&3\e(B
+    (chinese-gb2312            #x26 #x33)      ; \e$(A&3\e(B
+    (japanese-jisx0208         #x26 #x33)      ; \e$(B&3\e(B
     (korean-ksc5601            #x25 #x53)      ; \e$(C%S\e(B
     (chinese-cns11643-1                #x25 #x29)      ; \e$(G%)\e(B
     ))
     (->ucs             . #x03A5)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03A5)
     (mirrored          . nil)
+    (->decomposition   wide #x03A5)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER UPSILON")))
-    (japanese-jisx0208-1978    #x26 #x34)      ; \e$B&4\e(B
-    (chinese-gb2312            #x26 #x34)      ; \e$A&4\e(B
-    (japanese-jisx0208         #x26 #x34)      ; \e$B&4\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER UPSILON")))
+    (japanese-jisx0208-1978    #x26 #x34)      ; \e$(B&4\e(B
+    (chinese-gb2312            #x26 #x34)      ; \e$(A&4\e(B
+    (japanese-jisx0208         #x26 #x34)      ; \e$(B&4\e(B
     (korean-ksc5601            #x25 #x54)      ; \e$(C%T\e(B
     (chinese-cns11643-1                #x25 #x2A)      ; \e$(G%*\e(B
     ))
     (->ucs             . #x03A6)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03A6)
     (mirrored          . nil)
+    (->decomposition   wide #x03A6)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER PHI")))
-    (japanese-jisx0208-1978    #x26 #x35)      ; \e$B&5\e(B
-    (chinese-gb2312            #x26 #x35)      ; \e$A&5\e(B
-    (japanese-jisx0208         #x26 #x35)      ; \e$B&5\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER PHI")))
+    (japanese-jisx0208-1978    #x26 #x35)      ; \e$(B&5\e(B
+    (chinese-gb2312            #x26 #x35)      ; \e$(A&5\e(B
+    (japanese-jisx0208         #x26 #x35)      ; \e$(B&5\e(B
     (korean-ksc5601            #x25 #x55)      ; \e$(C%U\e(B
     (chinese-cns11643-1                #x25 #x2B)      ; \e$(G%+\e(B
     ))
     (->ucs             . #x03A7)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03A7)
     (mirrored          . nil)
+    (->decomposition   wide #x03A7)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER CHI")))
-    (japanese-jisx0208-1978    #x26 #x36)      ; \e$B&6\e(B
-    (chinese-gb2312            #x26 #x36)      ; \e$A&6\e(B
-    (japanese-jisx0208         #x26 #x36)      ; \e$B&6\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER CHI")))
+    (japanese-jisx0208-1978    #x26 #x36)      ; \e$(B&6\e(B
+    (chinese-gb2312            #x26 #x36)      ; \e$(A&6\e(B
+    (japanese-jisx0208         #x26 #x36)      ; \e$(B&6\e(B
     (korean-ksc5601            #x25 #x56)      ; \e$(C%V\e(B
     (chinese-cns11643-1                #x25 #x2C)      ; \e$(G%,\e(B
     ))
     (->ucs             . #x03A8)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03A8)
     (mirrored          . nil)
+    (->decomposition   wide #x03A8)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER PSI")))
-    (japanese-jisx0208-1978    #x26 #x37)      ; \e$B&7\e(B
-    (chinese-gb2312            #x26 #x37)      ; \e$A&7\e(B
-    (japanese-jisx0208         #x26 #x37)      ; \e$B&7\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER PSI")))
+    (japanese-jisx0208-1978    #x26 #x37)      ; \e$(B&7\e(B
+    (chinese-gb2312            #x26 #x37)      ; \e$(A&7\e(B
+    (japanese-jisx0208         #x26 #x37)      ; \e$(B&7\e(B
     (korean-ksc5601            #x25 #x57)      ; \e$(C%W\e(B
     (chinese-cns11643-1                #x25 #x2D)      ; \e$(G%-\e(B
     ))
     (->ucs             . #x03A9)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03A9)
     (mirrored          . nil)
+    (->decomposition   wide #x03A9)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER OMEGA")))
-    (japanese-jisx0208-1978    #x26 #x38)      ; \e$B&8\e(B
-    (chinese-gb2312            #x26 #x38)      ; \e$A&8\e(B
-    (japanese-jisx0208         #x26 #x38)      ; \e$B&8\e(B
+     ((name . "FULLWIDTH GREEK SMALL LETTER OMEGA")))
+    (japanese-jisx0208-1978    #x26 #x38)      ; \e$(B&8\e(B
+    (chinese-gb2312            #x26 #x38)      ; \e$(A&8\e(B
+    (japanese-jisx0208         #x26 #x38)      ; \e$(B&8\e(B
     (korean-ksc5601            #x25 #x58)      ; \e$(C%X\e(B
     (chinese-cns11643-1                #x25 #x2E)      ; \e$(G%.\e(B
     ))
     (ucs               . #x03AA)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x0399 #x0308)
     (mirrored          . nil)
+    (->decomposition   #x0399 #x0308)
     (->lowercase       #x03CA)
     (greek-iso8859-7   #x5A)   ; \e-FÚ\e-A
     ))
 (define-char
-  '((name              . "FULLWIDTH GREEK CAPITAL LETTER IOTA WITH DIALYTIKA")
+  '((name . "FULLWIDTH GREEK CAPITAL LETTER IOTA WITH DIALYTIKA")
     (->ucs             . #x03AA)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03AA)
     (mirrored          . nil)
+    (->decomposition   wide #x03AA)
     (->lowercase
-     ((name            . "FULLWIDTH GREEK SMALL LETTER IOTA WITH DIALYTIKA")))
+     ((name . "FULLWIDTH GREEK SMALL LETTER IOTA WITH DIALYTIKA")))
     (japanese-jisx0212 #x26 #x65)      ; \e$(D&e\e(B
     ))
 (define-char
     (ucs               . #x03AB)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x03A5 #x0308)
     (mirrored          . nil)
+    (->decomposition   #x03A5 #x0308)
     (->lowercase       #x03CB)
     (greek-iso8859-7   #x5B)   ; \e-FÛ\e-A
     ))
 (define-char
-  '((name      . "FULLWIDTH GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA")
+  '((name . "FULLWIDTH GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA")
     (->ucs             . #x03AB)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03AB)
     (mirrored          . nil)
+    (->decomposition   wide #x03AB)
     (->lowercase
-     ((name    . "FULLWIDTH GREEK SMALL LETTER UPSILON WITH DIALYTIKA")))
+     ((name . "FULLWIDTH GREEK SMALL LETTER UPSILON WITH DIALYTIKA")))
     (japanese-jisx0212 #x26 #x6A)      ; \e$(D&j\e(B
     ))
 (define-char
     (ucs               . #x03AC)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x03B1 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x03B1 #x0301)
     (->uppercase       #x0386)
     (->titlecase       #x0386)
     (greek-iso8859-7   #x5C)   ; \e-FÜ\e-A
     (->ucs             . #x03AC)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03AC)
     (mirrored          . nil)
+    (->decomposition   wide #x03AC)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER ALPHA WITH TONOS")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER ALPHA WITH TONOS")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER ALPHA WITH TONOS")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER ALPHA WITH TONOS")))
     (japanese-jisx0212 #x26 #x71)      ; \e$(D&q\e(B
     ))
 (define-char
     (ucs               . #x03AD)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x03B5 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x03B5 #x0301)
     (->uppercase       #x0388)
     (->titlecase       #x0388)
     (greek-iso8859-7   #x5D)   ; \e-FÝ\e-A
     (->ucs             . #x03AD)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03AD)
     (mirrored          . nil)
+    (->decomposition   wide #x03AD)
     (->uppercase
-     ((name    . "FULLWIDTH GREEK CAPITAL LETTER EPSILON WITH TONOS")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER EPSILON WITH TONOS")))
     (->titlecase
-     ((name    . "FULLWIDTH GREEK CAPITAL LETTER EPSILON WITH TONOS")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER EPSILON WITH TONOS")))
     (japanese-jisx0212 #x26 #x72)      ; \e$(D&r\e(B
     ))
 (define-char
     (ucs               . #x03AE)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x03B7 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x03B7 #x0301)
     (->uppercase       #x0389)
     (->titlecase       #x0389)
     (greek-iso8859-7   #x5E)   ; \e-FÞ\e-A
     (->ucs             . #x03AE)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03AE)
     (mirrored          . nil)
+    (->decomposition   wide #x03AE)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER ETA WITH TONOS")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER ETA WITH TONOS")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER ETA WITH TONOS")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER ETA WITH TONOS")))
     (japanese-jisx0212 #x26 #x73)      ; \e$(D&s\e(B
     ))
 (define-char
     (ucs               . #x03AF)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x03B9 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x03B9 #x0301)
     (->uppercase       #x038A)
     (->titlecase       #x038A)
     (greek-iso8859-7   #x5F)   ; \e-Fß\e-A
     (->ucs             . #x03AF)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03AF)
     (mirrored          . nil)
+    (->decomposition   wide #x03AF)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER IOTA WITH TONOS")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER IOTA WITH TONOS")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER IOTA WITH TONOS")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER IOTA WITH TONOS")))
     (japanese-jisx0212 #x26 #x74)      ; \e$(D&t\e(B
     ))
 (define-char
   '((name . "GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS")
-    (ucs  . #x03B0)
+    (ucs               . #x03B0)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x03CB #x0301)
     (mirrored          . nil)
+    (->decomposition   #x03CB #x0301)
     (greek-iso8859-7   #x60)   ; \e-Fà\e-A
     ))
 (define-char
   '((name . "FULLWIDTH GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS")
-    (->ucs  . #x03B0)
+    (->ucs             . #x03B0)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03B0)
     (mirrored          . nil)
+    (->decomposition   wide #x03B0)
     (japanese-jisx0212 #x26 #x7B)      ; \e$(D&{\e(B
     ))
 (define-char
     (->ucs             . #x03B1)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03B1)
     (mirrored          . nil)
+    (->decomposition   wide #x03B1)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER ALPHA")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER ALPHA")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER ALPHA")))
-    (japanese-jisx0208-1978    #x26 #x41)      ; \e$B&A\e(B
-    (chinese-gb2312            #x26 #x41)      ; \e$A&A\e(B
-    (japanese-jisx0208         #x26 #x41)      ; \e$B&A\e(B
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER ALPHA")))
+    (japanese-jisx0208-1978    #x26 #x41)      ; \e$(B&A\e(B
+    (chinese-gb2312            #x26 #x41)      ; \e$(A&A\e(B
+    (japanese-jisx0208         #x26 #x41)      ; \e$(B&A\e(B
     (korean-ksc5601            #x25 #x61)      ; \e$(C%a\e(B
     (chinese-cns11643-1                #x25 #x2F)      ; \e$(G%/\e(B
     ))
     ))
 (define-char
   '((name              . "FULLWIDTH GREEK SMALL LETTER BETA")
-    (ucs               . #x03B2)
+    (->ucs             . #x03B2)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03B2)
     (mirrored          . nil)
+    (->decomposition   wide #x03B2)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER BETA")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER BETA")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER BETA")))
-    (japanese-jisx0208-1978    #x26 #x42)      ; \e$@&B\e(B
-    (chinese-gb2312            #x26 #x42)      ; \e$A&B\e(B
-    (japanese-jisx0208         #x26 #x42)      ; \e$B&B\e(B
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER BETA")))
+    (japanese-jisx0208-1978    #x26 #x42)      ; \e$(@&B\e(B
+    (chinese-gb2312            #x26 #x42)      ; \e$(A&B\e(B
+    (japanese-jisx0208         #x26 #x42)      ; \e$(B&B\e(B
     (korean-ksc5601            #x25 #x62)      ; \e$(C%b\e(B
     (chinese-cns11643-1                #x25 #x30)      ; \e$(G%0\e(B
     ))
     (->ucs             . #x03B3)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03B3)
     (mirrored          . nil)
+    (->decomposition   wide #x03B3)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER GAMMA")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER GAMMA")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER GAMMA")))
-    (japanese-jisx0208-1978    #x26 #x43)      ; \e$B&C\e(B
-    (chinese-gb2312            #x26 #x43)      ; \e$A&C\e(B
-    (japanese-jisx0208         #x26 #x43)      ; \e$B&C\e(B
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER GAMMA")))
+    (japanese-jisx0208-1978    #x26 #x43)      ; \e$(B&C\e(B
+    (chinese-gb2312            #x26 #x43)      ; \e$(A&C\e(B
+    (japanese-jisx0208         #x26 #x43)      ; \e$(B&C\e(B
     (korean-ksc5601            #x25 #x63)      ; \e$(C%c\e(B
     (chinese-cns11643-1                #x25 #x31)      ; \e$(G%1\e(B
     ))
     (->ucs             . #x03B4)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03B4)
     (mirrored          . nil)
+    (->decomposition   wide #x03B4)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER DELTA")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER DELTA")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER DELTA")))
-    (japanese-jisx0208-1978    #x26 #x44)      ; \e$B&D\e(B
-    (chinese-gb2312            #x26 #x44)      ; \e$A&D\e(B
-    (japanese-jisx0208         #x26 #x44)      ; \e$B&D\e(B
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER DELTA")))
+    (japanese-jisx0208-1978    #x26 #x44)      ; \e$(B&D\e(B
+    (chinese-gb2312            #x26 #x44)      ; \e$(A&D\e(B
+    (japanese-jisx0208         #x26 #x44)      ; \e$(B&D\e(B
     (korean-ksc5601            #x25 #x64)      ; \e$(C%d\e(B
     (chinese-cns11643-1                #x25 #x32)      ; \e$(G%2\e(B
     ))
     (->ucs             . #x03B5)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03B5)
     (mirrored          . nil)
+    (->decomposition   wide #x03B5)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER EPSILON")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER EPSILON")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER EPSILON")))
-    (japanese-jisx0208-1978    #x26 #x45)      ; \e$B&E\e(B
-    (chinese-gb2312            #x26 #x45)      ; \e$A&E\e(B
-    (japanese-jisx0208         #x26 #x45)      ; \e$B&E\e(B
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER EPSILON")))
+    (japanese-jisx0208-1978    #x26 #x45)      ; \e$(B&E\e(B
+    (chinese-gb2312            #x26 #x45)      ; \e$(A&E\e(B
+    (japanese-jisx0208         #x26 #x45)      ; \e$(B&E\e(B
     (korean-ksc5601            #x25 #x65)      ; \e$(C%e\e(B
     (chinese-cns11643-1                #x25 #x33)      ; \e$(G%3\e(B
     ))
     (->ucs             . #x03B6)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03B6)
     (mirrored          . nil)
+    (->decomposition   wide #x03B6)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER ZETA")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER ZETA")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER ZETA")))
-    (japanese-jisx0208-1978    #x26 #x46)      ; \e$B&F\e(B
-    (chinese-gb2312            #x26 #x46)      ; \e$A&F\e(B
-    (japanese-jisx0208         #x26 #x46)      ; \e$B&F\e(B
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER ZETA")))
+    (japanese-jisx0208-1978    #x26 #x46)      ; \e$(B&F\e(B
+    (chinese-gb2312            #x26 #x46)      ; \e$(A&F\e(B
+    (japanese-jisx0208         #x26 #x46)      ; \e$(B&F\e(B
     (korean-ksc5601            #x25 #x66)      ; \e$(C%f\e(B
     (chinese-cns11643-1                #x25 #x34)      ; \e$(G%4\e(B
     ))
     (->ucs             . #x03B7)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03B7)
     (mirrored          . nil)
+    (->decomposition   wide #x03B7)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER ETA")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER ETA")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER ETA")))
-    (japanese-jisx0208-1978    #x26 #x47)      ; \e$B&G\e(B
-    (chinese-gb2312            #x26 #x47)      ; \e$A&G\e(B
-    (japanese-jisx0208         #x26 #x47)      ; \e$B&G\e(B
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER ETA")))
+    (japanese-jisx0208-1978    #x26 #x47)      ; \e$(B&G\e(B
+    (chinese-gb2312            #x26 #x47)      ; \e$(A&G\e(B
+    (japanese-jisx0208         #x26 #x47)      ; \e$(B&G\e(B
     (korean-ksc5601            #x25 #x67)      ; \e$(C%g\e(B
     (chinese-cns11643-1                #x25 #x35)      ; \e$(G%5\e(B
     ))
     (->ucs             . #x03B8)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03B8)
     (mirrored          . nil)
+    (->decomposition   wide #x03B8)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER THETA")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER THETA")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER THETA")))
-    (japanese-jisx0208-1978    #x26 #x48)      ; \e$B&H\e(B
-    (chinese-gb2312            #x26 #x48)      ; \e$A&H\e(B
-    (japanese-jisx0208         #x26 #x48)      ; \e$B&H\e(B
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER THETA")))
+    (japanese-jisx0208-1978    #x26 #x48)      ; \e$(B&H\e(B
+    (chinese-gb2312            #x26 #x48)      ; \e$(A&H\e(B
+    (japanese-jisx0208         #x26 #x48)      ; \e$(B&H\e(B
     (korean-ksc5601            #x25 #x68)      ; \e$(C%h\e(B
     (chinese-cns11643-1                #x25 #x36)      ; \e$(G%6\e(B
     ))
     (->ucs             . #x03B9)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03B9)
     (mirrored          . nil)
+    (->decomposition   wide #x03B9)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER IOTA")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER IOTA")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER IOTA")))
-    (japanese-jisx0208-1978    #x26 #x49)      ; \e$B&I\e(B
-    (chinese-gb2312            #x26 #x49)      ; \e$A&I\e(B
-    (japanese-jisx0208         #x26 #x49)      ; \e$B&I\e(B
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER IOTA")))
+    (japanese-jisx0208-1978    #x26 #x49)      ; \e$(B&I\e(B
+    (chinese-gb2312            #x26 #x49)      ; \e$(A&I\e(B
+    (japanese-jisx0208         #x26 #x49)      ; \e$(B&I\e(B
     (korean-ksc5601            #x25 #x69)      ; \e$(C%i\e(B
     (chinese-cns11643-1                #x25 #x37)      ; \e$(G%7\e(B
     ))
     (->ucs             . #x03BA)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03BA)
     (mirrored          . nil)
+    (->decomposition   wide #x03BA)
     (->uppercase       #x039A)
     (->titlecase       #x039A)
-    (japanese-jisx0208-1978    #x26 #x4A)      ; \e$B&J\e(B
-    (chinese-gb2312            #x26 #x4A)      ; \e$A&J\e(B
-    (japanese-jisx0208         #x26 #x4A)      ; \e$B&J\e(B
+    (japanese-jisx0208-1978    #x26 #x4A)      ; \e$(B&J\e(B
+    (chinese-gb2312            #x26 #x4A)      ; \e$(A&J\e(B
+    (japanese-jisx0208         #x26 #x4A)      ; \e$(B&J\e(B
     (korean-ksc5601            #x25 #x6A)      ; \e$(C%j\e(B
     (chinese-cns11643-1                #x25 #x38)      ; \e$(G%8\e(B
     ))
     (->ucs             . #x03BB)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03BB)
     (mirrored          . nil)
+    (->decomposition   wide #x03BB)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER LAMDA")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER LAMDA")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER LAMDA")))
-    (japanese-jisx0208-1978    #x26 #x4B)      ; \e$B&K\e(B
-    (chinese-gb2312            #x26 #x4B)      ; \e$A&K\e(B
-    (japanese-jisx0208         #x26 #x4B)      ; \e$B&K\e(B
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER LAMDA")))
+    (japanese-jisx0208-1978    #x26 #x4B)      ; \e$(B&K\e(B
+    (chinese-gb2312            #x26 #x4B)      ; \e$(A&K\e(B
+    (japanese-jisx0208         #x26 #x4B)      ; \e$(B&K\e(B
     (korean-ksc5601            #x25 #x6B)      ; \e$(C%k\e(B
     (chinese-cns11643-1                #x25 #x39)      ; \e$(G%9\e(B
     ))
     (->ucs             . #x03BC)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03BC)
     (mirrored          . nil)
+    (->decomposition   wide #x03BC)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER MU")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER MU")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER MU")))
-    (japanese-jisx0208-1978    #x26 #x4C)      ; \e$B&L\e(B
-    (chinese-gb2312            #x26 #x4C)      ; \e$A&L\e(B
-    (japanese-jisx0208         #x26 #x4C)      ; \e$B&L\e(B
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER MU")))
+    (japanese-jisx0208-1978    #x26 #x4C)      ; \e$(B&L\e(B
+    (chinese-gb2312            #x26 #x4C)      ; \e$(A&L\e(B
+    (japanese-jisx0208         #x26 #x4C)      ; \e$(B&L\e(B
     (korean-ksc5601            #x25 #x6C)      ; \e$(C%l\e(B
     (chinese-cns11643-1                #x25 #x3A)      ; \e$(G%:\e(B
     ))
     (->ucs             . #x03BD)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03BD)
     (mirrored          . nil)
+    (->decomposition   wide #x03BD)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER NU")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER NU")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER NU")))
-    (japanese-jisx0208-1978    #x26 #x4D)      ; \e$B&M\e(B
-    (chinese-gb2312            #x26 #x4D)      ; \e$A&M\e(B
-    (japanese-jisx0208         #x26 #x4D)      ; \e$B&M\e(B
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER NU")))
+    (japanese-jisx0208-1978    #x26 #x4D)      ; \e$(B&M\e(B
+    (chinese-gb2312            #x26 #x4D)      ; \e$(A&M\e(B
+    (japanese-jisx0208         #x26 #x4D)      ; \e$(B&M\e(B
     (korean-ksc5601            #x25 #x6D)      ; \e$(C%m\e(B
     (chinese-cns11643-1                #x25 #x3B)      ; \e$(G%;\e(B
     ))
     (->ucs             . #x03BE)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03BE)
     (mirrored          . nil)
+    (->decomposition   wide #x03BE)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER XI")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER XI")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER XI")))
-    (japanese-jisx0208-1978    #x26 #x4E)      ; \e$B&N\e(B
-    (chinese-gb2312            #x26 #x4E)      ; \e$A&N\e(B
-    (japanese-jisx0208         #x26 #x4E)      ; \e$B&N\e(B
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER XI")))
+    (japanese-jisx0208-1978    #x26 #x4E)      ; \e$(B&N\e(B
+    (chinese-gb2312            #x26 #x4E)      ; \e$(A&N\e(B
+    (japanese-jisx0208         #x26 #x4E)      ; \e$(B&N\e(B
     (korean-ksc5601            #x25 #x6E)      ; \e$(C%n\e(B
     (chinese-cns11643-1                #x25 #x3C)      ; \e$(G%<\e(B
     ))
     (->ucs             . #x03BF)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03BF)
     (mirrored          . nil)
+    (->decomposition   wide #x03BF)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER OMICRON")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER OMICRON")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER OMICRON")))
-    (japanese-jisx0208-1978    #x26 #x4F)      ; \e$B&O\e(B
-    (chinese-gb2312            #x26 #x4F)      ; \e$A&O\e(B
-    (japanese-jisx0208         #x26 #x4F)      ; \e$B&O\e(B
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER OMICRON")))
+    (japanese-jisx0208-1978    #x26 #x4F)      ; \e$(B&O\e(B
+    (chinese-gb2312            #x26 #x4F)      ; \e$(A&O\e(B
+    (japanese-jisx0208         #x26 #x4F)      ; \e$(B&O\e(B
     (korean-ksc5601            #x25 #x6F)      ; \e$(C%o\e(B
     (chinese-cns11643-1                #x25 #x3D)      ; \e$(G%=\e(B
     ))
     (->ucs             . #x03C0)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03C0)
     (mirrored          . nil)
+    (->decomposition   wide #x03C0)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER PI")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER PI")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER PI")))
-    (japanese-jisx0208-1978    #x26 #x50)      ; \e$B&P\e(B
-    (chinese-gb2312            #x26 #x50)      ; \e$A&P\e(B
-    (japanese-jisx0208         #x26 #x50)      ; \e$B&P\e(B
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER PI")))
+    (japanese-jisx0208-1978    #x26 #x50)      ; \e$(B&P\e(B
+    (chinese-gb2312            #x26 #x50)      ; \e$(A&P\e(B
+    (japanese-jisx0208         #x26 #x50)      ; \e$(B&P\e(B
     (korean-ksc5601            #x25 #x70)      ; \e$(C%p\e(B
     (chinese-cns11643-1                #x25 #x3E)      ; \e$(G%>\e(B
     ))
     (->ucs             . #x03C1)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03C1)
     (mirrored          . nil)
+    (->decomposition   wide #x03C1)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER RHO")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER RHO")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER RHO")))
-    (japanese-jisx0208-1978    #x26 #x51)      ; \e$B&Q\e(B
-    (chinese-gb2312            #x26 #x51)      ; \e$A&Q\e(B
-    (japanese-jisx0208         #x26 #x51)      ; \e$B&Q\e(B
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER RHO")))
+    (japanese-jisx0208-1978    #x26 #x51)      ; \e$(B&Q\e(B
+    (chinese-gb2312            #x26 #x51)      ; \e$(A&Q\e(B
+    (japanese-jisx0208         #x26 #x51)      ; \e$(B&Q\e(B
     (korean-ksc5601            #x25 #x71)      ; \e$(C%q\e(B
     (chinese-cns11643-1                #x25 #x3F)      ; \e$(G%?\e(B
     ))
     (->ucs             . #x03C2)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03C2)
     (mirrored          . nil)
+    (->decomposition   wide #x03C2)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER FINAL SIGMA")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER FINAL SIGMA")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER FINAL SIGMA")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER FINAL SIGMA")))
     (japanese-jisx0212 #x26 #x78)      ; \e$(D&x\e(B
     ))
 (define-char
     (->ucs             . #x03C3)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03C3)
     (mirrored          . nil)
+    (->decomposition   wide #x03C3)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER SIGMA")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER SIGMA")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER SIGMA")))
-    (japanese-jisx0208-1978    #x26 #x52)      ; \e$B&R\e(B
-    (chinese-gb2312            #x26 #x52)      ; \e$A&R\e(B
-    (japanese-jisx0208         #x26 #x52)      ; \e$B&R\e(B
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER SIGMA")))
+    (japanese-jisx0208-1978    #x26 #x52)      ; \e$(B&R\e(B
+    (chinese-gb2312            #x26 #x52)      ; \e$(A&R\e(B
+    (japanese-jisx0208         #x26 #x52)      ; \e$(B&R\e(B
     (korean-ksc5601            #x25 #x72)      ; \e$(C%r\e(B
     (chinese-cns11643-1                #x25 #x40)      ; \e$(G%@\e(B
     ))
     (->ucs             . #x03C4)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03C4)
     (mirrored          . nil)
+    (->decomposition   wide #x03C4)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER TAU")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER TAU")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER TAU")))
-    (japanese-jisx0208-1978    #x26 #x53)      ; \e$B&S\e(B
-    (chinese-gb2312            #x26 #x53)      ; \e$A&S\e(B
-    (japanese-jisx0208         #x26 #x53)      ; \e$B&S\e(B
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER TAU")))
+    (japanese-jisx0208-1978    #x26 #x53)      ; \e$(B&S\e(B
+    (chinese-gb2312            #x26 #x53)      ; \e$(A&S\e(B
+    (japanese-jisx0208         #x26 #x53)      ; \e$(B&S\e(B
     (korean-ksc5601            #x25 #x73)      ; \e$(C%s\e(B
     (chinese-cns11643-1                #x25 #x41)      ; \e$(G%A\e(B
     ))
     (->ucs             . #x03C5)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03C5)
     (mirrored          . nil)
+    (->decomposition   wide #x03C5)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER UPSILON")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER UPSILON")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER UPSILON")))
-    (japanese-jisx0208-1978    #x26 #x54)      ; \e$B&T\e(B
-    (chinese-gb2312            #x26 #x54)      ; \e$A&T\e(B
-    (japanese-jisx0208         #x26 #x54)      ; \e$B&T\e(B
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER UPSILON")))
+    (japanese-jisx0208-1978    #x26 #x54)      ; \e$(B&T\e(B
+    (chinese-gb2312            #x26 #x54)      ; \e$(A&T\e(B
+    (japanese-jisx0208         #x26 #x54)      ; \e$(B&T\e(B
     (korean-ksc5601            #x25 #x74)      ; \e$(C%t\e(B
     (chinese-cns11643-1                #x25 #x42)      ; \e$(G%B\e(B
     ))
     (->ucs             . #x03C6)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03C6)
     (mirrored          . nil)
+    (->decomposition   wide #x03C6)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER PHI")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER PHI")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER PHI")))
-    (japanese-jisx0208-1978    #x26 #x55)      ; \e$B&U\e(B
-    (chinese-gb2312            #x26 #x55)      ; \e$A&U\e(B
-    (japanese-jisx0208         #x26 #x55)      ; \e$B&U\e(B
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER PHI")))
+    (japanese-jisx0208-1978    #x26 #x55)      ; \e$(B&U\e(B
+    (chinese-gb2312            #x26 #x55)      ; \e$(A&U\e(B
+    (japanese-jisx0208         #x26 #x55)      ; \e$(B&U\e(B
     (korean-ksc5601            #x25 #x75)      ; \e$(C%u\e(B
     (chinese-cns11643-1                #x25 #x43)      ; \e$(G%C\e(B
     ))
     (->ucs             . #x03C7)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03C7)
     (mirrored          . nil)
+    (->decomposition   wide #x03C7)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER CHI")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER CHI")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER CHI")))
-    (japanese-jisx0208-1978    #x26 #x56)      ; \e$B&V\e(B
-    (chinese-gb2312            #x26 #x56)      ; \e$A&V\e(B
-    (japanese-jisx0208         #x26 #x56)      ; \e$B&V\e(B
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER CHI")))
+    (japanese-jisx0208-1978    #x26 #x56)      ; \e$(B&V\e(B
+    (chinese-gb2312            #x26 #x56)      ; \e$(A&V\e(B
+    (japanese-jisx0208         #x26 #x56)      ; \e$(B&V\e(B
     (korean-ksc5601            #x25 #x76)      ; \e$(C%v\e(B
     (chinese-cns11643-1                #x25 #x44)      ; \e$(G%D\e(B
     ))
     (->ucs             . #x03C8)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03C8)
     (mirrored          . nil)
+    (->decomposition   wide #x03C8)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER PSI")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER PSI")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER PSI")))
-    (japanese-jisx0208-1978    #x26 #x57)      ; \e$B&W\e(B
-    (chinese-gb2312            #x26 #x57)      ; \e$A&W\e(B
-    (japanese-jisx0208         #x26 #x57)      ; \e$B&W\e(B
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER PSI")))
+    (japanese-jisx0208-1978    #x26 #x57)      ; \e$(B&W\e(B
+    (chinese-gb2312            #x26 #x57)      ; \e$(A&W\e(B
+    (japanese-jisx0208         #x26 #x57)      ; \e$(B&W\e(B
     (korean-ksc5601            #x25 #x77)      ; \e$(C%w\e(B
     (chinese-cns11643-1                #x25 #x45)      ; \e$(G%E\e(B
     ))
     (->ucs             . #x03C9)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03C9)
     (mirrored          . nil)
+    (->decomposition   wide #x03C9)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER OMEGA")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER OMEGA")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER OMEGA")))
-    (japanese-jisx0208-1978    #x26 #x58)      ; \e$B&X\e(B
-    (chinese-gb2312            #x26 #x58)      ; \e$A&X\e(B
-    (japanese-jisx0208         #x26 #x58)      ; \e$B&X\e(B
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER OMEGA")))
+    (japanese-jisx0208-1978    #x26 #x58)      ; \e$(B&X\e(B
+    (chinese-gb2312            #x26 #x58)      ; \e$(A&X\e(B
+    (japanese-jisx0208         #x26 #x58)      ; \e$(B&X\e(B
     (korean-ksc5601            #x25 #x78)      ; \e$(C%x\e(B
     (chinese-cns11643-1                #x25 #x46)      ; \e$(G%F\e(B
     ))
     (ucs               . #x03CA)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x03B9 #x0308)
     (mirrored          . nil)
+    (->decomposition   #x03B9 #x0308)
     (->uppercase       #x03AA)
     (->titlecase       #x03AA)
     (greek-iso8859-7   #x7A)   ; \e-Fú\e-A
     ))
 (define-char
-  '((name              . "FULLWIDTH GREEK SMALL LETTER IOTA WITH DIALYTIKA")
+  '((name . "FULLWIDTH GREEK SMALL LETTER IOTA WITH DIALYTIKA")
     (->ucs             . #x03CA)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03CA)
     (mirrored          . nil)
+    (->decomposition   wide #x03CA)
     (->uppercase
-     ((name    . "FULLWIDTH GREEK CAPITAL LETTER IOTA WITH DIALYTIKA")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER IOTA WITH DIALYTIKA")))
     (->titlecase
-     ((name    . "FULLWIDTH GREEK CAPITAL LETTER IOTA WITH DIALYTIKA")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER IOTA WITH DIALYTIKA")))
     (japanese-jisx0212 #x26 #x75)      ; \e$(D&u\e(B
     ))
 (define-char
     (ucs               . #x03CB)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x03C5 #x0308)
     (mirrored          . nil)
+    (->decomposition   #x03C5 #x0308)
     (->uppercase       #x03AB)
     (->titlecase       #x03AB)
     (greek-iso8859-7   #x7B)   ; \e-Fû\e-A
     ))
 (define-char
-  '((name      . "FULLWIDTH GREEK SMALL LETTER UPSILON WITH DIALYTIKA")
+  '((name . "FULLWIDTH GREEK SMALL LETTER UPSILON WITH DIALYTIKA")
     (->ucs             . #x03CB)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03CB)
     (mirrored          . nil)
+    (->decomposition   wide #x03CB)
     (->uppercase
-     ((name    . "FULLWIDTH GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA")))
     (->titlecase
-     ((name    . "FULLWIDTH GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA")))
     (japanese-jisx0212 #x26 #x7A)      ; \e$(D&z\e(B
     ))
 (define-char
     (ucs               . #x03CC)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x03BF #x0301)
     (mirrored          . nil)
+    (->decomposition   #x03BF #x0301)
     (->uppercase       #x038C)
     (->titlecase       #x038C)
     (greek-iso8859-7   #x7C)   ; \e-Fü\e-A
     (->ucs             . #x03CC)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03CC)
     (mirrored          . nil)
+    (->decomposition   wide #x03CC)
     (->uppercase
-     ((name    . "FULLWIDTH GREEK CAPITAL LETTER OMICRON WITH TONOS")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER OMICRON WITH TONOS")))
     (->titlecase
-     ((name    . "FULLWIDTH GREEK CAPITAL LETTER OMICRON WITH TONOS")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER OMICRON WITH TONOS")))
     (japanese-jisx0212 #x26 #x77)      ; \e$(D&w\e(B
     ))
 (define-char
     (ucs               . #x03CD)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x03C5 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x03C5 #x0301)
     (->uppercase       #x038E)
     (->titlecase       #x038E)
     (greek-iso8859-7   #x7D)   ; \e-Fý\e-A
     (->ucs             . #x03CD)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03CD)
     (mirrored          . nil)
+    (->decomposition   wide #x03CD)
     (->uppercase
-     ((name    . "FULLWIDTH GREEK CAPITAL LETTER UPSILON WITH TONOS")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER UPSILON WITH TONOS")))
     (->titlecase
-     ((name    . "FULLWIDTH GREEK CAPITAL LETTER UPSILON WITH TONOS")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER UPSILON WITH TONOS")))
     (japanese-jisx0212 #x26 #x79)      ; \e$(D&y\e(B
     ))
 (define-char
     (ucs               . #x03CE)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x03C9 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x03C9 #x0301)
     (->uppercase       #x038F)
     (->titlecase       #x038F)
     (greek-iso8859-7   #x7E)   ; \e-Fþ\e-A
     (->ucs             . #x03CE)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   wide #x03CE)
     (mirrored          . nil)
+    (->decomposition   wide #x03CE)
     (->uppercase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER OMEGA WITH TONOS")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER OMEGA WITH TONOS")))
     (->titlecase
-     ((name            . "FULLWIDTH GREEK CAPITAL LETTER OMEGA WITH TONOS")))
+     ((name . "FULLWIDTH GREEK CAPITAL LETTER OMEGA WITH TONOS")))
     (japanese-jisx0212 #x26 #x7C)      ; \e$(D&|\e(B
     ))
 (define-char
     (ucs               . #x03D0)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x03B2)
     (mirrored          . nil)
+    (->decomposition   compat #x03B2)
     (->uppercase       #x0392)
     (->titlecase       #x0392)
     ))
     (ucs               . #x03D1)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x03B8)
     (mirrored          . nil)
+    (->decomposition   compat #x03B8)
     (->uppercase       #x0398)
     (->titlecase       #x0398)
     ))
     (ucs               . #x03D2)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x03A5)
     (mirrored          . nil)
+    (->decomposition   compat #x03A5)
     ))
 (define-char
   '((name              . "GREEK UPSILON WITH ACUTE AND HOOK SYMBOL")
     (ucs               . #x03D3)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x03D2 #x0301)
     (mirrored          . nil)
+    (->decomposition   #x03D2 #x0301)
     ))
 (define-char
   '((name              . "GREEK UPSILON WITH DIAERESIS AND HOOK SYMBOL")
     (ucs               . #x03D4)
     (general-category  letter uppercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   #x03D2 #x0308)
     (mirrored          . nil)
+    (->decomposition   #x03D2 #x0308)
     ))
 (define-char
   '((name              . "GREEK PHI SYMBOL")
     (ucs               . #x03D5)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x03C6)
     (mirrored          . nil)
+    (->decomposition   compat #x03C6)
     (->uppercase       #x03A6)
     (->titlecase       #x03A6)
     ))
     (ucs               . #x03D6)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x03C0)
     (mirrored          . nil)
+    (->decomposition   compat #x03C0)
     (->uppercase       #x03A0)
     (->titlecase       #x03A0)
     ))
     (ucs               . #x03F0)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x03BA)
     (mirrored          . nil)
+    (->decomposition   compat #x03BA)
     (->uppercase       #x039A)
     (->titlecase       #x039A)
     ))
     (ucs               . #x03F1)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x03C1)
     (mirrored          . nil)
+    (->decomposition   compat #x03C1)
     (->uppercase       #x03A1)
     (->titlecase       #x03A1)
     ))
     (ucs               . #x03F2)
     (general-category  letter lowercase) ; Normative Category
     (bidi-category     . "L")
-    (->decomposition   compat #x03C2)
     (mirrored          . nil)
+    (->decomposition   compat #x03C2)
     (->uppercase       #x03A3)
     (->titlecase       #x03A3)
     ))
diff --git a/lisp/utf-2000/u00400-Cyrillic.el b/lisp/utf-2000/u00400-Cyrillic.el
new file mode 100644 (file)
index 0000000..de7436f
--- /dev/null
@@ -0,0 +1,3476 @@
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER IE WITH GRAVE")
+    (ucs               . #x0400)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0415 #x0300)
+    (->lowercase       #x0450)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER IO")
+    (ucs               . #x0401)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0415 #x0308)
+    (->lowercase       #x0451)
+    (cyrillic-iso8859-5 #x21)  ; \e-L¡\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER IO")
+    (->ucs             . #x0401)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0401)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER IO")))
+    (japanese-jisx0208-1978    #x27 #x27)      ; \e$(B''\e(B
+    (chinese-gb2312            #x27 #x27)      ; \e$(A''\e(B
+    (japanese-jisx0208         #x27 #x27)      ; \e$(B''\e(B
+    (korean-ksc5601            #x2C #x27)      ; \e$(C,'\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER DJE")
+    (ucs               . #x0402)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Serbocroatian")
+    (->lowercase       #x0452)
+    (cyrillic-iso8859-5 #x22)  ; \e-L¢\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER DJE")
+    (->ucs             . #x0402)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Serbocroatian")
+    (->decomposition   wide #x0402)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER DJE")))
+    (japanese-jisx0212 #x27 #x42)      ; \e$(D'B\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER GJE")
+    (ucs               . #x0403)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0413 #x0301)
+    (->lowercase       #x0453)
+    (cyrillic-iso8859-5 #x23)  ; \e-L£\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER GJE")
+    (->ucs             . #x0403)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0403)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER GJE")))
+    (japanese-jisx0212 #x27 #x43)      ; \e$(D'C\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER UKRAINIAN IE")
+    (ucs               . #x0404)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0454)
+    (cyrillic-iso8859-5 #x24)  ; \e-L¤\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER UKRAINIAN IE")
+    (->ucs             . #x0404)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0404)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER UKRAINIAN IE")))
+    (japanese-jisx0212 #x27 #x44)      ; \e$(D'D\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER DZE")
+    (ucs               . #x0405)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0455)
+    (cyrillic-iso8859-5 #x25)  ; \e-L¥\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER DZE")
+    (->ucs             . #x0405)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0405)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER DZE")))
+    (japanese-jisx0212 #x27 #x45)      ; \e$(D'E\e(B
+    ))
+(define-char
+  '((name . "CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I")
+    (ucs               . #x0406)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0456)
+    (cyrillic-iso8859-5 #x26)  ; \e-L¦\e-A
+    ))
+(define-char
+  '((name . "FULLWIDTH CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I")
+    (->ucs             . #x0406)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0406)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I")))
+    (japanese-jisx0212 #x27 #x46)      ; \e$(D'F\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER YI")
+    (ucs               . #x0407)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Ukrainian")
+    (->decomposition   #x0406 #x0308)
+    (->lowercase       #x0457)
+    (cyrillic-iso8859-5 #x27)  ; \e-L§\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER YI")
+    (->ucs             . #x0407)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Ukrainian")
+    (->decomposition   wide #x0407)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER YI")))
+    (japanese-jisx0212 #x27 #x47)      ; \e$(D'G\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER JE")
+    (ucs               . #x0408)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0458)
+    (cyrillic-iso8859-5 #x28)  ; \e-L¨\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER JE")
+    (->ucs             . #x0408)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0408)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER JE")))
+    (japanese-jisx0212 #x27 #x48)      ; \e$(D'H\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER LJE")
+    (ucs               . #x0409)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0459)
+    (cyrillic-iso8859-5 #x29)  ; \e-L©\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER LJE")
+    (->ucs             . #x0409)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0409)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER LJE")))
+    (japanese-jisx0212 #x27 #x49)      ; \e$(D'I\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER NJE")
+    (ucs               . #x040A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x045A)
+    (cyrillic-iso8859-5 #x2A)  ; \e-Lª\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER NJE")
+    (->ucs             . #x040A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x040A)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER NJE")))
+    (japanese-jisx0212 #x27 #x4A)      ; \e$(D'J\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER TSHE")
+    (ucs               . #x040B)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Serbocroatian")
+    (->lowercase       #x045B)
+    (cyrillic-iso8859-5 #x2B)  ; \e-L«\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER TSHE")
+    (->ucs             . #x040B)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Serbocroatian")
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER TSHE")))
+    (japanese-jisx0212 #x27 #x4B)      ; \e$(D'K\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER KJE")
+    (ucs               . #x040C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x041A #x0301)
+    (->lowercase       #x045C)
+    (cyrillic-iso8859-5 #x2C)  ; \e-L¬\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER KJE")
+    (->ucs             . #x040C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x040C)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER KJE")))
+    (japanese-jisx0212 #x27 #x4C)      ; \e$(D'L\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER I WITH GRAVE")
+    (ucs               . #x040D)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0418 #x0300)
+    (->lowercase       #x045D)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER SHORT U")
+    (ucs               . #x040E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Byelorussian")
+    (->decomposition   #x0423 #x0306)
+    (->lowercase       #x045E)
+    (cyrillic-iso8859-5 #x2E)  ; \e-L®\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER SHORT U")
+    (->ucs             . #x040E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Byelorussian")
+    (->decomposition   wide #x040E)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER SHORT U")))
+    (japanese-jisx0212 #x27 #x4D)      ; \e$(D'M\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER DZHE")
+    (ucs               . #x040F)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x045F)
+    (cyrillic-iso8859-5 #x2F)  ; \e-L¯\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER DZHE")
+    (->ucs             . #x040F)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x040F)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER DZHE")))
+    (japanese-jisx0212 #x27 #x4E)      ; \e$(D'N\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER A")
+    (ucs               . #x0410)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0430)
+    (cyrillic-iso8859-5 #x30)  ; \e-L°\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER A")
+    (->ucs             . #x0410)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0410)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER A")))
+    (japanese-jisx0208-1978    #x27 #x21)      ; \e$(B'!\e(B
+    (chinese-gb2312            #x27 #x21)      ; \e$(A'!\e(B
+    (japanese-jisx0208         #x27 #x21)      ; \e$(B'!\e(B
+    (korean-ksc5601            #x2C #x21)      ; \e$(C,!\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER BE")
+    (ucs               . #x0411)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0431)
+    (cyrillic-iso8859-5 #x31)  ; \e-L±\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER BE")
+    (->ucs             . #x0411)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0411)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER BE")))
+    (japanese-jisx0208-1978    #x27 #x22)      ; \e$(B'"\e(B
+    (chinese-gb2312            #x27 #x22)      ; \e$(A'"\e(B
+    (japanese-jisx0208         #x27 #x22)      ; \e$(B'"\e(B
+    (korean-ksc5601            #x2C #x22)      ; \e$(C,"\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER VE")
+    (ucs               . #x0412)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0432)
+    (cyrillic-iso8859-5 #x32)  ; \e-L²\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER VE")
+    (->ucs             . #x0412)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0412)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER VE")))
+    (japanese-jisx0208-1978    #x27 #x23)      ; \e$(B'#\e(B
+    (chinese-gb2312            #x27 #x23)      ; \e$(A'#\e(B
+    (japanese-jisx0208         #x27 #x23)      ; \e$(B'#\e(B
+    (korean-ksc5601            #x2C #x23)      ; \e$(C,#\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER GHE")
+    (ucs               . #x0413)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0433)
+    (cyrillic-iso8859-5 #x33)  ; \e-L³\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER GHE")
+    (->ucs             . #x0413)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0413)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER GHE")))
+    (japanese-jisx0208-1978    #x27 #x24)      ; \e$(B'$\e(B
+    (chinese-gb2312            #x27 #x24)      ; \e$(A'$\e(B
+    (japanese-jisx0208         #x27 #x24)      ; \e$(B'$\e(B
+    (korean-ksc5601            #x2C #x24)      ; \e$(C,$\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER DE")
+    (ucs               . #x0414)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0434)
+    (cyrillic-iso8859-5 #x34)  ; \e-L´\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER DE")
+    (->ucs             . #x0414)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0414)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER DE")))
+    (japanese-jisx0208-1978    #x27 #x25)      ; \e$(B'%\e(B
+    (chinese-gb2312            #x27 #x25)      ; \e$(A'%\e(B
+    (japanese-jisx0208         #x27 #x25)      ; \e$(B'%\e(B
+    (korean-ksc5601            #x2C #x25)      ; \e$(C,%\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER IE")
+    (ucs               . #x0415)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0435)
+    (cyrillic-iso8859-5 #x35)  ; \e-Lµ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER IE")
+    (->ucs             . #x0415)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0415)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER IE")))
+    (japanese-jisx0208-1978    #x27 #x26)      ; \e$(B'&\e(B
+    (chinese-gb2312            #x27 #x26)      ; \e$(A'&\e(B
+    (japanese-jisx0208         #x27 #x26)      ; \e$(B'&\e(B
+    (korean-ksc5601            #x2C #x26)      ; \e$(C,&\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER ZHE")
+    (ucs               . #x0416)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0436)
+    (cyrillic-iso8859-5 #x36)  ; \e-L¶\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER ZHE")
+    (->ucs             . #x0416)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0416)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER ZHE")))
+    (japanese-jisx0208-1978    #x27 #x28)      ; \e$(B'(\e(B
+    (chinese-gb2312            #x27 #x28)      ; \e$(A'(\e(B
+    (japanese-jisx0208         #x27 #x28)      ; \e$(B'(\e(B
+    (korean-ksc5601            #x2C #x28)      ; \e$(C,(\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER ZE")
+    (ucs               . #x0417)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0437)
+    (cyrillic-iso8859-5 #x37)  ; \e-L·\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER ZE")
+    (->ucs             . #x0417)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0417)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER ZE")))
+    (japanese-jisx0208-1978    #x27 #x29)      ; \e$(B')\e(B
+    (chinese-gb2312            #x27 #x29)      ; \e$(A')\e(B
+    (japanese-jisx0208         #x27 #x29)      ; \e$(B')\e(B
+    (korean-ksc5601            #x2C #x29)      ; \e$(C,)\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER I")
+    (ucs               . #x0418)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0438)
+    (cyrillic-iso8859-5 #x38)  ; \e-L¸\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER I")
+    (->ucs             . #x0418)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0418)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER I")))
+    (japanese-jisx0208-1978    #x27 #x2A)      ; \e$(B'*\e(B
+    (chinese-gb2312            #x27 #x2A)      ; \e$(A'*\e(B
+    (japanese-jisx0208         #x27 #x2A)      ; \e$(B'*\e(B
+    (korean-ksc5601            #x2C #x2A)      ; \e$(C,*\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER SHORT I")
+    (ucs               . #x0419)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0418 #x0306)
+    (->lowercase       #x0439)
+    (cyrillic-iso8859-5 #x39)  ; \e-L¹\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER SHORT I")
+    (->ucs             . #x0419)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0419)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER SHORT I")))
+    (japanese-jisx0208-1978    #x27 #x2B)      ; \e$(B'+\e(B
+    (chinese-gb2312            #x27 #x2B)      ; \e$(A'+\e(B
+    (japanese-jisx0208         #x27 #x2B)      ; \e$(B'+\e(B
+    (korean-ksc5601            #x2C #x2B)      ; \e$(C,+\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER KA")
+    (ucs               . #x041A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x043A)
+    (cyrillic-iso8859-5 #x3A)  ; \e-Lº\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER KA")
+    (->ucs             . #x041A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x041A)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER KA")))
+    (japanese-jisx0208-1978    #x27 #x2C)      ; \e$(B',\e(B
+    (chinese-gb2312            #x27 #x2C)      ; \e$(A',\e(B
+    (japanese-jisx0208         #x27 #x2C)      ; \e$(B',\e(B
+    (korean-ksc5601            #x2C #x2C)      ; \e$(C,,\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER EL")
+    (ucs               . #x041B)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x043B)
+    (cyrillic-iso8859-5 #x3B)  ; \e-L»\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER EL")
+    (->ucs             . #x041B)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x041B)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER EL")))
+    (japanese-jisx0208-1978    #x27 #x2D)      ; \e$(B'-\e(B
+    (chinese-gb2312            #x27 #x2D)      ; \e$(A'-\e(B
+    (japanese-jisx0208         #x27 #x2D)      ; \e$(B'-\e(B
+    (korean-ksc5601            #x2C #x2D)      ; \e$(C,-\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER EM")
+    (ucs               . #x041C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x043C)
+    (cyrillic-iso8859-5 #x3C)  ; \e-L¼\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER EM")
+    (->ucs             . #x041C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x041C)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER EM")))
+    (japanese-jisx0208-1978    #x27 #x2E)      ; \e$(B'.\e(B
+    (chinese-gb2312            #x27 #x2E)      ; \e$(A'.\e(B
+    (japanese-jisx0208         #x27 #x2E)      ; \e$(B'.\e(B
+    (korean-ksc5601            #x2C #x2E)      ; \e$(C,.\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER EN")
+    (ucs               . #x041D)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x043D)
+    (cyrillic-iso8859-5 #x3D)  ; \e-L½\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER EN")
+    (->ucs             . #x041D)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x041D)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER EN")))
+    (japanese-jisx0208-1978    #x27 #x2F)      ; \e$(B'/\e(B
+    (chinese-gb2312            #x27 #x2F)      ; \e$(A'/\e(B
+    (japanese-jisx0208         #x27 #x2F)      ; \e$(B'/\e(B
+    (korean-ksc5601            #x2C #x2F)      ; \e$(C,/\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER O")
+    (ucs               . #x041E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x043E)
+    (cyrillic-iso8859-5 #x3E)  ; \e-L¾\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER O")
+    (->ucs             . #x041E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x041E)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER O")))
+    (japanese-jisx0208-1978    #x27 #x30)      ; \e$(B'0\e(B
+    (chinese-gb2312            #x27 #x30)      ; \e$(A'0\e(B
+    (japanese-jisx0208         #x27 #x30)      ; \e$(B'0\e(B
+    (korean-ksc5601            #x2C #x30)      ; \e$(C,0\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER PE")
+    (ucs               . #x041F)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x043F)
+    (cyrillic-iso8859-5 #x3F)  ; \e-L¿\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER PE")
+    (->ucs             . #x041F)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x041F)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER PE")))
+    (japanese-jisx0208-1978    #x27 #x31)      ; \e$(B'1\e(B
+    (chinese-gb2312            #x27 #x31)      ; \e$(A'1\e(B
+    (japanese-jisx0208         #x27 #x31)      ; \e$(B'1\e(B
+    (korean-ksc5601            #x2C #x31)      ; \e$(C,1\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER ER")
+    (ucs               . #x0420)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0440)
+    (cyrillic-iso8859-5 #x40)  ; \e-LÀ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER ER")
+    (->ucs             . #x0420)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0420)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER ER")))
+    (japanese-jisx0208-1978    #x27 #x32)      ; \e$(B'2\e(B
+    (chinese-gb2312            #x27 #x32)      ; \e$(A'2\e(B
+    (japanese-jisx0208         #x27 #x32)      ; \e$(B'2\e(B
+    (korean-ksc5601            #x2C #x32)      ; \e$(C,2\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER ES")
+    (ucs               . #x0421)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0441)
+    (cyrillic-iso8859-5 #x41)  ; \e-LÁ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER ES")
+    (->ucs             . #x0421)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0421)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER ES")))
+    (japanese-jisx0208-1978    #x27 #x33)      ; \e$(B'3\e(B
+    (chinese-gb2312            #x27 #x33)      ; \e$(A'3\e(B
+    (japanese-jisx0208         #x27 #x33)      ; \e$(B'3\e(B
+    (korean-ksc5601            #x2C #x33)      ; \e$(C,3\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER TE")
+    (ucs               . #x0422)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0442)
+    (cyrillic-iso8859-5 #x42)  ; \e-LÂ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER TE")
+    (->ucs             . #x0422)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0422)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER TE")))
+    (japanese-jisx0208-1978    #x27 #x34)      ; \e$(B'4\e(B
+    (chinese-gb2312            #x27 #x34)      ; \e$(A'4\e(B
+    (japanese-jisx0208         #x27 #x34)      ; \e$(B'4\e(B
+    (korean-ksc5601            #x2C #x34)      ; \e$(C,4\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER U")
+    (ucs               . #x0423)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0443)
+    (cyrillic-iso8859-5 #x43)  ; \e-LÃ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER U")
+    (->ucs             . #x0423)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0423)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER U")))
+    (japanese-jisx0208-1978    #x27 #x35)      ; \e$(B'5\e(B
+    (chinese-gb2312            #x27 #x35)      ; \e$(A'5\e(B
+    (japanese-jisx0208         #x27 #x35)      ; \e$(B'5\e(B
+    (korean-ksc5601            #x2C #x35)      ; \e$(C,5\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER EF")
+    (ucs               . #x0424)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0444)
+    (cyrillic-iso8859-5 #x44)  ; \e-LÄ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER EF")
+    (->ucs             . #x0424)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0424)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER EF")))
+    (japanese-jisx0208-1978    #x27 #x36)      ; \e$(B'6\e(B
+    (chinese-gb2312            #x27 #x36)      ; \e$(A'6\e(B
+    (japanese-jisx0208         #x27 #x36)      ; \e$(B'6\e(B
+    (korean-ksc5601            #x2C #x36)      ; \e$(C,6\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER HA")
+    (ucs               . #x0425)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0445)
+    (cyrillic-iso8859-5 #x45)  ; \e-LÅ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER HA")
+    (->ucs             . #x0425)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0425)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER HA")))
+    (japanese-jisx0208-1978    #x27 #x37)      ; \e$(B'7\e(B
+    (chinese-gb2312            #x27 #x37)      ; \e$(A'7\e(B
+    (japanese-jisx0208         #x27 #x37)      ; \e$(B'7\e(B
+    (korean-ksc5601            #x2C #x37)      ; \e$(C,7\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER TSE")
+    (ucs               . #x0426)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0446)
+    (cyrillic-iso8859-5 #x46)  ; \e-LÆ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER TSE")
+    (->ucs             . #x0426)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0426)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER TSE")))
+    (japanese-jisx0208-1978    #x27 #x38)      ; \e$(B'8\e(B
+    (chinese-gb2312            #x27 #x38)      ; \e$(A'8\e(B
+    (japanese-jisx0208         #x27 #x38)      ; \e$(B'8\e(B
+    (korean-ksc5601            #x2C #x38)      ; \e$(C,8\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER CHE")
+    (ucs               . #x0427)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0447)
+    (cyrillic-iso8859-5 #x47)  ; \e-LÇ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER CHE")
+    (->ucs             . #x0427)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0427)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER CHE")))
+    (japanese-jisx0208-1978    #x27 #x39)      ; \e$(B'9\e(B
+    (chinese-gb2312            #x27 #x39)      ; \e$(A'9\e(B
+    (japanese-jisx0208         #x27 #x39)      ; \e$(B'9\e(B
+    (korean-ksc5601            #x2C #x39)      ; \e$(C,9\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER SHA")
+    (ucs               . #x0428)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0448)
+    (cyrillic-iso8859-5 #x48)  ; \e-LÈ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER SHA")
+    (->ucs             . #x0428)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0428)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER SHA")))
+    (japanese-jisx0208-1978    #x27 #x3A)      ; \e$(B':\e(B
+    (chinese-gb2312            #x27 #x3A)      ; \e$(A':\e(B
+    (japanese-jisx0208         #x27 #x3A)      ; \e$(B':\e(B
+    (korean-ksc5601            #x2C #x3A)      ; \e$(C,:\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER SHCHA")
+    (ucs               . #x0429)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0449)
+    (cyrillic-iso8859-5 #x49)  ; \e-LÉ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER SHCHA")
+    (->ucs             . #x0429)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0429)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER SHCHA")))
+    (japanese-jisx0208-1978    #x27 #x3B)      ; \e$(B';\e(B
+    (chinese-gb2312            #x27 #x3B)      ; \e$(A';\e(B
+    (japanese-jisx0208         #x27 #x3B)      ; \e$(B';\e(B
+    (korean-ksc5601            #x2C #x3B)      ; \e$(C,;\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER HARD SIGN")
+    (ucs               . #x042A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x044A)
+    (cyrillic-iso8859-5 #x4A)  ; \e-LÊ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER HARD SIGN")
+    (->ucs             . #x042A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x042A)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER HARD SIGN")))
+    (japanese-jisx0208-1978    #x27 #x3C)      ; \e$(B'<\e(B
+    (chinese-gb2312            #x27 #x3C)      ; \e$(A'<\e(B
+    (japanese-jisx0208         #x27 #x3C)      ; \e$(B'<\e(B
+    (korean-ksc5601            #x2C #x3C)      ; \e$(C,<\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER YERU")
+    (ucs               . #x042B)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x044B)
+    (cyrillic-iso8859-5 #x4B)  ; \e-LË\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER YERU")
+    (->ucs             . #x042B)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x042B)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER YERU")))
+    (japanese-jisx0208-1978    #x27 #x3D)      ; \e$(B'=\e(B
+    (chinese-gb2312            #x27 #x3D)      ; \e$(A'=\e(B
+    (japanese-jisx0208         #x27 #x3D)      ; \e$(B'=\e(B
+    (korean-ksc5601            #x2C #x3D)      ; \e$(C,=\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER SOFT SIGN")
+    (ucs               . #x042C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x044C)
+    (cyrillic-iso8859-5 #x4C)  ; \e-LÌ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER SOFT SIGN")
+    (->ucs             . #x042C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x042C)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER SOFT SIGN")))
+    (japanese-jisx0208-1978    #x27 #x3E)      ; \e$(B'>\e(B
+    (chinese-gb2312            #x27 #x3E)      ; \e$(A'>\e(B
+    (japanese-jisx0208         #x27 #x3E)      ; \e$(B'>\e(B
+    (korean-ksc5601            #x2C #x3E)      ; \e$(C,>\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER E")
+    (ucs               . #x042D)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x044D)
+    (cyrillic-iso8859-5 #x4D)  ; \e-LÍ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER E")
+    (->ucs             . #x042D)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x042D)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER E")))
+    (japanese-jisx0208-1978    #x27 #x3F)      ; \e$(B'?\e(B
+    (chinese-gb2312            #x27 #x3F)      ; \e$(A'?\e(B
+    (japanese-jisx0208         #x27 #x3F)      ; \e$(B'?\e(B
+    (korean-ksc5601            #x2C #x3F)      ; \e$(C,?\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER YU")
+    (ucs               . #x042E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x044E)
+    (cyrillic-iso8859-5 #x4E)  ; \e-LÎ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER YU")
+    (->ucs             . #x042E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x042E)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER YU")))
+    (japanese-jisx0208-1978    #x27 #x40)      ; \e$(B'@\e(B
+    (chinese-gb2312            #x27 #x40)      ; \e$(A'@\e(B
+    (japanese-jisx0208         #x27 #x40)      ; \e$(B'@\e(B
+    (korean-ksc5601            #x2C #x40)      ; \e$(C,@\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER YA")
+    (ucs               . #x042F)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x044F)
+    (cyrillic-iso8859-5 #x4F)  ; \e-LÏ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC CAPITAL LETTER YA")
+    (->ucs             . #x042F)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x042F)
+    (->lowercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER YA")))
+    (japanese-jisx0208-1978    #x27 #x41)      ; \e$(B'A\e(B
+    (chinese-gb2312            #x27 #x41)      ; \e$(A'A\e(B
+    (japanese-jisx0208         #x27 #x41)      ; \e$(B'A\e(B
+    (korean-ksc5601            #x2C #x41)      ; \e$(C,A\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER A")
+    (ucs               . #x0430)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0410)
+    (->titlecase       #x0410)
+    (cyrillic-iso8859-5 #x50)  ; \e-LÐ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER A")
+    (->ucs             . #x0430)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0430)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER A")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER A")))
+    (japanese-jisx0208-1978    #x27 #x51)      ; \e$(B'Q\e(B
+    (chinese-gb2312            #x27 #x51)      ; \e$(A'Q\e(B
+    (japanese-jisx0208         #x27 #x51)      ; \e$(B'Q\e(B
+    (korean-ksc5601            #x2C #x51)      ; \e$(C,Q\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER BE")
+    (ucs               . #x0431)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0411)
+    (->titlecase       #x0411)
+    (cyrillic-iso8859-5 #x51)  ; \e-LÑ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER BE")
+    (->ucs             . #x0431)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0431)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER BE")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER BE")))
+    (japanese-jisx0208-1978    #x27 #x52)      ; \e$(B'R\e(B
+    (chinese-gb2312            #x27 #x52)      ; \e$(A'R\e(B
+    (japanese-jisx0208         #x27 #x52)      ; \e$(B'R\e(B
+    (korean-ksc5601            #x2C #x52)      ; \e$(C,R\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER VE")
+    (ucs               . #x0432)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0412)
+    (->titlecase       #x0412)
+    (cyrillic-iso8859-5 #x52)  ; \e-LÒ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER VE")
+    (->ucs             . #x0432)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0432)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER VE")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER VE")))
+    (japanese-jisx0208-1978    #x27 #x53)      ; \e$(B'S\e(B
+    (chinese-gb2312            #x27 #x53)      ; \e$(A'S\e(B
+    (japanese-jisx0208         #x27 #x53)      ; \e$(B'S\e(B
+    (korean-ksc5601            #x2C #x53)      ; \e$(C,S\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER GHE")
+    (ucs               . #x0433)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0413)
+    (->titlecase       #x0413)
+    (cyrillic-iso8859-5 #x53)  ; \e-LÓ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER GHE")
+    (->ucs             . #x0433)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0433)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER GHE")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER GHE")))
+    (japanese-jisx0208-1978    #x27 #x54)      ; \e$(B'T\e(B
+    (chinese-gb2312            #x27 #x54)      ; \e$(A'T\e(B
+    (japanese-jisx0208         #x27 #x54)      ; \e$(B'T\e(B
+    (korean-ksc5601            #x2C #x54)      ; \e$(C,T\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER DE")
+    (ucs               . #x0434)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0414)
+    (->titlecase       #x0414)
+    (cyrillic-iso8859-5 #x54)  ; \e-LÔ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER DE")
+    (->ucs             . #x0434)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0434)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER DE")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER DE")))
+    (japanese-jisx0208-1978    #x27 #x55)      ; \e$(B'U\e(B
+    (chinese-gb2312            #x27 #x55)      ; \e$(A'U\e(B
+    (japanese-jisx0208         #x27 #x55)      ; \e$(B'U\e(B
+    (korean-ksc5601            #x2C #x55)      ; \e$(C,U\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER IE")
+    (ucs               . #x0435)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0415)
+    (->titlecase       #x0415)
+    (cyrillic-iso8859-5 #x55)  ; \e-LÕ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER IE")
+    (->ucs             . #x0435)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0435)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER IE")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER IE")))
+    (japanese-jisx0208-1978    #x27 #x56)      ; \e$(B'V\e(B
+    (chinese-gb2312            #x27 #x56)      ; \e$(A'V\e(B
+    (japanese-jisx0208         #x27 #x56)      ; \e$(B'V\e(B
+    (korean-ksc5601            #x2C #x56)      ; \e$(C,V\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER ZHE")
+    (ucs               . #x0436)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0416)
+    (->titlecase       #x0416)
+    (cyrillic-iso8859-5 #x56)  ; \e-LÖ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER ZHE")
+    (->ucs             . #x0436)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0436)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER ZHE")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER ZHE")))
+    (japanese-jisx0208-1978    #x27 #x58)      ; \e$(B'X\e(B
+    (chinese-gb2312            #x27 #x58)      ; \e$(A'X\e(B
+    (japanese-jisx0208         #x27 #x58)      ; \e$(B'X\e(B
+    (korean-ksc5601            #x2C #x58)      ; \e$(C,X\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER ZE")
+    (ucs               . #x0437)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0417)
+    (->titlecase       #x0417)
+    (cyrillic-iso8859-5 #x57)  ; \e-L×\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER ZE")
+    (->ucs             . #x0437)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0437)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER ZE")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER ZE")))
+    (japanese-jisx0208-1978    #x27 #x59)      ; \e$(B'Y\e(B
+    (chinese-gb2312            #x27 #x59)      ; \e$(A'Y\e(B
+    (japanese-jisx0208         #x27 #x59)      ; \e$(B'Y\e(B
+    (korean-ksc5601            #x2C #x59)      ; \e$(C,Y\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER I")
+    (ucs               . #x0438)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0418)
+    (->titlecase       #x0418)
+    (cyrillic-iso8859-5 #x58)  ; \e-LØ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER I")
+    (->ucs             . #x0438)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0438)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER I")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER I")))
+    (japanese-jisx0208-1978    #x27 #x5A)      ; \e$(B'Z\e(B
+    (chinese-gb2312            #x27 #x5A)      ; \e$(A'Z\e(B
+    (japanese-jisx0208         #x27 #x5A)      ; \e$(B'Z\e(B
+    (korean-ksc5601            #x2C #x5A)      ; \e$(C,Z\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER SHORT I")
+    (ucs               . #x0439)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0438 #x0306)
+    (->uppercase       #x0419)
+    (->titlecase       #x0419)
+    (cyrillic-iso8859-5 #x59)  ; \e-LÙ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER SHORT I")
+    (->ucs             . #x0439)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0439)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER SHORT I")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER SHORT I")))
+    (japanese-jisx0208-1978    #x27 #x5B)      ; \e$(B'[\e(B
+    (chinese-gb2312            #x27 #x5B)      ; \e$(A'[\e(B
+    (japanese-jisx0208         #x27 #x5B)      ; \e$(B'[\e(B
+    (korean-ksc5601            #x2C #x5B)      ; \e$(C,[\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER KA")
+    (ucs               . #x043A)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x041A)
+    (->titlecase       #x041A)
+    (cyrillic-iso8859-5 #x5A)  ; \e-LÚ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER KA")
+    (->ucs             . #x043A)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x043A)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER KA")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER KA")))
+    (japanese-jisx0208-1978    #x27 #x5C)      ; \e$(B'\\e(B
+    (chinese-gb2312            #x27 #x5C)      ; \e$(A'\\e(B
+    (japanese-jisx0208         #x27 #x5C)      ; \e$(B'\\e(B
+    (korean-ksc5601            #x2C #x5C)      ; \e$(C,\\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER EL")
+    (ucs               . #x043B)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x041B)
+    (->titlecase       #x041B)
+    (cyrillic-iso8859-5 #x5B)  ; \e-LÛ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER EL")
+    (->ucs             . #x043B)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x043B)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER EL")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER EL")))
+    (japanese-jisx0208-1978    #x27 #x5D)      ; \e$(B']\e(B
+    (chinese-gb2312            #x27 #x5D)      ; \e$(A']\e(B
+    (japanese-jisx0208         #x27 #x5D)      ; \e$(B']\e(B
+    (korean-ksc5601            #x2C #x5D)      ; \e$(C,]\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER EM")
+    (ucs               . #x043C)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x041C)
+    (->titlecase       #x041C)
+    (cyrillic-iso8859-5 #x5C)  ; \e-LÜ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER EM")
+    (->ucs             . #x043C)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x043C)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER EM")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER EM")))
+    (japanese-jisx0208-1978    #x27 #x5E)      ; \e$(B'^\e(B
+    (chinese-gb2312            #x27 #x5E)      ; \e$(A'^\e(B
+    (japanese-jisx0208         #x27 #x5E)      ; \e$(B'^\e(B
+    (korean-ksc5601            #x2C #x5E)      ; \e$(C,^\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER EN")
+    (ucs               . #x043D)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x041D)
+    (->titlecase       #x041D)
+    (cyrillic-iso8859-5 #x5D)  ; \e-LÝ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER EN")
+    (->ucs             . #x043D)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x043D)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER EN")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER EN")))
+    (japanese-jisx0208-1978    #x27 #x5F)      ; \e$(B'_\e(B
+    (chinese-gb2312            #x27 #x5F)      ; \e$(A'_\e(B
+    (japanese-jisx0208         #x27 #x5F)      ; \e$(B'_\e(B
+    (korean-ksc5601            #x2C #x5F)      ; \e$(C,_\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER O")
+    (ucs               . #x043E)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x041E)
+    (->titlecase       #x041E)
+    (cyrillic-iso8859-5 #x5E)  ; \e-LÞ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER O")
+    (->ucs             . #x043E)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x043E)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER O")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER O")))
+    (japanese-jisx0208-1978    #x27 #x60)      ; \e$(B'`\e(B
+    (chinese-gb2312            #x27 #x60)      ; \e$(A'`\e(B
+    (japanese-jisx0208         #x27 #x60)      ; \e$(B'`\e(B
+    (korean-ksc5601            #x2C #x60)      ; \e$(C,`\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER PE")
+    (ucs               . #x043F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x041F)
+    (->titlecase       #x041F)
+    (cyrillic-iso8859-5 #x5F)  ; \e-Lß\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER PE")
+    (->ucs             . #x043F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x043F)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER PE")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER PE")))
+    (japanese-jisx0208-1978    #x27 #x61)      ; \e$(B'a\e(B
+    (chinese-gb2312            #x27 #x61)      ; \e$(A'a\e(B
+    (japanese-jisx0208         #x27 #x61)      ; \e$(B'a\e(B
+    (korean-ksc5601            #x2C #x61)      ; \e$(C,a\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER ER")
+    (ucs               . #x0440)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0420)
+    (->titlecase       #x0420)
+    (cyrillic-iso8859-5 #x60)  ; \e-Là\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER ER")
+    (->ucs             . #x0440)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0440)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER ER")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER ER")))
+    (japanese-jisx0208-1978    #x27 #x62)      ; \e$(B'b\e(B
+    (chinese-gb2312            #x27 #x62)      ; \e$(A'b\e(B
+    (japanese-jisx0208         #x27 #x62)      ; \e$(B'b\e(B
+    (korean-ksc5601            #x2C #x62)      ; \e$(C,b\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER ES")
+    (ucs               . #x0441)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0421)
+    (->titlecase       #x0421)
+    (cyrillic-iso8859-5 #x61)  ; \e-Lá\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER ES")
+    (->ucs             . #x0441)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0441)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER ES")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER ES")))
+    (japanese-jisx0208-1978    #x27 #x63)      ; \e$(B'c\e(B
+    (chinese-gb2312            #x27 #x63)      ; \e$(A'c\e(B
+    (japanese-jisx0208         #x27 #x63)      ; \e$(B'c\e(B
+    (korean-ksc5601            #x2C #x63)      ; \e$(C,c\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER TE")
+    (ucs               . #x0442)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0422)
+    (->titlecase       #x0422)
+    (cyrillic-iso8859-5 #x62)  ; \e-Lâ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER TE")
+    (->ucs             . #x0442)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0442)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER TE")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER TE")))
+    (japanese-jisx0208-1978    #x27 #x64)      ; \e$(B'd\e(B
+    (chinese-gb2312            #x27 #x64)      ; \e$(A'd\e(B
+    (japanese-jisx0208         #x27 #x64)      ; \e$(B'd\e(B
+    (korean-ksc5601            #x2C #x64)      ; \e$(C,d\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER U")
+    (ucs               . #x0443)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0423)
+    (->titlecase       #x0423)
+    (cyrillic-iso8859-5 #x63)  ; \e-Lã\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER U")
+    (->ucs             . #x0443)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0443)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER U")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER U")))
+    (japanese-jisx0208-1978    #x27 #x65)      ; \e$(B'e\e(B
+    (chinese-gb2312            #x27 #x65)      ; \e$(A'e\e(B
+    (japanese-jisx0208         #x27 #x65)      ; \e$(B'e\e(B
+    (korean-ksc5601            #x2C #x65)      ; \e$(C,e\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER EF")
+    (ucs               . #x0444)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0424)
+    (->titlecase       #x0424)
+    (cyrillic-iso8859-5 #x64)  ; \e-Lä\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER EF")
+    (->ucs             . #x0444)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0444)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER EF")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER EF")))
+    (japanese-jisx0208-1978    #x27 #x66)      ; \e$(B'f\e(B
+    (chinese-gb2312            #x27 #x66)      ; \e$(A'f\e(B
+    (japanese-jisx0208         #x27 #x66)      ; \e$(B'f\e(B
+    (korean-ksc5601            #x2C #x66)      ; \e$(C,f\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER HA")
+    (ucs               . #x0445)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0425)
+    (->titlecase       #x0425)
+    (cyrillic-iso8859-5 #x65)  ; \e-Lå\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER HA")
+    (->ucs             . #x0445)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0445)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER HA")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER HA")))
+    (japanese-jisx0208-1978    #x27 #x67)      ; \e$(B'g\e(B
+    (chinese-gb2312            #x27 #x67)      ; \e$(A'g\e(B
+    (japanese-jisx0208         #x27 #x67)      ; \e$(B'g\e(B
+    (korean-ksc5601            #x2C #x67)      ; \e$(C,g\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER TSE")
+    (ucs               . #x0446)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0426)
+    (->titlecase       #x0426)
+    (cyrillic-iso8859-5 #x66)  ; \e-Læ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER TSE")
+    (->ucs             . #x0446)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0446)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER TSE")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER TSE")))
+    (japanese-jisx0208-1978    #x27 #x68)      ; \e$(B'h\e(B
+    (chinese-gb2312            #x27 #x68)      ; \e$(A'h\e(B
+    (japanese-jisx0208         #x27 #x68)      ; \e$(B'h\e(B
+    (korean-ksc5601            #x2C #x68)      ; \e$(C,h\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER CHE")
+    (ucs               . #x0447)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0427)
+    (->titlecase       #x0427)
+    (cyrillic-iso8859-5 #x67)  ; \e-Lç\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER CHE")
+    (->ucs             . #x0447)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0447)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER CHE")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER CHE")))
+    (japanese-jisx0208-1978    #x27 #x69)      ; \e$(B'i\e(B
+    (chinese-gb2312            #x27 #x69)      ; \e$(A'i\e(B
+    (japanese-jisx0208         #x27 #x69)      ; \e$(B'i\e(B
+    (korean-ksc5601            #x2C #x69)      ; \e$(C,i\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER SHA")
+    (ucs               . #x0448)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0428)
+    (->titlecase       #x0428)
+    (cyrillic-iso8859-5 #x68)  ; \e-Lè\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER SHA")
+    (->ucs             . #x0448)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0448)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER SHA")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER SHA")))
+    (japanese-jisx0208-1978    #x27 #x6A)      ; \e$(B'j\e(B
+    (chinese-gb2312            #x27 #x6A)      ; \e$(A'j\e(B
+    (japanese-jisx0208         #x27 #x6A)      ; \e$(B'j\e(B
+    (korean-ksc5601            #x2C #x6A)      ; \e$(C,j\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER SHCHA")
+    (ucs               . #x0449)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0429)
+    (->titlecase       #x0429)
+    (cyrillic-iso8859-5 #x69)  ; \e-Lé\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER SHCHA")
+    (->ucs             . #x0449)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0449)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER SHCHA")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER SHCHA")))
+    (japanese-jisx0208-1978    #x27 #x6B)      ; \e$(B'k\e(B
+    (chinese-gb2312            #x27 #x6B)      ; \e$(A'k\e(B
+    (japanese-jisx0208         #x27 #x6B)      ; \e$(B'k\e(B
+    (korean-ksc5601            #x2C #x6B)      ; \e$(C,k\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER HARD SIGN")
+    (ucs               . #x044A)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x042A)
+    (->titlecase       #x042A)
+    (cyrillic-iso8859-5 #x6A)  ; \e-Lê\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER HARD SIGN")
+    (->ucs             . #x044A)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x044A)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER HARD SIGN")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER HARD SIGN")))
+    (japanese-jisx0208-1978    #x27 #x6C)      ; \e$(B'l\e(B
+    (chinese-gb2312            #x27 #x6C)      ; \e$(A'l\e(B
+    (japanese-jisx0208         #x27 #x6C)      ; \e$(B'l\e(B
+    (korean-ksc5601            #x2C #x6C)      ; \e$(C,l\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER YERU")
+    (ucs               . #x044B)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x042B)
+    (->titlecase       #x042B)
+    (cyrillic-iso8859-5 #x6B)  ; \e-Lë\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER YERU")
+    (->ucs             . #x044B)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x044B)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER YERU")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER YERU")))
+    (japanese-jisx0208-1978    #x27 #x6D)      ; \e$(B'm\e(B
+    (chinese-gb2312            #x27 #x6D)      ; \e$(A'm\e(B
+    (japanese-jisx0208         #x27 #x6D)      ; \e$(B'm\e(B
+    (korean-ksc5601            #x2C #x6D)      ; \e$(C,m\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER SOFT SIGN")
+    (ucs               . #x044C)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x042C)
+    (->titlecase       #x042C)
+    (cyrillic-iso8859-5 #x6C)  ; \e-Lì\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER SOFT SIGN")
+    (->ucs             . #x044C)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x044C)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER SOFT SIGN")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER SOFT SIGN")))
+    (japanese-jisx0208-1978    #x27 #x6E)      ; \e$(B'n\e(B
+    (chinese-gb2312            #x27 #x6E)      ; \e$(A'n\e(B
+    (japanese-jisx0208         #x27 #x6E)      ; \e$(B'n\e(B
+    (korean-ksc5601            #x2C #x6E)      ; \e$(C,n\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER E")
+    (ucs               . #x044D)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x042D)
+    (->titlecase       #x042D)
+    (cyrillic-iso8859-5 #x6D)  ; \e-Lí\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER E")
+    (->ucs             . #x044D)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x044D)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER E")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER E")))
+    (japanese-jisx0208-1978    #x27 #x6F)      ; \e$(B'o\e(B
+    (chinese-gb2312            #x27 #x6F)      ; \e$(A'o\e(B
+    (japanese-jisx0208         #x27 #x6F)      ; \e$(B'o\e(B
+    (korean-ksc5601            #x2C #x6F)      ; \e$(C,o\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER YU")
+    (ucs               . #x044E)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x042E)
+    (->titlecase       #x042E)
+    (cyrillic-iso8859-5 #x6E)  ; \e-Lî\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER YU")
+    (->ucs             . #x044E)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x044E)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER YU")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER YU")))
+    (japanese-jisx0208-1978    #x27 #x70)      ; \e$(B'p\e(B
+    (chinese-gb2312            #x27 #x70)      ; \e$(A'p\e(B
+    (japanese-jisx0208         #x27 #x70)      ; \e$(B'p\e(B
+    (korean-ksc5601            #x2C #x70)      ; \e$(C,p\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER YA")
+    (ucs               . #x044F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x042F)
+    (->titlecase       #x042F)
+    (cyrillic-iso8859-5 #x6F)  ; \e-Lï\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER YA")
+    (->ucs             . #x044F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x044F)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER YA")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER YA")))
+    (japanese-jisx0208-1978    #x27 #x71)      ; \e$(B'q\e(B
+    (chinese-gb2312            #x27 #x71)      ; \e$(A'q\e(B
+    (japanese-jisx0208         #x27 #x71)      ; \e$(B'q\e(B
+    (korean-ksc5601            #x2C #x71)      ; \e$(C,q\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER IE WITH GRAVE")
+    (ucs               . #x0450)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0435 #x0300)
+    (->uppercase       #x0400)
+    (->titlecase       #x0400)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER IO")
+    (ucs               . #x0451)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0435 #x0308)
+    (->uppercase       #x0401)
+    (->titlecase       #x0401)
+    (cyrillic-iso8859-5 #x71)  ; \e-Lñ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER IO")
+    (->ucs             . #x0451)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0451)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER IO")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER IO")))
+    (japanese-jisx0208-1978    #x27 #x57)      ; \e$(B'W\e(B
+    (chinese-gb2312            #x27 #x57)      ; \e$(A'W\e(B
+    (japanese-jisx0208         #x27 #x57)      ; \e$(B'W\e(B
+    (korean-ksc5601            #x2C #x57)      ; \e$(C,W\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER DJE")
+    (ucs               . #x0452)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Serbocroatian")
+    (->uppercase       #x0402)
+    (->titlecase       #x0402)
+    (cyrillic-iso8859-5 #x72)  ; \e-Lò\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER DJE")
+    (->ucs             . #x0452)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Serbocroatian")
+    (->decomposition   wide #x0452)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER DJE")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER DJE")))
+    (japanese-jisx0212 #x27 #x72)      ; \e$(D'r\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER GJE")
+    (ucs               . #x0453)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0433 #x0301)
+    (->uppercase       #x0403)
+    (->titlecase       #x0403)
+    (cyrillic-iso8859-5 #x73)  ; \e-Ló\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER GJE")
+    (->ucs             . #x0453)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0453)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER GJE")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER GJE")))
+    (japanese-jisx0212 #x27 #x73)      ; \e$(D's\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER UKRAINIAN IE")
+    (ucs               . #x0454)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0404)
+    (->titlecase       #x0404)
+    (cyrillic-iso8859-5 #x74)  ; \e-Lô\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER UKRAINIAN IE")
+    (->ucs             . #x0454)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0454)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER UKRAINIAN IE")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER UKRAINIAN IE")))
+    (japanese-jisx0212 #x27 #x74)      ; \e$(D't\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER DZE")
+    (ucs               . #x0455)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0405)
+    (->titlecase       #x0405)
+    (cyrillic-iso8859-5 #x75)  ; \e-Lõ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER DZE")
+    (->ucs             . #x0455)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0455)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER DZE")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER DZE")))
+    (japanese-jisx0212 #x27 #x75)      ; \e$(D'u\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I")
+    (ucs               . #x0456)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0406)
+    (->titlecase       #x0406)
+    (cyrillic-iso8859-5 #x76)  ; \e-Lö\e-A
+    ))
+(define-char
+  '((name . "FULLWIDTH CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I")
+    (->ucs             . #x0456)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0456)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I")))
+    (japanese-jisx0212 #x27 #x76)      ; \e$(D'v\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER YI")
+    (ucs               . #x0457)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Ukrainian")
+    (->decomposition   #x0456 #x0308)
+    (->uppercase       #x0407)
+    (->titlecase       #x0407)
+    (cyrillic-iso8859-5 #x77)  ; \e-L÷\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER YI")
+    (->ucs             . #x0457)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Ukrainian")
+    (->decomposition   wide #x0457)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER YI")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER YI")))
+    (japanese-jisx0212 #x27 #x77)      ; \e$(D'w\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER JE")
+    (ucs               . #x0458)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0408)
+    (->titlecase       #x0408)
+    (cyrillic-iso8859-5 #x78)  ; \e-Lø\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER JE")
+    (->ucs             . #x0458)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0458)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER JE")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER JE")))
+    (japanese-jisx0212 #x27 #x78)      ; \e$(D'x\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER LJE")
+    (ucs               . #x0459)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0409)
+    (->titlecase       #x0409)
+    (cyrillic-iso8859-5 #x79)  ; \e-Lù\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER LJE")
+    (->ucs             . #x0459)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x0459)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER LJE")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER LJE")))
+    (japanese-jisx0212 #x27 #x79)      ; \e$(D'y\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER NJE")
+    (ucs               . #x045A)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x040A)
+    (->titlecase       #x040A)
+    (cyrillic-iso8859-5 #x7A)  ; \e-Lú\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER NJE")
+    (->ucs             . #x045A)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x045A)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER NJE")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER NJE")))
+    (japanese-jisx0212 #x27 #x7A)      ; \e$(D'z\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER TSHE")
+    (ucs               . #x045B)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Serbocroatian")
+    (->uppercase       #x040B)
+    (->titlecase       #x040B)
+    (cyrillic-iso8859-5 #x7B)  ; \e-Lû\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER TSHE")
+    (->ucs             . #x045B)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Serbocroatian")
+    (->decomposition   wide #x045B)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER TSHE")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER TSHE")))
+    (japanese-jisx0212 #x27 #x7B)      ; \e$(D'{\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER KJE")
+    (ucs               . #x045C)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x043A #x0301)
+    (->uppercase       #x040C)
+    (->titlecase       #x040C)
+    (cyrillic-iso8859-5 #x7C)  ; \e-Lü\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER KJE")
+    (->ucs             . #x045C)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x045C)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER KJE")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC SMALL LETTER KJE")))
+    (japanese-jisx0212 #x27 #x7C)      ; \e$(D'|\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER I WITH GRAVE")
+    (ucs               . #x045D)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0438 #x0300)
+    (->uppercase       #x040D)
+    (->titlecase       #x040D)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER SHORT U")
+    (ucs               . #x045E)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Byelorussian")
+    (->decomposition   #x0443 #x0306)
+    (->uppercase       #x040E)
+    (->titlecase       #x040E)
+    (cyrillic-iso8859-5 #x7E)  ; \e-Lþ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER SHORT U")
+    (->ucs             . #x045E)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Byelorussian")
+    (->decomposition   wide #x045E)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER SHORT U")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER SHORT U")))
+    (japanese-jisx0212 #x27 #x7D)      ; \e$(D'}\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER DZHE")
+    (ucs               . #x045F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x040F)
+    (->titlecase       #x040F)
+    (cyrillic-iso8859-5 #x7F)  ; \e-Lÿ\e-A
+    ))
+(define-char
+  '((name              . "FULLWIDTH CYRILLIC SMALL LETTER DZHE")
+    (->ucs             . #x045F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x045F)
+    (->uppercase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER DZHE")))
+    (->titlecase
+     ((name . "FULLWIDTH CYRILLIC CAPITAL LETTER DZHE")))
+    (japanese-jisx0212 #x27 #x7E)      ; \e$(D'~\e(B
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER OMEGA")
+    (ucs               . #x0460)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0461)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER OMEGA")
+    (ucs               . #x0461)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0460)
+    (->titlecase       #x0460)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER YAT")
+    (ucs               . #x0462)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0463)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER YAT")
+    (ucs               . #x0463)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0462)
+    (->titlecase       #x0462)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER IOTIFIED E")
+    (ucs               . #x0464)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0465)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER IOTIFIED E")
+    (ucs               . #x0465)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0464)
+    (->titlecase       #x0464)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER LITTLE YUS")
+    (ucs               . #x0466)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0467)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER LITTLE YUS")
+    (ucs               . #x0467)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0466)
+    (->titlecase       #x0466)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER IOTIFIED LITTLE YUS")
+    (ucs               . #x0468)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0469)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER IOTIFIED LITTLE YUS")
+    (ucs               . #x0469)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0468)
+    (->titlecase       #x0468)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER BIG YUS")
+    (ucs               . #x046A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x046B)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER BIG YUS")
+    (ucs               . #x046B)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x046A)
+    (->titlecase       #x046A)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER IOTIFIED BIG YUS")
+    (ucs               . #x046C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x046D)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER IOTIFIED BIG YUS")
+    (ucs               . #x046D)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x046C)
+    (->titlecase       #x046C)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER KSI")
+    (ucs               . #x046E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x046F)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER KSI")
+    (ucs               . #x046F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x046E)
+    (->titlecase       #x046E)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER PSI")
+    (ucs               . #x0470)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0471)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER PSI")
+    (ucs               . #x0471)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0470)
+    (->titlecase       #x0470)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER FITA")
+    (ucs               . #x0472)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0473)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER FITA")
+    (ucs               . #x0473)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0472)
+    (->titlecase       #x0472)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER IZHITSA")
+    (ucs               . #x0474)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0475)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER IZHITSA")
+    (ucs               . #x0475)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0474)
+    (->titlecase       #x0474)
+    ))
+(define-char
+  '((name . "CYRILLIC CAPITAL LETTER IZHITSA WITH DOUBLE GRAVE ACCENT")
+    (ucs               . #x0476)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0474 #x030F)
+    (->lowercase       #x0477)
+    ))
+(define-char
+  '((name . "CYRILLIC SMALL LETTER IZHITSA WITH DOUBLE GRAVE ACCENT")
+    (ucs               . #x0477)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0475 #x030F)
+    (->uppercase       #x0476)
+    (->titlecase       #x0476)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER UK")
+    (ucs               . #x0478)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0479)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER UK")
+    (ucs               . #x0479)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0478)
+    (->titlecase       #x0478)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER ROUND OMEGA")
+    (ucs               . #x047A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x047B)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER ROUND OMEGA")
+    (ucs               . #x047B)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x047A)
+    (->titlecase       #x047A)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER OMEGA WITH TITLO")
+    (ucs               . #x047C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x047D)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER OMEGA WITH TITLO")
+    (ucs               . #x047D)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x047C)
+    (->titlecase       #x047C)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER OT")
+    (ucs               . #x047E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x047F)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER OT")
+    (ucs               . #x047F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x047E)
+    (->titlecase       #x047E)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER KOPPA")
+    (ucs               . #x0480)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0481)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER KOPPA")
+    (ucs               . #x0481)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0480)
+    (->titlecase       #x0480)
+    ))
+(define-char
+  '((name              . "CYRILLIC THOUSANDS SIGN")
+    (ucs               . #x0482)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING CYRILLIC TITLO")
+    (ucs               . #x0483)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING CYRILLIC PALATALIZATION")
+    (ucs               . #x0484)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING CYRILLIC DASIA PNEUMATA")
+    (ucs               . #x0485)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING CYRILLIC PSILI PNEUMATA")
+    (ucs               . #x0486)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING CYRILLIC HUNDRED THOUSANDS SIGN")
+    (ucs               . #x0488)
+    (general-category  mark enclosing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING CYRILLIC MILLIONS SIGN")
+    (ucs               . #x0489)
+    (general-category  mark enclosing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER SEMISOFT SIGN")
+    (ucs               . #x048C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x048D)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER SEMISOFT SIGN")
+    (ucs               . #x048D)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x048C)
+    (->titlecase       #x048C)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER ER WITH TICK")
+    (ucs               . #x048E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x048F)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER ER WITH TICK")
+    (ucs               . #x048F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x048E)
+    (->titlecase       #x048E)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER GHE WITH UPTURN")
+    (ucs               . #x0490)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0491)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER GHE WITH UPTURN")
+    (ucs               . #x0491)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0490)
+    (->titlecase       #x0490)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER GHE WITH STROKE")
+    (ucs               . #x0492)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0493)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER GHE WITH STROKE")
+    (ucs               . #x0493)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0492)
+    (->titlecase       #x0492)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER GHE WITH MIDDLE HOOK")
+    (ucs               . #x0494)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0495)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER GHE WITH MIDDLE HOOK")
+    (ucs               . #x0495)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0494)
+    (->titlecase       #x0494)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER ZHE WITH DESCENDER")
+    (ucs               . #x0496)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0497)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER ZHE WITH DESCENDER")
+    (ucs               . #x0497)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0496)
+    (->titlecase       #x0496)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER ZE WITH DESCENDER")
+    (ucs               . #x0498)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0499)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER ZE WITH DESCENDER")
+    (ucs               . #x0499)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0498)
+    (->titlecase       #x0498)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER KA WITH DESCENDER")
+    (ucs               . #x049A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x049B)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER KA WITH DESCENDER")
+    (ucs               . #x049B)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x049A)
+    (->titlecase       #x049A)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER KA WITH VERTICAL STROKE")
+    (ucs               . #x049C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x049D)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER KA WITH VERTICAL STROKE")
+    (ucs               . #x049D)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x049C)
+    (->titlecase       #x049C)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER KA WITH STROKE")
+    (ucs               . #x049E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x049F)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER KA WITH STROKE")
+    (ucs               . #x049F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x049E)
+    (->titlecase       #x049E)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER BASHKIR KA")
+    (ucs               . #x04A0)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x04A1)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER BASHKIR KA")
+    (ucs               . #x04A1)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x04A0)
+    (->titlecase       #x04A0)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER EN WITH DESCENDER")
+    (ucs               . #x04A2)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x04A3)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER EN WITH DESCENDER")
+    (ucs               . #x04A3)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x04A2)
+    (->titlecase       #x04A2)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LIGATURE EN GHE")
+    (ucs               . #x04A4)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x04A5)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LIGATURE EN GHE")
+    (ucs               . #x04A5)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x04A4)
+    (->titlecase       #x04A4)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER PE WITH MIDDLE HOOK")
+    (ucs               . #x04A6)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Abkhasian")
+    (->lowercase       #x04A7)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER PE WITH MIDDLE HOOK")
+    (ucs               . #x04A7)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Abkhasian")
+    (->uppercase       #x04A6)
+    (->titlecase       #x04A6)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER ABKHASIAN HA")
+    (ucs               . #x04A8)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x04A9)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER ABKHASIAN HA")
+    (ucs               . #x04A9)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x04A8)
+    (->titlecase       #x04A8)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER ES WITH DESCENDER")
+    (ucs               . #x04AA)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x04AB)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER ES WITH DESCENDER")
+    (ucs               . #x04AB)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x04AA)
+    (->titlecase       #x04AA)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER TE WITH DESCENDER")
+    (ucs               . #x04AC)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x04AD)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER TE WITH DESCENDER")
+    (ucs               . #x04AD)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x04AC)
+    (->titlecase       #x04AC)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER STRAIGHT U")
+    (ucs               . #x04AE)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x04AF)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER STRAIGHT U")
+    (ucs               . #x04AF)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x04AE)
+    (->titlecase       #x04AE)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER STRAIGHT U WITH STROKE")
+    (ucs               . #x04B0)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x04B1)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER STRAIGHT U WITH STROKE")
+    (ucs               . #x04B1)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x04B0)
+    (->titlecase       #x04B0)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER HA WITH DESCENDER")
+    (ucs               . #x04B2)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x04B3)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER HA WITH DESCENDER")
+    (ucs               . #x04B3)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x04B2)
+    (->titlecase       #x04B2)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LIGATURE TE TSE")
+    (ucs               . #x04B4)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Abkhasian")
+    (->lowercase       #x04B5)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LIGATURE TE TSE")
+    (ucs               . #x04B5)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Abkhasian")
+    (->uppercase       #x04B4)
+    (->titlecase       #x04B4)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER CHE WITH DESCENDER")
+    (ucs               . #x04B6)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x04B7)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER CHE WITH DESCENDER")
+    (ucs               . #x04B7)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x04B6)
+    (->titlecase       #x04B6)
+    ))
+(define-char
+  '((name . "CYRILLIC CAPITAL LETTER CHE WITH VERTICAL STROKE")
+    (ucs               . #x04B8)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x04B9)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER CHE WITH VERTICAL STROKE")
+    (ucs               . #x04B9)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x04B8)
+    (->titlecase       #x04B8)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER SHHA")
+    (ucs               . #x04BA)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x04BB)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER SHHA")
+    (ucs               . #x04BB)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x04BA)
+    (->titlecase       #x04BA)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER ABKHASIAN CHE")
+    (ucs               . #x04BC)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x04BD)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER ABKHASIAN CHE")
+    (ucs               . #x04BD)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x04BC)
+    (->titlecase       #x04BC)
+    ))
+(define-char
+  '((name . "CYRILLIC CAPITAL LETTER ABKHASIAN CHE WITH DESCENDER")
+    (ucs               . #x04BE)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x04BF)
+    ))
+(define-char
+  '((name . "CYRILLIC SMALL LETTER ABKHASIAN CHE WITH DESCENDER")
+    (ucs               . #x04BF)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x04BE)
+    (->titlecase       #x04BE)
+    ))
+(define-char
+  '((name              . "CYRILLIC LETTER PALOCHKA")
+    (ucs               . #x04C0)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER ZHE WITH BREVE")
+    (ucs               . #x04C1)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0416 #x0306)
+    (->lowercase       #x04C2)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER ZHE WITH BREVE")
+    (ucs               . #x04C2)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0436 #x0306)
+    (->uppercase       #x04C1)
+    (->titlecase       #x04C1)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER KA WITH HOOK")
+    (ucs               . #x04C3)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x04C4)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER KA WITH HOOK")
+    (ucs               . #x04C4)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x04C3)
+    (->titlecase       #x04C3)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER EN WITH HOOK")
+    (ucs               . #x04C7)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x04C8)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER EN WITH HOOK")
+    (ucs               . #x04C8)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x04C7)
+    (->titlecase       #x04C7)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER KHAKASSIAN CHE")
+    (ucs               . #x04CB)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x04CC)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER KHAKASSIAN CHE")
+    (ucs               . #x04CC)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x04CB)
+    (->titlecase       #x04CB)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER A WITH BREVE")
+    (ucs               . #x04D0)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0410 #x0306)
+    (->lowercase       #x04D1)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER A WITH BREVE")
+    (ucs               . #x04D1)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0430 #x0306)
+    (->uppercase       #x04D0)
+    (->titlecase       #x04D0)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER A WITH DIAERESIS")
+    (ucs               . #x04D2)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0410 #x0308)
+    (->lowercase       #x04D3)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER A WITH DIAERESIS")
+    (ucs               . #x04D3)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0430 #x0308)
+    (->uppercase       #x04D2)
+    (->titlecase       #x04D2)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LIGATURE A IE")
+    (ucs               . #x04D4)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x04D5)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LIGATURE A IE")
+    (ucs               . #x04D5)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x04D4)
+    (->titlecase       #x04D4)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER IE WITH BREVE")
+    (ucs               . #x04D6)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0415 #x0306)
+    (->lowercase       #x04D7)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER IE WITH BREVE")
+    (ucs               . #x04D7)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0435 #x0306)
+    (->uppercase       #x04D6)
+    (->titlecase       #x04D6)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER SCHWA")
+    (ucs               . #x04D8)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x04D9)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER SCHWA")
+    (ucs               . #x04D9)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x04D8)
+    (->titlecase       #x04D8)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER SCHWA WITH DIAERESIS")
+    (ucs               . #x04DA)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x04D8 #x0308)
+    (->lowercase       #x04DB)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER SCHWA WITH DIAERESIS")
+    (ucs               . #x04DB)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x04D9 #x0308)
+    (->uppercase       #x04DA)
+    (->titlecase       #x04DA)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER ZHE WITH DIAERESIS")
+    (ucs               . #x04DC)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0416 #x0308)
+    (->lowercase       #x04DD)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER ZHE WITH DIAERESIS")
+    (ucs               . #x04DD)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0436 #x0308)
+    (->uppercase       #x04DC)
+    (->titlecase       #x04DC)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER ZE WITH DIAERESIS")
+    (ucs               . #x04DE)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0417 #x0308)
+    (->lowercase       #x04DF)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER ZE WITH DIAERESIS")
+    (ucs               . #x04DF)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0437 #x0308)
+    (->uppercase       #x04DE)
+    (->titlecase       #x04DE)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER ABKHASIAN DZE")
+    (ucs               . #x04E0)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x04E1)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER ABKHASIAN DZE")
+    (ucs               . #x04E1)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x04E0)
+    (->titlecase       #x04E0)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER I WITH MACRON")
+    (ucs               . #x04E2)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0418 #x0304)
+    (->lowercase       #x04E3)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER I WITH MACRON")
+    (ucs               . #x04E3)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0438 #x0304)
+    (->uppercase       #x04E2)
+    (->titlecase       #x04E2)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER I WITH DIAERESIS")
+    (ucs               . #x04E4)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0418 #x0308)
+    (->lowercase       #x04E5)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER I WITH DIAERESIS")
+    (ucs               . #x04E5)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0438 #x0308)
+    (->uppercase       #x04E4)
+    (->titlecase       #x04E4)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER O WITH DIAERESIS")
+    (ucs               . #x04E6)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x041E #x0308)
+    (->lowercase       #x04E7)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER O WITH DIAERESIS")
+    (ucs               . #x04E7)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x043E #x0308)
+    (->uppercase       #x04E6)
+    (->titlecase       #x04E6)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER BARRED O")
+    (ucs               . #x04E8)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x04E9)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER BARRED O")
+    (ucs               . #x04E9)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x04E8)
+    (->titlecase       #x04E8)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER BARRED O WITH DIAERESIS")
+    (ucs               . #x04EA)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x04E8 #x0308)
+    (->lowercase       #x04EB)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER BARRED O WITH DIAERESIS")
+    (ucs               . #x04EB)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x04E9 #x0308)
+    (->uppercase       #x04EA)
+    (->titlecase       #x04EA)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER E WITH DIAERESIS")
+    (ucs               . #x04EC)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x042D #x0308)
+    (->lowercase       #x04ED)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER E WITH DIAERESIS")
+    (ucs               . #x04ED)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x044D #x0308)
+    (->uppercase       #x04EC)
+    (->titlecase       #x04EC)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER U WITH MACRON")
+    (ucs               . #x04EE)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0423 #x0304)
+    (->lowercase       #x04EF)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER U WITH MACRON")
+    (ucs               . #x04EF)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0443 #x0304)
+    (->uppercase       #x04EE)
+    (->titlecase       #x04EE)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER U WITH DIAERESIS")
+    (ucs               . #x04F0)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0423 #x0308)
+    (->lowercase       #x04F1)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER U WITH DIAERESIS")
+    (ucs               . #x04F1)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0443 #x0308)
+    (->uppercase       #x04F0)
+    (->titlecase       #x04F0)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER U WITH DOUBLE ACUTE")
+    (ucs               . #x04F2)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0423 #x030B)
+    (->lowercase       #x04F3)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER U WITH DOUBLE ACUTE")
+    (ucs               . #x04F3)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0443 #x030B)
+    (->uppercase       #x04F2)
+    (->titlecase       #x04F2)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER CHE WITH DIAERESIS")
+    (ucs               . #x04F4)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0427 #x0308)
+    (->lowercase       #x04F5)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER CHE WITH DIAERESIS")
+    (ucs               . #x04F5)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0447 #x0308)
+    (->uppercase       #x04F4)
+    (->titlecase       #x04F4)
+    ))
+(define-char
+  '((name              . "CYRILLIC CAPITAL LETTER YERU WITH DIAERESIS")
+    (ucs               . #x04F8)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x042B #x0308)
+    (->lowercase       #x04F9)
+    ))
+(define-char
+  '((name              . "CYRILLIC SMALL LETTER YERU WITH DIAERESIS")
+    (ucs               . #x04F9)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x044B #x0308)
+    (->uppercase       #x04F8)
+    (->titlecase       #x04F8)
+    ))
diff --git a/lisp/utf-2000/u00530-Armenian.el b/lisp/utf-2000/u00530-Armenian.el
new file mode 100644 (file)
index 0000000..cc7bcf1
--- /dev/null
@@ -0,0 +1,717 @@
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER AYB")
+    (ucs               . #x0531)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0561)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER BEN")
+    (ucs               . #x0532)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0562)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER GIM")
+    (ucs               . #x0533)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0563)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER DA")
+    (ucs               . #x0534)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0564)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER ECH")
+    (ucs               . #x0535)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0565)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER ZA")
+    (ucs               . #x0536)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0566)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER EH")
+    (ucs               . #x0537)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0567)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER ET")
+    (ucs               . #x0538)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0568)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER TO")
+    (ucs               . #x0539)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0569)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER ZHE")
+    (ucs               . #x053A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x056A)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER INI")
+    (ucs               . #x053B)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x056B)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER LIWN")
+    (ucs               . #x053C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x056C)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER XEH")
+    (ucs               . #x053D)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x056D)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER CA")
+    (ucs               . #x053E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x056E)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER KEN")
+    (ucs               . #x053F)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x056F)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER HO")
+    (ucs               . #x0540)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0570)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER JA")
+    (ucs               . #x0541)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0571)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER GHAD")
+    (ucs               . #x0542)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0572)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER CHEH")
+    (ucs               . #x0543)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0573)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER MEN")
+    (ucs               . #x0544)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0574)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER YI")
+    (ucs               . #x0545)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0575)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER NOW")
+    (ucs               . #x0546)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0576)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER SHA")
+    (ucs               . #x0547)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0577)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER VO")
+    (ucs               . #x0548)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0578)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER CHA")
+    (ucs               . #x0549)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0579)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER PEH")
+    (ucs               . #x054A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x057A)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER JHEH")
+    (ucs               . #x054B)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x057B)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER RA")
+    (ucs               . #x054C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x057C)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER SEH")
+    (ucs               . #x054D)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x057D)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER VEW")
+    (ucs               . #x054E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x057E)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER TIWN")
+    (ucs               . #x054F)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x057F)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER REH")
+    (ucs               . #x0550)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0580)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER CO")
+    (ucs               . #x0551)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0581)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER YIWN")
+    (ucs               . #x0552)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0582)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER PIWR")
+    (ucs               . #x0553)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0583)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER KEH")
+    (ucs               . #x0554)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0584)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER OH")
+    (ucs               . #x0555)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0585)
+    ))
+(define-char
+  '((name              . "ARMENIAN CAPITAL LETTER FEH")
+    (ucs               . #x0556)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->lowercase       #x0586)
+    ))
+(define-char
+  '((name              . "ARMENIAN MODIFIER LETTER LEFT HALF RING")
+    (ucs               . #x0559)
+    (general-category  letter modifier) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARMENIAN APOSTROPHE")
+    (ucs               . #x055A)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARMENIAN EMPHASIS MARK")
+    (ucs               . #x055B)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARMENIAN EXCLAMATION MARK")
+    (ucs               . #x055C)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARMENIAN COMMA")
+    (ucs               . #x055D)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARMENIAN QUESTION MARK")
+    (ucs               . #x055E)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARMENIAN ABBREVIATION MARK")
+    (ucs               . #x055F)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER AYB")
+    (ucs               . #x0561)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0531)
+    (->titlecase       #x0531)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER BEN")
+    (ucs               . #x0562)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0532)
+    (->titlecase       #x0532)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER GIM")
+    (ucs               . #x0563)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0533)
+    (->titlecase       #x0533)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER DA")
+    (ucs               . #x0564)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0534)
+    (->titlecase       #x0534)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER ECH")
+    (ucs               . #x0565)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0535)
+    (->titlecase       #x0535)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER ZA")
+    (ucs               . #x0566)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0536)
+    (->titlecase       #x0536)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER EH")
+    (ucs               . #x0567)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0537)
+    (->titlecase       #x0537)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER ET")
+    (ucs               . #x0568)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0538)
+    (->titlecase       #x0538)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER TO")
+    (ucs               . #x0569)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0539)
+    (->titlecase       #x0539)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER ZHE")
+    (ucs               . #x056A)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x053A)
+    (->titlecase       #x053A)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER INI")
+    (ucs               . #x056B)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x053B)
+    (->titlecase       #x053B)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER LIWN")
+    (ucs               . #x056C)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x053C)
+    (->titlecase       #x053C)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER XEH")
+    (ucs               . #x056D)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x053D)
+    (->titlecase       #x053D)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER CA")
+    (ucs               . #x056E)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x053E)
+    (->titlecase       #x053E)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER KEN")
+    (ucs               . #x056F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x053F)
+    (->titlecase       #x053F)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER HO")
+    (ucs               . #x0570)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0540)
+    (->titlecase       #x0540)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER JA")
+    (ucs               . #x0571)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0541)
+    (->titlecase       #x0541)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER GHAD")
+    (ucs               . #x0572)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0542)
+    (->titlecase       #x0542)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER CHEH")
+    (ucs               . #x0573)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0543)
+    (->titlecase       #x0543)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER MEN")
+    (ucs               . #x0574)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0544)
+    (->titlecase       #x0544)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER YI")
+    (ucs               . #x0575)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0545)
+    (->titlecase       #x0545)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER NOW")
+    (ucs               . #x0576)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0546)
+    (->titlecase       #x0546)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER SHA")
+    (ucs               . #x0577)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0547)
+    (->titlecase       #x0547)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER VO")
+    (ucs               . #x0578)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0548)
+    (->titlecase       #x0548)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER CHA")
+    (ucs               . #x0579)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0549)
+    (->titlecase       #x0549)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER PEH")
+    (ucs               . #x057A)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x054A)
+    (->titlecase       #x054A)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER JHEH")
+    (ucs               . #x057B)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x054B)
+    (->titlecase       #x054B)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER RA")
+    (ucs               . #x057C)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x054C)
+    (->titlecase       #x054C)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER SEH")
+    (ucs               . #x057D)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x054D)
+    (->titlecase       #x054D)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER VEW")
+    (ucs               . #x057E)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x054E)
+    (->titlecase       #x054E)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER TIWN")
+    (ucs               . #x057F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x054F)
+    (->titlecase       #x054F)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER REH")
+    (ucs               . #x0580)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0550)
+    (->titlecase       #x0550)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER CO")
+    (ucs               . #x0581)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0551)
+    (->titlecase       #x0551)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER YIWN")
+    (ucs               . #x0582)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0552)
+    (->titlecase       #x0552)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER PIWR")
+    (ucs               . #x0583)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0553)
+    (->titlecase       #x0553)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER KEH")
+    (ucs               . #x0584)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0554)
+    (->titlecase       #x0554)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER OH")
+    (ucs               . #x0585)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0555)
+    (->titlecase       #x0555)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LETTER FEH")
+    (ucs               . #x0586)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->uppercase       #x0556)
+    (->titlecase       #x0556)
+    ))
+(define-char
+  '((name              . "ARMENIAN SMALL LIGATURE ECH YIWN")
+    (ucs               . #x0587)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0565 #x0582)
+    ))
+(define-char
+  '((name              . "ARMENIAN FULL STOP")
+    (ucs               . #x0589)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARMENIAN HYPHEN")
+    (ucs               . #x058A)
+    (general-category  punctuation dash) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u00590-Hebrew.el b/lisp/utf-2000/u00590-Hebrew.el
new file mode 100644 (file)
index 0000000..0102508
--- /dev/null
@@ -0,0 +1,610 @@
+(define-char
+  '((name              . "HEBREW ACCENT ETNAHTA")
+    (ucs               . #x0591)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT SEGOL")
+    (ucs               . #x0592)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT SHALSHELET")
+    (ucs               . #x0593)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT ZAQEF QATAN")
+    (ucs               . #x0594)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT ZAQEF GADOL")
+    (ucs               . #x0595)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT TIPEHA")
+    (ucs               . #x0596)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "*")
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT REVIA")
+    (ucs               . #x0597)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT ZARQA")
+    (ucs               . #x0598)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "*")
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT PASHTA")
+    (ucs               . #x0599)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT YETIV")
+    (ucs               . #x059A)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT TEVIR")
+    (ucs               . #x059B)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT GERESH")
+    (ucs               . #x059C)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT GERESH MUQDAM")
+    (ucs               . #x059D)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT GERSHAYIM")
+    (ucs               . #x059E)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT QARNEY PARA")
+    (ucs               . #x059F)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT TELISHA GEDOLA")
+    (ucs               . #x05A0)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT PAZER")
+    (ucs               . #x05A1)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT MUNAH")
+    (ucs               . #x05A3)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT MAHAPAKH")
+    (ucs               . #x05A4)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT MERKHA")
+    (ucs               . #x05A5)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "*")
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT MERKHA KEFULA")
+    (ucs               . #x05A6)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT DARGA")
+    (ucs               . #x05A7)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT QADMA")
+    (ucs               . #x05A8)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "*")
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT TELISHA QETANA")
+    (ucs               . #x05A9)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT YERAH BEN YOMO")
+    (ucs               . #x05AA)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "*")
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT OLE")
+    (ucs               . #x05AB)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT ILUY")
+    (ucs               . #x05AC)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT DEHI")
+    (ucs               . #x05AD)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW ACCENT ZINOR")
+    (ucs               . #x05AE)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW MARK MASORA CIRCLE")
+    (ucs               . #x05AF)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW POINT SHEVA")
+    (ucs               . #x05B0)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW POINT HATAF SEGOL")
+    (ucs               . #x05B1)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW POINT HATAF PATAH")
+    (ucs               . #x05B2)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW POINT HATAF QAMATS")
+    (ucs               . #x05B3)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW POINT HIRIQ")
+    (ucs               . #x05B4)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW POINT TSERE")
+    (ucs               . #x05B5)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW POINT SEGOL")
+    (ucs               . #x05B6)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW POINT PATAH")
+    (ucs               . #x05B7)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW POINT QAMATS")
+    (ucs               . #x05B8)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW POINT HOLAM")
+    (ucs               . #x05B9)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW POINT QUBUTS")
+    (ucs               . #x05BB)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW POINT DAGESH OR MAPIQ")
+    (ucs               . #x05BC)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "or shuruq")
+    ))
+(define-char
+  '((name              . "HEBREW POINT METEG")
+    (ucs               . #x05BD)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "*")
+    ))
+(define-char
+  '((name              . "HEBREW PUNCTUATION MAQAF")
+    (ucs               . #x05BE)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW POINT RAFE")
+    (ucs               . #x05BF)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW PUNCTUATION PASEQ")
+    (ucs               . #x05C0)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (iso-10646-comment . "*")
+    ))
+(define-char
+  '((name              . "HEBREW POINT SHIN DOT")
+    (ucs               . #x05C1)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW POINT SIN DOT")
+    (ucs               . #x05C2)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW PUNCTUATION SOF PASUQ")
+    (ucs               . #x05C3)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (iso-10646-comment . "*")
+    ))
+(define-char
+  '((name              . "HEBREW MARK UPPER DOT")
+    (ucs               . #x05C4)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW LETTER ALEF")
+    (ucs               . #x05D0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x60)   ; \9b2]\e-Hà\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER BET")
+    (ucs               . #x05D1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x61)   ; \9b2]\e-Há\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER GIMEL")
+    (ucs               . #x05D2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x62)   ; \9b2]\e-Hâ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER DALET")
+    (ucs               . #x05D3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x63)   ; \9b2]\e-Hã\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER HE")
+    (ucs               . #x05D4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x64)   ; \9b2]\e-Hä\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER VAV")
+    (ucs               . #x05D5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x65)   ; \9b2]\e-Hå\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER ZAYIN")
+    (ucs               . #x05D6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x66)   ; \9b2]\e-Hæ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER HET")
+    (ucs               . #x05D7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x67)   ; \9b2]\e-Hç\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER TET")
+    (ucs               . #x05D8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x68)   ; \9b2]\e-Hè\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER YOD")
+    (ucs               . #x05D9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x69)   ; \9b2]\e-Hé\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER FINAL KAF")
+    (ucs               . #x05DA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x6A)   ; \9b2]\e-Hê\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER KAF")
+    (ucs               . #x05DB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x6B)   ; \9b2]\e-Hë\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER LAMED")
+    (ucs               . #x05DC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x6C)   ; \9b2]\e-Hì\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER FINAL MEM")
+    (ucs               . #x05DD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x6D)   ; \9b2]\e-Hí\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER MEM")
+    (ucs               . #x05DE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x6E)   ; \9b2]\e-Hî\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER FINAL NUN")
+    (ucs               . #x05DF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x6F)   ; \9b2]\e-Hï\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER NUN")
+    (ucs               . #x05E0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x70)   ; \9b2]\e-Hð\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER SAMEKH")
+    (ucs               . #x05E1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x71)   ; \9b2]\e-Hñ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER AYIN")
+    (ucs               . #x05E2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x72)   ; \9b2]\e-Hò\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER FINAL PE")
+    (ucs               . #x05E3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x73)   ; \9b2]\e-Hó\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER PE")
+    (ucs               . #x05E4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x74)   ; \9b2]\e-Hô\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER FINAL TSADI")
+    (ucs               . #x05E5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x75)   ; \9b2]\e-Hõ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER TSADI")
+    (ucs               . #x05E6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x76)   ; \9b2]\e-Hö\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER QOF")
+    (ucs               . #x05E7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x77)   ; \9b2]\e-H÷\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER RESH")
+    (ucs               . #x05E8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x78)   ; \9b2]\e-Hø\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER SHIN")
+    (ucs               . #x05E9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x79)   ; \9b2]\e-Hù\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LETTER TAV")
+    (ucs               . #x05EA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    (hebrew-iso8859-8  #x7A)   ; \9b2]\e-Hú\9b0]\e-A
+    ))
+(define-char
+  '((name              . "HEBREW LIGATURE YIDDISH DOUBLE VAV")
+    (ucs               . #x05F0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW LIGATURE YIDDISH VAV YOD")
+    (ucs               . #x05F1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW LIGATURE YIDDISH DOUBLE YOD")
+    (ucs               . #x05F2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW PUNCTUATION GERESH")
+    (ucs               . #x05F3)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEBREW PUNCTUATION GERSHAYIM")
+    (ucs               . #x05F4)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u00600-Arabic.el b/lisp/utf-2000/u00600-Arabic.el
new file mode 100644 (file)
index 0000000..449870c
--- /dev/null
@@ -0,0 +1,1564 @@
+(define-char
+  '((name              . "ARABIC COMMA")
+    (ucs               . #x060C)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "CS")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x2C)   ; \9b2]\e-G¬\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC SEMICOLON")
+    (ucs               . #x061B)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x3B)   ; \9b2]\e-G»\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC QUESTION MARK")
+    (ucs               . #x061F)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x3F)   ; \9b2]\e-G¿\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER HAMZA")
+    (ucs               . #x0621)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x41)   ; \9b2]\e-GÁ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER ALEF WITH MADDA ABOVE")
+    (ucs               . #x0622)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (->decomposition   #x0627 #x0653)
+    (arabic-iso8859-6  #x42)   ; \9b2]\e-GÂ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER ALEF WITH HAMZA ABOVE")
+    (ucs               . #x0623)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (->decomposition   #x0627 #x0654)
+    (arabic-iso8859-6  #x43)   ; \9b2]\e-GÃ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER WAW WITH HAMZA ABOVE")
+    (ucs               . #x0624)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (->decomposition   #x0648 #x0654)
+    (arabic-iso8859-6  #x44)   ; \9b2]\e-GÄ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER ALEF WITH HAMZA BELOW")
+    (ucs               . #x0625)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (->decomposition   #x0627 #x0655)
+    (arabic-iso8859-6  #x45)   ; \9b2]\e-GÅ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER YEH WITH HAMZA ABOVE")
+    (ucs               . #x0626)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (->decomposition   #x064A #x0654)
+    (arabic-iso8859-6  #x46)   ; \9b2]\e-GÆ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER ALEF")
+    (ucs               . #x0627)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x47)   ; \9b2]\e-GÇ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER BEH")
+    (ucs               . #x0628)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x48)   ; \9b2]\e-GÈ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER TEH MARBUTA")
+    (ucs               . #x0629)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x49)   ; \9b2]\e-GÉ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER TEH")
+    (ucs               . #x062A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x4A)   ; \9b2]\e-GÊ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER THEH")
+    (ucs               . #x062B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x4B)   ; \9b2]\e-GË\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER JEEM")
+    (ucs               . #x062C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x4C)   ; \9b2]\e-GÌ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER HAH")
+    (ucs               . #x062D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x4D)   ; \9b2]\e-GÍ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER KHAH")
+    (ucs               . #x062E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x4E)   ; \9b2]\e-GÎ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER DAL")
+    (ucs               . #x062F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x4F)   ; \9b2]\e-GÏ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER THAL")
+    (ucs               . #x0630)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x50)   ; \9b2]\e-GÐ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER REH")
+    (ucs               . #x0631)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x51)   ; \9b2]\e-GÑ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER ZAIN")
+    (ucs               . #x0632)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x52)   ; \9b2]\e-GÒ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER SEEN")
+    (ucs               . #x0633)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x53)   ; \9b2]\e-GÓ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER SHEEN")
+    (ucs               . #x0634)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x54)   ; \9b2]\e-GÔ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER SAD")
+    (ucs               . #x0635)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x55)   ; \9b2]\e-GÕ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER DAD")
+    (ucs               . #x0636)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x56)   ; \9b2]\e-GÖ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER TAH")
+    (ucs               . #x0637)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x57)   ; \9b2]\e-G×\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER ZAH")
+    (ucs               . #x0638)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x58)   ; \9b2]\e-GØ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER AIN")
+    (ucs               . #x0639)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x59)   ; \9b2]\e-GÙ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER GHAIN")
+    (ucs               . #x063A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x5A)   ; \9b2]\e-GÚ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC TATWEEL")
+    (ucs               . #x0640)
+    (general-category  letter modifier) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x60)   ; \9b2]\e-Gà\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER FEH")
+    (ucs               . #x0641)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x61)   ; \9b2]\e-Gá\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER QAF")
+    (ucs               . #x0642)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x62)   ; \9b2]\e-Gâ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER KAF")
+    (ucs               . #x0643)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x63)   ; \9b2]\e-Gã\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER LAM")
+    (ucs               . #x0644)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x64)   ; \9b2]\e-Gä\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER MEEM")
+    (ucs               . #x0645)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x65)   ; \9b2]\e-Gå\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER NOON")
+    (ucs               . #x0646)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x66)   ; \9b2]\e-Gæ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER HEH")
+    (ucs               . #x0647)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x67)   ; \9b2]\e-Gç\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER WAW")
+    (ucs               . #x0648)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x68)   ; \9b2]\e-Gè\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER ALEF MAKSURA")
+    (ucs               . #x0649)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x69)   ; \9b2]\e-Gé\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC LETTER YEH")
+    (ucs               . #x064A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x6A)   ; \9b2]\e-Gê\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC FATHATAN")
+    (ucs               . #x064B)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x6B)   ; \9b2]\e-Gë\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC DAMMATAN")
+    (ucs               . #x064C)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x6C)   ; \9b2]\e-Gì\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC KASRATAN")
+    (ucs               . #x064D)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x6D)   ; \9b2]\e-Gí\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC FATHA")
+    (ucs               . #x064E)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x6E)   ; \9b2]\e-Gî\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC DAMMA")
+    (ucs               . #x064F)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x6F)   ; \9b2]\e-Gï\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC KASRA")
+    (ucs               . #x0650)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x70)   ; \9b2]\e-Gð\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC SHADDA")
+    (ucs               . #x0651)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x71)   ; \9b2]\e-Gñ\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC SUKUN")
+    (ucs               . #x0652)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (arabic-iso8859-6  #x72)   ; \9b2]\e-Gò\9b0]\e-A
+    ))
+(define-char
+  '((name              . "ARABIC MADDAH ABOVE")
+    (ucs               . #x0653)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC HAMZA ABOVE")
+    (ucs               . #x0654)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC HAMZA BELOW")
+    (ucs               . #x0655)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC-INDIC DIGIT ZERO")
+    (ucs               . #x0660)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "AN")
+    (mirrored          . nil)
+    (decimal-digit-value . 0)
+    (digit-value        . 0)
+    (numeric-value      . 0)
+    ))
+(define-char
+  '((name              . "ARABIC-INDIC DIGIT ONE")
+    (ucs               . #x0661)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "AN")
+    (mirrored          . nil)
+    (decimal-digit-value . 1)
+    (digit-value        . 1)
+    (numeric-value      . 1)
+    ))
+(define-char
+  '((name              . "ARABIC-INDIC DIGIT TWO")
+    (ucs               . #x0662)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "AN")
+    (mirrored          . nil)
+    (decimal-digit-value . 2)
+    (digit-value        . 2)
+    (numeric-value      . 2)
+    ))
+(define-char
+  '((name              . "ARABIC-INDIC DIGIT THREE")
+    (ucs               . #x0663)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "AN")
+    (mirrored          . nil)
+    (decimal-digit-value . 3)
+    (digit-value        . 3)
+    (numeric-value      . 3)
+    ))
+(define-char
+  '((name              . "ARABIC-INDIC DIGIT FOUR")
+    (ucs               . #x0664)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "AN")
+    (mirrored          . nil)
+    (decimal-digit-value . 4)
+    (digit-value        . 4)
+    (numeric-value      . 4)
+    ))
+(define-char
+  '((name              . "ARABIC-INDIC DIGIT FIVE")
+    (ucs               . #x0665)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "AN")
+    (mirrored          . nil)
+    (decimal-digit-value . 5)
+    (digit-value        . 5)
+    (numeric-value      . 5)
+    ))
+(define-char
+  '((name              . "ARABIC-INDIC DIGIT SIX")
+    (ucs               . #x0666)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "AN")
+    (mirrored          . nil)
+    (decimal-digit-value . 6)
+    (digit-value        . 6)
+    (numeric-value      . 6)
+    ))
+(define-char
+  '((name              . "ARABIC-INDIC DIGIT SEVEN")
+    (ucs               . #x0667)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "AN")
+    (mirrored          . nil)
+    (decimal-digit-value . 7)
+    (digit-value        . 7)
+    (numeric-value      . 7)
+    ))
+(define-char
+  '((name              . "ARABIC-INDIC DIGIT EIGHT")
+    (ucs               . #x0668)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "AN")
+    (mirrored          . nil)
+    (decimal-digit-value . 8)
+    (digit-value        . 8)
+    (numeric-value      . 8)
+    ))
+(define-char
+  '((name              . "ARABIC-INDIC DIGIT NINE")
+    (ucs               . #x0669)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "AN")
+    (mirrored          . nil)
+    (decimal-digit-value . 9)
+    (digit-value        . 9)
+    (numeric-value      . 9)
+    ))
+(define-char
+  '((name              . "ARABIC PERCENT SIGN")
+    (ucs               . #x066A)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC DECIMAL SEPARATOR")
+    (ucs               . #x066B)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "AN")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC THOUSANDS SEPARATOR")
+    (ucs               . #x066C)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "AN")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC FIVE POINTED STAR")
+    (ucs               . #x066D)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER SUPERSCRIPT ALEF")
+    (ucs               . #x0670)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER ALEF WASLA")
+    (ucs               . #x0671)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER ALEF WITH WAVY HAMZA ABOVE")
+    (ucs               . #x0672)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER ALEF WITH WAVY HAMZA BELOW")
+    (ucs               . #x0673)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER HIGH HAMZA")
+    (ucs               . #x0674)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER HIGH HAMZA ALEF")
+    (ucs               . #x0675)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (->decomposition   compat #x0627 #x0674)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER HIGH HAMZA WAW")
+    (ucs               . #x0676)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (->decomposition   compat #x0648 #x0674)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER U WITH HAMZA ABOVE")
+    (ucs               . #x0677)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (->decomposition   compat #x06C7 #x0674)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER HIGH HAMZA YEH")
+    (ucs               . #x0678)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (->decomposition   compat #x064A #x0674)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER TTEH")
+    (ucs               . #x0679)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER TTEHEH")
+    (ucs               . #x067A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER BEEH")
+    (ucs               . #x067B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER TEH WITH RING")
+    (ucs               . #x067C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "ARABIC LETTER TEH WITH THREE DOTS ABOVE DOWNWARDS")
+    (ucs               . #x067D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER PEH")
+    (ucs               . #x067E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER TEHEH")
+    (ucs               . #x067F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER BEHEH")
+    (ucs               . #x0680)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER HAH WITH HAMZA ABOVE")
+    (ucs               . #x0681)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER HAH WITH TWO DOTS VERTICAL ABOVE")
+    (ucs               . #x0682)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER NYEH")
+    (ucs               . #x0683)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER DYEH")
+    (ucs               . #x0684)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER HAH WITH THREE DOTS ABOVE")
+    (ucs               . #x0685)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER TCHEH")
+    (ucs               . #x0686)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER TCHEHEH")
+    (ucs               . #x0687)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER DDAL")
+    (ucs               . #x0688)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER DAL WITH RING")
+    (ucs               . #x0689)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER DAL WITH DOT BELOW")
+    (ucs               . #x068A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER DAL WITH DOT BELOW AND SMALL TAH")
+    (ucs               . #x068B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER DAHAL")
+    (ucs               . #x068C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER DDAHAL")
+    (ucs               . #x068D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER DUL")
+    (ucs               . #x068E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "ARABIC LETTER DAL WITH THREE DOTS ABOVE DOWNWARDS")
+    (ucs               . #x068F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER DAL WITH FOUR DOTS ABOVE")
+    (ucs               . #x0690)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER RREH")
+    (ucs               . #x0691)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER REH WITH SMALL V")
+    (ucs               . #x0692)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER REH WITH RING")
+    (ucs               . #x0693)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER REH WITH DOT BELOW")
+    (ucs               . #x0694)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER REH WITH SMALL V BELOW")
+    (ucs               . #x0695)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER REH WITH DOT BELOW AND DOT ABOVE")
+    (ucs               . #x0696)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER REH WITH TWO DOTS ABOVE")
+    (ucs               . #x0697)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER JEH")
+    (ucs               . #x0698)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER REH WITH FOUR DOTS ABOVE")
+    (ucs               . #x0699)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER SEEN WITH DOT BELOW AND DOT ABOVE")
+    (ucs               . #x069A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER SEEN WITH THREE DOTS BELOW")
+    (ucs               . #x069B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "ARABIC LETTER SEEN WITH THREE DOTS BELOW AND THREE DOTS ABOVE")
+    (ucs               . #x069C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER SAD WITH TWO DOTS BELOW")
+    (ucs               . #x069D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER SAD WITH THREE DOTS ABOVE")
+    (ucs               . #x069E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER TAH WITH THREE DOTS ABOVE")
+    (ucs               . #x069F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER AIN WITH THREE DOTS ABOVE")
+    (ucs               . #x06A0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER DOTLESS FEH")
+    (ucs               . #x06A1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER FEH WITH DOT MOVED BELOW")
+    (ucs               . #x06A2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER FEH WITH DOT BELOW")
+    (ucs               . #x06A3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER VEH")
+    (ucs               . #x06A4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER FEH WITH THREE DOTS BELOW")
+    (ucs               . #x06A5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER PEHEH")
+    (ucs               . #x06A6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER QAF WITH DOT ABOVE")
+    (ucs               . #x06A7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER QAF WITH THREE DOTS ABOVE")
+    (ucs               . #x06A8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER KEHEH")
+    (ucs               . #x06A9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER SWASH KAF")
+    (ucs               . #x06AA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER KAF WITH RING")
+    (ucs               . #x06AB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER KAF WITH DOT ABOVE")
+    (ucs               . #x06AC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER NG")
+    (ucs               . #x06AD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER KAF WITH THREE DOTS BELOW")
+    (ucs               . #x06AE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER GAF")
+    (ucs               . #x06AF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (iso-10646-comment . "*")
+    ))
+(define-char
+  '((name              . "ARABIC LETTER GAF WITH RING")
+    (ucs               . #x06B0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER NGOEH")
+    (ucs               . #x06B1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER GAF WITH TWO DOTS BELOW")
+    (ucs               . #x06B2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER GUEH")
+    (ucs               . #x06B3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER GAF WITH THREE DOTS ABOVE")
+    (ucs               . #x06B4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER LAM WITH SMALL V")
+    (ucs               . #x06B5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER LAM WITH DOT ABOVE")
+    (ucs               . #x06B6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER LAM WITH THREE DOTS ABOVE")
+    (ucs               . #x06B7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER LAM WITH THREE DOTS BELOW")
+    (ucs               . #x06B8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER NOON WITH DOT BELOW")
+    (ucs               . #x06B9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER NOON GHUNNA")
+    (ucs               . #x06BA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER RNOON")
+    (ucs               . #x06BB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER NOON WITH RING")
+    (ucs               . #x06BC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER NOON WITH THREE DOTS ABOVE")
+    (ucs               . #x06BD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER HEH DOACHASHMEE")
+    (ucs               . #x06BE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER TCHEH WITH DOT ABOVE")
+    (ucs               . #x06BF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER HEH WITH YEH ABOVE")
+    (ucs               . #x06C0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (->decomposition   #x06D5 #x0654)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER HEH GOAL")
+    (ucs               . #x06C1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER HEH GOAL WITH HAMZA ABOVE")
+    (ucs               . #x06C2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (->decomposition   #x06C1 #x0654)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER TEH MARBUTA GOAL")
+    (ucs               . #x06C3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER WAW WITH RING")
+    (ucs               . #x06C4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER KIRGHIZ OE")
+    (ucs               . #x06C5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER OE")
+    (ucs               . #x06C6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER U")
+    (ucs               . #x06C7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER YU")
+    (ucs               . #x06C8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER KIRGHIZ YU")
+    (ucs               . #x06C9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER WAW WITH TWO DOTS ABOVE")
+    (ucs               . #x06CA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER VE")
+    (ucs               . #x06CB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER FARSI YEH")
+    (ucs               . #x06CC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER YEH WITH TAIL")
+    (ucs               . #x06CD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER YEH WITH SMALL V")
+    (ucs               . #x06CE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER WAW WITH DOT ABOVE")
+    (ucs               . #x06CF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER E")
+    (ucs               . #x06D0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (iso-10646-comment . "*")
+    ))
+(define-char
+  '((name              . "ARABIC LETTER YEH WITH THREE DOTS BELOW")
+    (ucs               . #x06D1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER YEH BARREE")
+    (ucs               . #x06D2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER YEH BARREE WITH HAMZA ABOVE")
+    (ucs               . #x06D3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    (->decomposition   #x06D2 #x0654)
+    ))
+(define-char
+  '((name              . "ARABIC FULL STOP")
+    (ucs               . #x06D4)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER AE")
+    (ucs               . #x06D5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "ARABIC SMALL HIGH LIGATURE SAD WITH LAM WITH ALEF MAKSURA")
+    (ucs               . #x06D6)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "ARABIC SMALL HIGH LIGATURE QAF WITH LAM WITH ALEF MAKSURA")
+    (ucs               . #x06D7)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC SMALL HIGH MEEM INITIAL FORM")
+    (ucs               . #x06D8)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC SMALL HIGH LAM ALEF")
+    (ucs               . #x06D9)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC SMALL HIGH JEEM")
+    (ucs               . #x06DA)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC SMALL HIGH THREE DOTS")
+    (ucs               . #x06DB)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC SMALL HIGH SEEN")
+    (ucs               . #x06DC)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC END OF AYAH")
+    (ucs               . #x06DD)
+    (general-category  mark enclosing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC START OF RUB EL HIZB")
+    (ucs               . #x06DE)
+    (general-category  mark enclosing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC SMALL HIGH ROUNDED ZERO")
+    (ucs               . #x06DF)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC SMALL HIGH UPRIGHT RECTANGULAR ZERO")
+    (ucs               . #x06E0)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC SMALL HIGH DOTLESS HEAD OF KHAH")
+    (ucs               . #x06E1)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC SMALL HIGH MEEM ISOLATED FORM")
+    (ucs               . #x06E2)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC SMALL LOW SEEN")
+    (ucs               . #x06E3)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC SMALL HIGH MADDA")
+    (ucs               . #x06E4)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC SMALL WAW")
+    (ucs               . #x06E5)
+    (general-category  letter modifier) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC SMALL YEH")
+    (ucs               . #x06E6)
+    (general-category  letter modifier) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC SMALL HIGH YEH")
+    (ucs               . #x06E7)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC SMALL HIGH NOON")
+    (ucs               . #x06E8)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC PLACE OF SAJDAH")
+    (ucs               . #x06E9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC EMPTY CENTRE LOW STOP")
+    (ucs               . #x06EA)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC EMPTY CENTRE HIGH STOP")
+    (ucs               . #x06EB)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC ROUNDED HIGH STOP WITH FILLED CENTRE")
+    (ucs               . #x06EC)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC SMALL LOW MEEM")
+    (ucs               . #x06ED)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "EXTENDED ARABIC-INDIC DIGIT ZERO")
+    (ucs               . #x06F0)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 0)
+    (digit-value        . 0)
+    (numeric-value      . 0)
+    ))
+(define-char
+  '((name              . "EXTENDED ARABIC-INDIC DIGIT ONE")
+    (ucs               . #x06F1)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 1)
+    (digit-value        . 1)
+    (numeric-value      . 1)
+    ))
+(define-char
+  '((name              . "EXTENDED ARABIC-INDIC DIGIT TWO")
+    (ucs               . #x06F2)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 2)
+    (digit-value        . 2)
+    (numeric-value      . 2)
+    ))
+(define-char
+  '((name              . "EXTENDED ARABIC-INDIC DIGIT THREE")
+    (ucs               . #x06F3)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 3)
+    (digit-value        . 3)
+    (numeric-value      . 3)
+    ))
+(define-char
+  '((name              . "EXTENDED ARABIC-INDIC DIGIT FOUR")
+    (ucs               . #x06F4)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 4)
+    (digit-value        . 4)
+    (numeric-value      . 4)
+    ))
+(define-char
+  '((name              . "EXTENDED ARABIC-INDIC DIGIT FIVE")
+    (ucs               . #x06F5)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 5)
+    (digit-value        . 5)
+    (numeric-value      . 5)
+    ))
+(define-char
+  '((name              . "EXTENDED ARABIC-INDIC DIGIT SIX")
+    (ucs               . #x06F6)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 6)
+    (digit-value        . 6)
+    (numeric-value      . 6)
+    ))
+(define-char
+  '((name              . "EXTENDED ARABIC-INDIC DIGIT SEVEN")
+    (ucs               . #x06F7)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 7)
+    (digit-value        . 7)
+    (numeric-value      . 7)
+    ))
+(define-char
+  '((name              . "EXTENDED ARABIC-INDIC DIGIT EIGHT")
+    (ucs               . #x06F8)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 8)
+    (digit-value        . 8)
+    (numeric-value      . 8)
+    ))
+(define-char
+  '((name              . "EXTENDED ARABIC-INDIC DIGIT NINE")
+    (ucs               . #x06F9)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 9)
+    (digit-value        . 9)
+    (numeric-value      . 9)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER SHEEN WITH DOT BELOW")
+    (ucs               . #x06FA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER DAD WITH DOT BELOW")
+    (ucs               . #x06FB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC LETTER GHAIN WITH DOT BELOW")
+    (ucs               . #x06FC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC SIGN SINDHI AMPERSAND")
+    (ucs               . #x06FD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARABIC SIGN SINDHI POSTPOSITION MEN")
+    (ucs               . #x06FE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u00700-Syriac.el b/lisp/utf-2000/u00700-Syriac.el
new file mode 100644 (file)
index 0000000..b51b9dc
--- /dev/null
@@ -0,0 +1,497 @@
+(define-char
+  '((name              . "SYRIAC END OF PARAGRAPH")
+    (ucs               . #x0700)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC SUPRALINEAR FULL STOP")
+    (ucs               . #x0701)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC SUBLINEAR FULL STOP")
+    (ucs               . #x0702)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC SUPRALINEAR COLON")
+    (ucs               . #x0703)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC SUBLINEAR COLON")
+    (ucs               . #x0704)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC HORIZONTAL COLON")
+    (ucs               . #x0705)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC COLON SKEWED LEFT")
+    (ucs               . #x0706)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC COLON SKEWED RIGHT")
+    (ucs               . #x0707)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC SUPRALINEAR COLON SKEWED LEFT")
+    (ucs               . #x0708)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC SUBLINEAR COLON SKEWED RIGHT")
+    (ucs               . #x0709)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC CONTRACTION")
+    (ucs               . #x070A)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC HARKLEAN OBELUS")
+    (ucs               . #x070B)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC HARKLEAN METOBELUS")
+    (ucs               . #x070C)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC HARKLEAN ASTERISCUS")
+    (ucs               . #x070D)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC ABBREVIATION MARK")
+    (ucs               . #x070F)
+    (general-category  other format) ; Normative Category
+    (bidi-category     . "BN")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER ALAPH")
+    (ucs               . #x0710)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER SUPERSCRIPT ALAPH")
+    (ucs               . #x0711)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER BETH")
+    (ucs               . #x0712)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER GAMAL")
+    (ucs               . #x0713)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER GAMAL GARSHUNI")
+    (ucs               . #x0714)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER DALATH")
+    (ucs               . #x0715)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER DOTLESS DALATH RISH")
+    (ucs               . #x0716)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER HE")
+    (ucs               . #x0717)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER WAW")
+    (ucs               . #x0718)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER ZAIN")
+    (ucs               . #x0719)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER HETH")
+    (ucs               . #x071A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER TETH")
+    (ucs               . #x071B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER TETH GARSHUNI")
+    (ucs               . #x071C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER YUDH")
+    (ucs               . #x071D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER YUDH HE")
+    (ucs               . #x071E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER KAPH")
+    (ucs               . #x071F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER LAMADH")
+    (ucs               . #x0720)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER MIM")
+    (ucs               . #x0721)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER NUN")
+    (ucs               . #x0722)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER SEMKATH")
+    (ucs               . #x0723)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER FINAL SEMKATH")
+    (ucs               . #x0724)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER E")
+    (ucs               . #x0725)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER PE")
+    (ucs               . #x0726)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER REVERSED PE")
+    (ucs               . #x0727)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER SADHE")
+    (ucs               . #x0728)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER QAPH")
+    (ucs               . #x0729)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER RISH")
+    (ucs               . #x072A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER SHIN")
+    (ucs               . #x072B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC LETTER TAW")
+    (ucs               . #x072C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC PTHAHA ABOVE")
+    (ucs               . #x0730)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC PTHAHA BELOW")
+    (ucs               . #x0731)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC PTHAHA DOTTED")
+    (ucs               . #x0732)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC ZQAPHA ABOVE")
+    (ucs               . #x0733)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC ZQAPHA BELOW")
+    (ucs               . #x0734)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC ZQAPHA DOTTED")
+    (ucs               . #x0735)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC RBASA ABOVE")
+    (ucs               . #x0736)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC RBASA BELOW")
+    (ucs               . #x0737)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC DOTTED ZLAMA HORIZONTAL")
+    (ucs               . #x0738)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC DOTTED ZLAMA ANGULAR")
+    (ucs               . #x0739)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC HBASA ABOVE")
+    (ucs               . #x073A)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC HBASA BELOW")
+    (ucs               . #x073B)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC HBASA-ESASA DOTTED")
+    (ucs               . #x073C)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC ESASA ABOVE")
+    (ucs               . #x073D)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC ESASA BELOW")
+    (ucs               . #x073E)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC RWAHA")
+    (ucs               . #x073F)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC FEMININE DOT")
+    (ucs               . #x0740)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC QUSHSHAYA")
+    (ucs               . #x0741)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC RUKKAKHA")
+    (ucs               . #x0742)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC TWO VERTICAL DOTS ABOVE")
+    (ucs               . #x0743)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC TWO VERTICAL DOTS BELOW")
+    (ucs               . #x0744)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC THREE DOTS ABOVE")
+    (ucs               . #x0745)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC THREE DOTS BELOW")
+    (ucs               . #x0746)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC OBLIQUE LINE ABOVE")
+    (ucs               . #x0747)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC OBLIQUE LINE BELOW")
+    (ucs               . #x0748)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC MUSIC")
+    (ucs               . #x0749)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYRIAC BARREKH")
+    (ucs               . #x074A)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u00780-Thaana.el b/lisp/utf-2000/u00780-Thaana.el
new file mode 100644 (file)
index 0000000..c6b9459
--- /dev/null
@@ -0,0 +1,343 @@
+(define-char
+  '((name              . "THAANA LETTER HAA")
+    (ucs               . #x0780)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER SHAVIYANI")
+    (ucs               . #x0781)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER NOONU")
+    (ucs               . #x0782)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER RAA")
+    (ucs               . #x0783)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER BAA")
+    (ucs               . #x0784)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER LHAVIYANI")
+    (ucs               . #x0785)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER KAAFU")
+    (ucs               . #x0786)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER ALIFU")
+    (ucs               . #x0787)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER VAAVU")
+    (ucs               . #x0788)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER MEEMU")
+    (ucs               . #x0789)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER FAAFU")
+    (ucs               . #x078A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER DHAALU")
+    (ucs               . #x078B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER THAA")
+    (ucs               . #x078C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER LAAMU")
+    (ucs               . #x078D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER GAAFU")
+    (ucs               . #x078E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER GNAVIYANI")
+    (ucs               . #x078F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER SEENU")
+    (ucs               . #x0790)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER DAVIYANI")
+    (ucs               . #x0791)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER ZAVIYANI")
+    (ucs               . #x0792)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER TAVIYANI")
+    (ucs               . #x0793)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER YAA")
+    (ucs               . #x0794)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER PAVIYANI")
+    (ucs               . #x0795)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER JAVIYANI")
+    (ucs               . #x0796)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER CHAVIYANI")
+    (ucs               . #x0797)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER TTAA")
+    (ucs               . #x0798)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER HHAA")
+    (ucs               . #x0799)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER KHAA")
+    (ucs               . #x079A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER THAALU")
+    (ucs               . #x079B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER ZAA")
+    (ucs               . #x079C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER SHEENU")
+    (ucs               . #x079D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER SAADHU")
+    (ucs               . #x079E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER DAADHU")
+    (ucs               . #x079F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER TO")
+    (ucs               . #x07A0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER ZO")
+    (ucs               . #x07A1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER AINU")
+    (ucs               . #x07A2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER GHAINU")
+    (ucs               . #x07A3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER QAAFU")
+    (ucs               . #x07A4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA LETTER WAAVU")
+    (ucs               . #x07A5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "AL")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA ABAFILI")
+    (ucs               . #x07A6)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA AABAAFILI")
+    (ucs               . #x07A7)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA IBIFILI")
+    (ucs               . #x07A8)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA EEBEEFILI")
+    (ucs               . #x07A9)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA UBUFILI")
+    (ucs               . #x07AA)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA OOBOOFILI")
+    (ucs               . #x07AB)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA EBEFILI")
+    (ucs               . #x07AC)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA EYBEYFILI")
+    (ucs               . #x07AD)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA OBOFILI")
+    (ucs               . #x07AE)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA OABOAFILI")
+    (ucs               . #x07AF)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THAANA SUKUN")
+    (ucs               . #x07B0)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u00900-Devanagari.el b/lisp/utf-2000/u00900-Devanagari.el
new file mode 100644 (file)
index 0000000..e63012a
--- /dev/null
@@ -0,0 +1,769 @@
+(define-char
+  '((name              . "DEVANAGARI SIGN CANDRABINDU")
+    (ucs               . #x0901)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI SIGN ANUSVARA")
+    (ucs               . #x0902)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI SIGN VISARGA")
+    (ucs               . #x0903)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER A")
+    (ucs               . #x0905)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER AA")
+    (ucs               . #x0906)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER I")
+    (ucs               . #x0907)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER II")
+    (ucs               . #x0908)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER U")
+    (ucs               . #x0909)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER UU")
+    (ucs               . #x090A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER VOCALIC R")
+    (ucs               . #x090B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER VOCALIC L")
+    (ucs               . #x090C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER CANDRA E")
+    (ucs               . #x090D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER SHORT E")
+    (ucs               . #x090E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER E")
+    (ucs               . #x090F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER AI")
+    (ucs               . #x0910)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER CANDRA O")
+    (ucs               . #x0911)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER SHORT O")
+    (ucs               . #x0912)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER O")
+    (ucs               . #x0913)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER AU")
+    (ucs               . #x0914)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER KA")
+    (ucs               . #x0915)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER KHA")
+    (ucs               . #x0916)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER GA")
+    (ucs               . #x0917)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER GHA")
+    (ucs               . #x0918)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER NGA")
+    (ucs               . #x0919)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER CA")
+    (ucs               . #x091A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER CHA")
+    (ucs               . #x091B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER JA")
+    (ucs               . #x091C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER JHA")
+    (ucs               . #x091D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER NYA")
+    (ucs               . #x091E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER TTA")
+    (ucs               . #x091F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER TTHA")
+    (ucs               . #x0920)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER DDA")
+    (ucs               . #x0921)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER DDHA")
+    (ucs               . #x0922)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER NNA")
+    (ucs               . #x0923)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER TA")
+    (ucs               . #x0924)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER THA")
+    (ucs               . #x0925)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER DA")
+    (ucs               . #x0926)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER DHA")
+    (ucs               . #x0927)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER NA")
+    (ucs               . #x0928)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER NNNA")
+    (ucs               . #x0929)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0928 #x093C)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER PA")
+    (ucs               . #x092A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER PHA")
+    (ucs               . #x092B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER BA")
+    (ucs               . #x092C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER BHA")
+    (ucs               . #x092D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER MA")
+    (ucs               . #x092E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER YA")
+    (ucs               . #x092F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER RA")
+    (ucs               . #x0930)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER RRA")
+    (ucs               . #x0931)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0930 #x093C)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER LA")
+    (ucs               . #x0932)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER LLA")
+    (ucs               . #x0933)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER LLLA")
+    (ucs               . #x0934)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0933 #x093C)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER VA")
+    (ucs               . #x0935)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER SHA")
+    (ucs               . #x0936)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER SSA")
+    (ucs               . #x0937)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER SA")
+    (ucs               . #x0938)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER HA")
+    (ucs               . #x0939)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI SIGN NUKTA")
+    (ucs               . #x093C)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI SIGN AVAGRAHA")
+    (ucs               . #x093D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI VOWEL SIGN AA")
+    (ucs               . #x093E)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI VOWEL SIGN I")
+    (ucs               . #x093F)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI VOWEL SIGN II")
+    (ucs               . #x0940)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI VOWEL SIGN U")
+    (ucs               . #x0941)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI VOWEL SIGN UU")
+    (ucs               . #x0942)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI VOWEL SIGN VOCALIC R")
+    (ucs               . #x0943)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI VOWEL SIGN VOCALIC RR")
+    (ucs               . #x0944)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI VOWEL SIGN CANDRA E")
+    (ucs               . #x0945)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI VOWEL SIGN SHORT E")
+    (ucs               . #x0946)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI VOWEL SIGN E")
+    (ucs               . #x0947)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI VOWEL SIGN AI")
+    (ucs               . #x0948)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI VOWEL SIGN CANDRA O")
+    (ucs               . #x0949)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI VOWEL SIGN SHORT O")
+    (ucs               . #x094A)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI VOWEL SIGN O")
+    (ucs               . #x094B)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI VOWEL SIGN AU")
+    (ucs               . #x094C)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI SIGN VIRAMA")
+    (ucs               . #x094D)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI OM")
+    (ucs               . #x0950)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI STRESS SIGN UDATTA")
+    (ucs               . #x0951)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI STRESS SIGN ANUDATTA")
+    (ucs               . #x0952)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI GRAVE ACCENT")
+    (ucs               . #x0953)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI ACUTE ACCENT")
+    (ucs               . #x0954)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER QA")
+    (ucs               . #x0958)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0915 #x093C)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER KHHA")
+    (ucs               . #x0959)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0916 #x093C)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER GHHA")
+    (ucs               . #x095A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0917 #x093C)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER ZA")
+    (ucs               . #x095B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x091C #x093C)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER DDDHA")
+    (ucs               . #x095C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0921 #x093C)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER RHA")
+    (ucs               . #x095D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0922 #x093C)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER FA")
+    (ucs               . #x095E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x092B #x093C)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER YYA")
+    (ucs               . #x095F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x092F #x093C)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER VOCALIC RR")
+    (ucs               . #x0960)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI LETTER VOCALIC LL")
+    (ucs               . #x0961)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI VOWEL SIGN VOCALIC L")
+    (ucs               . #x0962)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI VOWEL SIGN VOCALIC LL")
+    (ucs               . #x0963)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI DANDA")
+    (ucs               . #x0964)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI DOUBLE DANDA")
+    (ucs               . #x0965)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEVANAGARI DIGIT ZERO")
+    (ucs               . #x0966)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 0)
+    (digit-value        . 0)
+    (numeric-value      . 0)
+    ))
+(define-char
+  '((name              . "DEVANAGARI DIGIT ONE")
+    (ucs               . #x0967)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 1)
+    (digit-value        . 1)
+    (numeric-value      . 1)
+    ))
+(define-char
+  '((name              . "DEVANAGARI DIGIT TWO")
+    (ucs               . #x0968)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 2)
+    (digit-value        . 2)
+    (numeric-value      . 2)
+    ))
+(define-char
+  '((name              . "DEVANAGARI DIGIT THREE")
+    (ucs               . #x0969)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 3)
+    (digit-value        . 3)
+    (numeric-value      . 3)
+    ))
+(define-char
+  '((name              . "DEVANAGARI DIGIT FOUR")
+    (ucs               . #x096A)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 4)
+    (digit-value        . 4)
+    (numeric-value      . 4)
+    ))
+(define-char
+  '((name              . "DEVANAGARI DIGIT FIVE")
+    (ucs               . #x096B)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 5)
+    (digit-value        . 5)
+    (numeric-value      . 5)
+    ))
+(define-char
+  '((name              . "DEVANAGARI DIGIT SIX")
+    (ucs               . #x096C)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 6)
+    (digit-value        . 6)
+    (numeric-value      . 6)
+    ))
+(define-char
+  '((name              . "DEVANAGARI DIGIT SEVEN")
+    (ucs               . #x096D)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 7)
+    (digit-value        . 7)
+    (numeric-value      . 7)
+    ))
+(define-char
+  '((name              . "DEVANAGARI DIGIT EIGHT")
+    (ucs               . #x096E)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 8)
+    (digit-value        . 8)
+    (numeric-value      . 8)
+    ))
+(define-char
+  '((name              . "DEVANAGARI DIGIT NINE")
+    (ucs               . #x096F)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 9)
+    (digit-value        . 9)
+    (numeric-value      . 9)
+    ))
+(define-char
+  '((name              . "DEVANAGARI ABBREVIATION SIGN")
+    (ucs               . #x0970)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u00980-Bengali.el b/lisp/utf-2000/u00980-Bengali.el
new file mode 100644 (file)
index 0000000..6982e9d
--- /dev/null
@@ -0,0 +1,665 @@
+(define-char
+  '((name              . "BENGALI SIGN CANDRABINDU")
+    (ucs               . #x0981)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI SIGN ANUSVARA")
+    (ucs               . #x0982)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI SIGN VISARGA")
+    (ucs               . #x0983)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER A")
+    (ucs               . #x0985)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER AA")
+    (ucs               . #x0986)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER I")
+    (ucs               . #x0987)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER II")
+    (ucs               . #x0988)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER U")
+    (ucs               . #x0989)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER UU")
+    (ucs               . #x098A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER VOCALIC R")
+    (ucs               . #x098B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER VOCALIC L")
+    (ucs               . #x098C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER E")
+    (ucs               . #x098F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER AI")
+    (ucs               . #x0990)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER O")
+    (ucs               . #x0993)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER AU")
+    (ucs               . #x0994)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER KA")
+    (ucs               . #x0995)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER KHA")
+    (ucs               . #x0996)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER GA")
+    (ucs               . #x0997)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER GHA")
+    (ucs               . #x0998)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER NGA")
+    (ucs               . #x0999)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER CA")
+    (ucs               . #x099A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER CHA")
+    (ucs               . #x099B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER JA")
+    (ucs               . #x099C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER JHA")
+    (ucs               . #x099D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER NYA")
+    (ucs               . #x099E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER TTA")
+    (ucs               . #x099F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER TTHA")
+    (ucs               . #x09A0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER DDA")
+    (ucs               . #x09A1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER DDHA")
+    (ucs               . #x09A2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER NNA")
+    (ucs               . #x09A3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER TA")
+    (ucs               . #x09A4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER THA")
+    (ucs               . #x09A5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER DA")
+    (ucs               . #x09A6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER DHA")
+    (ucs               . #x09A7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER NA")
+    (ucs               . #x09A8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER PA")
+    (ucs               . #x09AA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER PHA")
+    (ucs               . #x09AB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER BA")
+    (ucs               . #x09AC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER BHA")
+    (ucs               . #x09AD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER MA")
+    (ucs               . #x09AE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER YA")
+    (ucs               . #x09AF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER RA")
+    (ucs               . #x09B0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER LA")
+    (ucs               . #x09B2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER SHA")
+    (ucs               . #x09B6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER SSA")
+    (ucs               . #x09B7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER SA")
+    (ucs               . #x09B8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER HA")
+    (ucs               . #x09B9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI SIGN NUKTA")
+    (ucs               . #x09BC)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI VOWEL SIGN AA")
+    (ucs               . #x09BE)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI VOWEL SIGN I")
+    (ucs               . #x09BF)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI VOWEL SIGN II")
+    (ucs               . #x09C0)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI VOWEL SIGN U")
+    (ucs               . #x09C1)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI VOWEL SIGN UU")
+    (ucs               . #x09C2)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI VOWEL SIGN VOCALIC R")
+    (ucs               . #x09C3)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI VOWEL SIGN VOCALIC RR")
+    (ucs               . #x09C4)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI VOWEL SIGN E")
+    (ucs               . #x09C7)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI VOWEL SIGN AI")
+    (ucs               . #x09C8)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI VOWEL SIGN O")
+    (ucs               . #x09CB)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x09C7 #x09BE)
+    ))
+(define-char
+  '((name              . "BENGALI VOWEL SIGN AU")
+    (ucs               . #x09CC)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x09C7 #x09D7)
+    ))
+(define-char
+  '((name              . "BENGALI SIGN VIRAMA")
+    (ucs               . #x09CD)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI AU LENGTH MARK")
+    (ucs               . #x09D7)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER RRA")
+    (ucs               . #x09DC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x09A1 #x09BC)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER RHA")
+    (ucs               . #x09DD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x09A2 #x09BC)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER YYA")
+    (ucs               . #x09DF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x09AF #x09BC)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER VOCALIC RR")
+    (ucs               . #x09E0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER VOCALIC LL")
+    (ucs               . #x09E1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI VOWEL SIGN VOCALIC L")
+    (ucs               . #x09E2)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI VOWEL SIGN VOCALIC LL")
+    (ucs               . #x09E3)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI DIGIT ZERO")
+    (ucs               . #x09E6)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 0)
+    (digit-value        . 0)
+    (numeric-value      . 0)
+    ))
+(define-char
+  '((name              . "BENGALI DIGIT ONE")
+    (ucs               . #x09E7)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 1)
+    (digit-value        . 1)
+    (numeric-value      . 1)
+    ))
+(define-char
+  '((name              . "BENGALI DIGIT TWO")
+    (ucs               . #x09E8)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 2)
+    (digit-value        . 2)
+    (numeric-value      . 2)
+    ))
+(define-char
+  '((name              . "BENGALI DIGIT THREE")
+    (ucs               . #x09E9)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 3)
+    (digit-value        . 3)
+    (numeric-value      . 3)
+    ))
+(define-char
+  '((name              . "BENGALI DIGIT FOUR")
+    (ucs               . #x09EA)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 4)
+    (digit-value        . 4)
+    (numeric-value      . 4)
+    ))
+(define-char
+  '((name              . "BENGALI DIGIT FIVE")
+    (ucs               . #x09EB)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 5)
+    (digit-value        . 5)
+    (numeric-value      . 5)
+    ))
+(define-char
+  '((name              . "BENGALI DIGIT SIX")
+    (ucs               . #x09EC)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 6)
+    (digit-value        . 6)
+    (numeric-value      . 6)
+    ))
+(define-char
+  '((name              . "BENGALI DIGIT SEVEN")
+    (ucs               . #x09ED)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 7)
+    (digit-value        . 7)
+    (numeric-value      . 7)
+    ))
+(define-char
+  '((name              . "BENGALI DIGIT EIGHT")
+    (ucs               . #x09EE)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 8)
+    (digit-value        . 8)
+    (numeric-value      . 8)
+    ))
+(define-char
+  '((name              . "BENGALI DIGIT NINE")
+    (ucs               . #x09EF)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 9)
+    (digit-value        . 9)
+    (numeric-value      . 9)
+    ))
+(define-char
+  '((name              . "BENGALI LETTER RA WITH MIDDLE DIAGONAL")
+    (ucs               . #x09F0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Assamese")
+    ))
+(define-char
+  '((name              . "BENGALI LETTER RA WITH LOWER DIAGONAL")
+    (ucs               . #x09F1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Assamese")
+    ))
+(define-char
+  '((name              . "BENGALI RUPEE MARK")
+    (ucs               . #x09F2)
+    (general-category  symbol currency) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI RUPEE SIGN")
+    (ucs               . #x09F3)
+    (general-category  symbol currency) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI CURRENCY NUMERATOR ONE")
+    (ucs               . #x09F4)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 1)
+    ))
+(define-char
+  '((name              . "BENGALI CURRENCY NUMERATOR TWO")
+    (ucs               . #x09F5)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 2)
+    ))
+(define-char
+  '((name              . "BENGALI CURRENCY NUMERATOR THREE")
+    (ucs               . #x09F6)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 3)
+    ))
+(define-char
+  '((name              . "BENGALI CURRENCY NUMERATOR FOUR")
+    (ucs               . #x09F7)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 4)
+    ))
+(define-char
+  '((name . "BENGALI CURRENCY NUMERATOR ONE LESS THAN THE DENOMINATOR")
+    (ucs               . #x09F8)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENGALI CURRENCY DENOMINATOR SIXTEEN")
+    (ucs               . #x09F9)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 16)
+    ))
+(define-char
+  '((name              . "BENGALI ISSHAR")
+    (ucs               . #x09FA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u00A00-Gurmukhi.el b/lisp/utf-2000/u00A00-Gurmukhi.el
new file mode 100644 (file)
index 0000000..bd8c443
--- /dev/null
@@ -0,0 +1,561 @@
+(define-char
+  '((name              . "GURMUKHI SIGN BINDI")
+    (ucs               . #x0A02)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER A")
+    (ucs               . #x0A05)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER AA")
+    (ucs               . #x0A06)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER I")
+    (ucs               . #x0A07)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER II")
+    (ucs               . #x0A08)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER U")
+    (ucs               . #x0A09)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER UU")
+    (ucs               . #x0A0A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER EE")
+    (ucs               . #x0A0F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER AI")
+    (ucs               . #x0A10)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER OO")
+    (ucs               . #x0A13)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER AU")
+    (ucs               . #x0A14)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER KA")
+    (ucs               . #x0A15)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER KHA")
+    (ucs               . #x0A16)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER GA")
+    (ucs               . #x0A17)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER GHA")
+    (ucs               . #x0A18)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER NGA")
+    (ucs               . #x0A19)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER CA")
+    (ucs               . #x0A1A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER CHA")
+    (ucs               . #x0A1B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER JA")
+    (ucs               . #x0A1C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER JHA")
+    (ucs               . #x0A1D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER NYA")
+    (ucs               . #x0A1E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER TTA")
+    (ucs               . #x0A1F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER TTHA")
+    (ucs               . #x0A20)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER DDA")
+    (ucs               . #x0A21)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER DDHA")
+    (ucs               . #x0A22)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER NNA")
+    (ucs               . #x0A23)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER TA")
+    (ucs               . #x0A24)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER THA")
+    (ucs               . #x0A25)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER DA")
+    (ucs               . #x0A26)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER DHA")
+    (ucs               . #x0A27)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER NA")
+    (ucs               . #x0A28)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER PA")
+    (ucs               . #x0A2A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER PHA")
+    (ucs               . #x0A2B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER BA")
+    (ucs               . #x0A2C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER BHA")
+    (ucs               . #x0A2D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER MA")
+    (ucs               . #x0A2E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER YA")
+    (ucs               . #x0A2F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER RA")
+    (ucs               . #x0A30)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER LA")
+    (ucs               . #x0A32)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER LLA")
+    (ucs               . #x0A33)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0A32 #x0A3C)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER VA")
+    (ucs               . #x0A35)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER SHA")
+    (ucs               . #x0A36)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0A38 #x0A3C)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER SA")
+    (ucs               . #x0A38)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER HA")
+    (ucs               . #x0A39)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI SIGN NUKTA")
+    (ucs               . #x0A3C)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI VOWEL SIGN AA")
+    (ucs               . #x0A3E)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI VOWEL SIGN I")
+    (ucs               . #x0A3F)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI VOWEL SIGN II")
+    (ucs               . #x0A40)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI VOWEL SIGN U")
+    (ucs               . #x0A41)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI VOWEL SIGN UU")
+    (ucs               . #x0A42)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI VOWEL SIGN EE")
+    (ucs               . #x0A47)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI VOWEL SIGN AI")
+    (ucs               . #x0A48)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI VOWEL SIGN OO")
+    (ucs               . #x0A4B)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI VOWEL SIGN AU")
+    (ucs               . #x0A4C)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI SIGN VIRAMA")
+    (ucs               . #x0A4D)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER KHHA")
+    (ucs               . #x0A59)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0A16 #x0A3C)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER GHHA")
+    (ucs               . #x0A5A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0A17 #x0A3C)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER ZA")
+    (ucs               . #x0A5B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0A1C #x0A3C)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER RRA")
+    (ucs               . #x0A5C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI LETTER FA")
+    (ucs               . #x0A5E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0A2B #x0A3C)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI DIGIT ZERO")
+    (ucs               . #x0A66)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 0)
+    (digit-value       . 0)
+    (numeric-value     . 0)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI DIGIT ONE")
+    (ucs               . #x0A67)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 1)
+    (digit-value       . 1)
+    (numeric-value     . 1)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI DIGIT TWO")
+    (ucs               . #x0A68)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 2)
+    (digit-value       . 2)
+    (numeric-value     . 2)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI DIGIT THREE")
+    (ucs               . #x0A69)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 3)
+    (digit-value       . 3)
+    (numeric-value     . 3)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI DIGIT FOUR")
+    (ucs               . #x0A6A)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 4)
+    (digit-value       . 4)
+    (numeric-value     . 4)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI DIGIT FIVE")
+    (ucs               . #x0A6B)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 5)
+    (digit-value       . 5)
+    (numeric-value     . 5)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI DIGIT SIX")
+    (ucs               . #x0A6C)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 6)
+    (digit-value       . 6)
+    (numeric-value     . 6)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI DIGIT SEVEN")
+    (ucs               . #x0A6D)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 7)
+    (digit-value       . 7)
+    (numeric-value     . 7)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI DIGIT EIGHT")
+    (ucs               . #x0A6E)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 8)
+    (digit-value       . 8)
+    (numeric-value     . 8)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI DIGIT NINE")
+    (ucs               . #x0A6F)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 9)
+    (digit-value       . 9)
+    (numeric-value     . 9)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI TIPPI")
+    (ucs               . #x0A70)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI ADDAK")
+    (ucs               . #x0A71)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI IRI")
+    (ucs               . #x0A72)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI URA")
+    (ucs               . #x0A73)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GURMUKHI EK ONKAR")
+    (ucs               . #x0A74)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u00A80-Gujarati.el b/lisp/utf-2000/u00A80-Gujarati.el
new file mode 100644 (file)
index 0000000..9585e19
--- /dev/null
@@ -0,0 +1,576 @@
+(define-char
+  '((name              . "GUJARATI SIGN CANDRABINDU")
+    (ucs               . #x0A81)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI SIGN ANUSVARA")
+    (ucs               . #x0A82)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI SIGN VISARGA")
+    (ucs               . #x0A83)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER A")
+    (ucs               . #x0A85)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER AA")
+    (ucs               . #x0A86)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER I")
+    (ucs               . #x0A87)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER II")
+    (ucs               . #x0A88)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER U")
+    (ucs               . #x0A89)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER UU")
+    (ucs               . #x0A8A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER VOCALIC R")
+    (ucs               . #x0A8B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI VOWEL CANDRA E")
+    (ucs               . #x0A8D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER E")
+    (ucs               . #x0A8F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER AI")
+    (ucs               . #x0A90)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI VOWEL CANDRA O")
+    (ucs               . #x0A91)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER O")
+    (ucs               . #x0A93)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER AU")
+    (ucs               . #x0A94)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER KA")
+    (ucs               . #x0A95)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER KHA")
+    (ucs               . #x0A96)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER GA")
+    (ucs               . #x0A97)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER GHA")
+    (ucs               . #x0A98)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER NGA")
+    (ucs               . #x0A99)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER CA")
+    (ucs               . #x0A9A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER CHA")
+    (ucs               . #x0A9B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER JA")
+    (ucs               . #x0A9C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER JHA")
+    (ucs               . #x0A9D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER NYA")
+    (ucs               . #x0A9E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER TTA")
+    (ucs               . #x0A9F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER TTHA")
+    (ucs               . #x0AA0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER DDA")
+    (ucs               . #x0AA1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER DDHA")
+    (ucs               . #x0AA2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER NNA")
+    (ucs               . #x0AA3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER TA")
+    (ucs               . #x0AA4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER THA")
+    (ucs               . #x0AA5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER DA")
+    (ucs               . #x0AA6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER DHA")
+    (ucs               . #x0AA7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER NA")
+    (ucs               . #x0AA8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER PA")
+    (ucs               . #x0AAA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER PHA")
+    (ucs               . #x0AAB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER BA")
+    (ucs               . #x0AAC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER BHA")
+    (ucs               . #x0AAD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER MA")
+    (ucs               . #x0AAE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER YA")
+    (ucs               . #x0AAF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER RA")
+    (ucs               . #x0AB0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER LA")
+    (ucs               . #x0AB2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER LLA")
+    (ucs               . #x0AB3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER VA")
+    (ucs               . #x0AB5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER SHA")
+    (ucs               . #x0AB6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER SSA")
+    (ucs               . #x0AB7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER SA")
+    (ucs               . #x0AB8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER HA")
+    (ucs               . #x0AB9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI SIGN NUKTA")
+    (ucs               . #x0ABC)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI SIGN AVAGRAHA")
+    (ucs               . #x0ABD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI VOWEL SIGN AA")
+    (ucs               . #x0ABE)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI VOWEL SIGN I")
+    (ucs               . #x0ABF)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI VOWEL SIGN II")
+    (ucs               . #x0AC0)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI VOWEL SIGN U")
+    (ucs               . #x0AC1)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI VOWEL SIGN UU")
+    (ucs               . #x0AC2)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI VOWEL SIGN VOCALIC R")
+    (ucs               . #x0AC3)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI VOWEL SIGN VOCALIC RR")
+    (ucs               . #x0AC4)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI VOWEL SIGN CANDRA E")
+    (ucs               . #x0AC5)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI VOWEL SIGN E")
+    (ucs               . #x0AC7)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI VOWEL SIGN AI")
+    (ucs               . #x0AC8)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI VOWEL SIGN CANDRA O")
+    (ucs               . #x0AC9)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI VOWEL SIGN O")
+    (ucs               . #x0ACB)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI VOWEL SIGN AU")
+    (ucs               . #x0ACC)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI SIGN VIRAMA")
+    (ucs               . #x0ACD)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI OM")
+    (ucs               . #x0AD0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI LETTER VOCALIC RR")
+    (ucs               . #x0AE0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI DIGIT ZERO")
+    (ucs               . #x0AE6)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 0)
+    (digit-value       . 0)
+    (numeric-value     . 0)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI DIGIT ONE")
+    (ucs               . #x0AE7)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 1)
+    (digit-value       . 1)
+    (numeric-value     . 1)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI DIGIT TWO")
+    (ucs               . #x0AE8)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 2)
+    (digit-value       . 2)
+    (numeric-value     . 2)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI DIGIT THREE")
+    (ucs               . #x0AE9)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 3)
+    (digit-value       . 3)
+    (numeric-value     . 3)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI DIGIT FOUR")
+    (ucs               . #x0AEA)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 4)
+    (digit-value       . 4)
+    (numeric-value     . 4)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI DIGIT FIVE")
+    (ucs               . #x0AEB)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 5)
+    (digit-value       . 5)
+    (numeric-value     . 5)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI DIGIT SIX")
+    (ucs               . #x0AEC)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 6)
+    (digit-value       . 6)
+    (numeric-value     . 6)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI DIGIT SEVEN")
+    (ucs               . #x0AED)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 7)
+    (digit-value       . 7)
+    (numeric-value     . 7)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI DIGIT EIGHT")
+    (ucs               . #x0AEE)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 8)
+    (digit-value       . 8)
+    (numeric-value     . 8)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GUJARATI DIGIT NINE")
+    (ucs               . #x0AEF)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 9)
+    (digit-value       . 9)
+    (numeric-value     . 9)
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u00B00-Oriya.el b/lisp/utf-2000/u00B00-Oriya.el
new file mode 100644 (file)
index 0000000..db8ab22
--- /dev/null
@@ -0,0 +1,588 @@
+(define-char
+  '((name              . "ORIYA SIGN CANDRABINDU")
+    (ucs               . #x0B01)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA SIGN ANUSVARA")
+    (ucs               . #x0B02)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA SIGN VISARGA")
+    (ucs               . #x0B03)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER A")
+    (ucs               . #x0B05)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER AA")
+    (ucs               . #x0B06)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER I")
+    (ucs               . #x0B07)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER II")
+    (ucs               . #x0B08)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER U")
+    (ucs               . #x0B09)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER UU")
+    (ucs               . #x0B0A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER VOCALIC R")
+    (ucs               . #x0B0B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER VOCALIC L")
+    (ucs               . #x0B0C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER E")
+    (ucs               . #x0B0F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER AI")
+    (ucs               . #x0B10)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER O")
+    (ucs               . #x0B13)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER AU")
+    (ucs               . #x0B14)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER KA")
+    (ucs               . #x0B15)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER KHA")
+    (ucs               . #x0B16)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER GA")
+    (ucs               . #x0B17)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER GHA")
+    (ucs               . #x0B18)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER NGA")
+    (ucs               . #x0B19)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER CA")
+    (ucs               . #x0B1A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER CHA")
+    (ucs               . #x0B1B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER JA")
+    (ucs               . #x0B1C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER JHA")
+    (ucs               . #x0B1D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER NYA")
+    (ucs               . #x0B1E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER TTA")
+    (ucs               . #x0B1F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER TTHA")
+    (ucs               . #x0B20)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER DDA")
+    (ucs               . #x0B21)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER DDHA")
+    (ucs               . #x0B22)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER NNA")
+    (ucs               . #x0B23)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER TA")
+    (ucs               . #x0B24)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER THA")
+    (ucs               . #x0B25)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER DA")
+    (ucs               . #x0B26)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER DHA")
+    (ucs               . #x0B27)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER NA")
+    (ucs               . #x0B28)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER PA")
+    (ucs               . #x0B2A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER PHA")
+    (ucs               . #x0B2B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER BA")
+    (ucs               . #x0B2C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER BHA")
+    (ucs               . #x0B2D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER MA")
+    (ucs               . #x0B2E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER YA")
+    (ucs               . #x0B2F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER RA")
+    (ucs               . #x0B30)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER LA")
+    (ucs               . #x0B32)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER LLA")
+    (ucs               . #x0B33)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER SHA")
+    (ucs               . #x0B36)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER SSA")
+    (ucs               . #x0B37)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER SA")
+    (ucs               . #x0B38)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER HA")
+    (ucs               . #x0B39)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA SIGN NUKTA")
+    (ucs               . #x0B3C)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA SIGN AVAGRAHA")
+    (ucs               . #x0B3D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA VOWEL SIGN AA")
+    (ucs               . #x0B3E)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA VOWEL SIGN I")
+    (ucs               . #x0B3F)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA VOWEL SIGN II")
+    (ucs               . #x0B40)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA VOWEL SIGN U")
+    (ucs               . #x0B41)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA VOWEL SIGN UU")
+    (ucs               . #x0B42)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA VOWEL SIGN VOCALIC R")
+    (ucs               . #x0B43)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA VOWEL SIGN E")
+    (ucs               . #x0B47)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA VOWEL SIGN AI")
+    (ucs               . #x0B48)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0B47 #x0B56)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA VOWEL SIGN O")
+    (ucs               . #x0B4B)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0B47 #x0B3E)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA VOWEL SIGN AU")
+    (ucs               . #x0B4C)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0B47 #x0B57)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA SIGN VIRAMA")
+    (ucs               . #x0B4D)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA AI LENGTH MARK")
+    (ucs               . #x0B56)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA AU LENGTH MARK")
+    (ucs               . #x0B57)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER RRA")
+    (ucs               . #x0B5C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0B21 #x0B3C)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER RHA")
+    (ucs               . #x0B5D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0B22 #x0B3C)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER YYA")
+    (ucs               . #x0B5F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER VOCALIC RR")
+    (ucs               . #x0B60)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA LETTER VOCALIC LL")
+    (ucs               . #x0B61)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA DIGIT ZERO")
+    (ucs               . #x0B66)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 0)
+    (digit-value       . 0)
+    (numeric-value     . 0)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA DIGIT ONE")
+    (ucs               . #x0B67)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 1)
+    (digit-value       . 1)
+    (numeric-value     . 1)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA DIGIT TWO")
+    (ucs               . #x0B68)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 2)
+    (digit-value       . 2)
+    (numeric-value     . 2)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA DIGIT THREE")
+    (ucs               . #x0B69)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 3)
+    (digit-value       . 3)
+    (numeric-value     . 3)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA DIGIT FOUR")
+    (ucs               . #x0B6A)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 4)
+    (digit-value       . 4)
+    (numeric-value     . 4)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA DIGIT FIVE")
+    (ucs               . #x0B6B)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 5)
+    (digit-value       . 5)
+    (numeric-value     . 5)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA DIGIT SIX")
+    (ucs               . #x0B6C)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 6)
+    (digit-value       . 6)
+    (numeric-value     . 6)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA DIGIT SEVEN")
+    (ucs               . #x0B6D)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 7)
+    (digit-value       . 7)
+    (numeric-value     . 7)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA DIGIT EIGHT")
+    (ucs               . #x0B6E)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 8)
+    (digit-value       . 8)
+    (numeric-value     . 8)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA DIGIT NINE")
+    (ucs               . #x0B6F)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 9)
+    (digit-value       . 9)
+    (numeric-value     . 9)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORIYA ISSHAR")
+    (ucs               . #x0B70)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u00B80-Tamil.el b/lisp/utf-2000/u00B80-Tamil.el
new file mode 100644 (file)
index 0000000..67408d9
--- /dev/null
@@ -0,0 +1,461 @@
+(define-char
+  '((name              . "TAMIL SIGN ANUSVARA")
+    (ucs               . #x0B82)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL SIGN VISARGA")
+    (ucs               . #x0B83)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER A")
+    (ucs               . #x0B85)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER AA")
+    (ucs               . #x0B86)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER I")
+    (ucs               . #x0B87)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER II")
+    (ucs               . #x0B88)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER U")
+    (ucs               . #x0B89)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER UU")
+    (ucs               . #x0B8A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER E")
+    (ucs               . #x0B8E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER EE")
+    (ucs               . #x0B8F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER AI")
+    (ucs               . #x0B90)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER O")
+    (ucs               . #x0B92)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER OO")
+    (ucs               . #x0B93)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER AU")
+    (ucs               . #x0B94)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0B92 #x0BD7)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER KA")
+    (ucs               . #x0B95)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER NGA")
+    (ucs               . #x0B99)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER CA")
+    (ucs               . #x0B9A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER JA")
+    (ucs               . #x0B9C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER NYA")
+    (ucs               . #x0B9E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER TTA")
+    (ucs               . #x0B9F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER NNA")
+    (ucs               . #x0BA3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER TA")
+    (ucs               . #x0BA4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER NA")
+    (ucs               . #x0BA8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER NNNA")
+    (ucs               . #x0BA9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER PA")
+    (ucs               . #x0BAA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER MA")
+    (ucs               . #x0BAE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER YA")
+    (ucs               . #x0BAF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER RA")
+    (ucs               . #x0BB0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER RRA")
+    (ucs               . #x0BB1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER LA")
+    (ucs               . #x0BB2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER LLA")
+    (ucs               . #x0BB3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER LLLA")
+    (ucs               . #x0BB4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER VA")
+    (ucs               . #x0BB5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER SSA")
+    (ucs               . #x0BB7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER SA")
+    (ucs               . #x0BB8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL LETTER HA")
+    (ucs               . #x0BB9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL VOWEL SIGN AA")
+    (ucs               . #x0BBE)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL VOWEL SIGN I")
+    (ucs               . #x0BBF)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL VOWEL SIGN II")
+    (ucs               . #x0BC0)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL VOWEL SIGN U")
+    (ucs               . #x0BC1)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL VOWEL SIGN UU")
+    (ucs               . #x0BC2)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL VOWEL SIGN E")
+    (ucs               . #x0BC6)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL VOWEL SIGN EE")
+    (ucs               . #x0BC7)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL VOWEL SIGN AI")
+    (ucs               . #x0BC8)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL VOWEL SIGN O")
+    (ucs               . #x0BCA)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0BC6 #x0BBE)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL VOWEL SIGN OO")
+    (ucs               . #x0BCB)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0BC7 #x0BBE)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL VOWEL SIGN AU")
+    (ucs               . #x0BCC)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0BC6 #x0BD7)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL SIGN VIRAMA")
+    (ucs               . #x0BCD)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL AU LENGTH MARK")
+    (ucs               . #x0BD7)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL DIGIT ONE")
+    (ucs               . #x0BE7)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 1)
+    (digit-value       . 1)
+    (numeric-value     . 1)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL DIGIT TWO")
+    (ucs               . #x0BE8)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 2)
+    (digit-value       . 2)
+    (numeric-value     . 2)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL DIGIT THREE")
+    (ucs               . #x0BE9)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 3)
+    (digit-value       . 3)
+    (numeric-value     . 3)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL DIGIT FOUR")
+    (ucs               . #x0BEA)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 4)
+    (digit-value       . 4)
+    (numeric-value     . 4)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL DIGIT FIVE")
+    (ucs               . #x0BEB)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 5)
+    (digit-value       . 5)
+    (numeric-value     . 5)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL DIGIT SIX")
+    (ucs               . #x0BEC)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 6)
+    (digit-value       . 6)
+    (numeric-value     . 6)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL DIGIT SEVEN")
+    (ucs               . #x0BED)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 7)
+    (digit-value       . 7)
+    (numeric-value     . 7)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL DIGIT EIGHT")
+    (ucs               . #x0BEE)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 8)
+    (digit-value       . 8)
+    (numeric-value     . 8)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL DIGIT NINE")
+    (ucs               . #x0BEF)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 9)
+    (digit-value       . 9)
+    (numeric-value     . 9)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL NUMBER TEN")
+    (ucs               . #x0BF0)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (numeric-value     . 10)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL NUMBER ONE HUNDRED")
+    (ucs               . #x0BF1)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (numeric-value     . 100)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAMIL NUMBER ONE THOUSAND")
+    (ucs               . #x0BF2)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (numeric-value     . 1000)
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u00C00-Telugu.el b/lisp/utf-2000/u00C00-Telugu.el
new file mode 100644 (file)
index 0000000..04e8102
--- /dev/null
@@ -0,0 +1,591 @@
+(define-char
+  '((name              . "TELUGU SIGN CANDRABINDU")
+    (ucs               . #x0C01)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU SIGN ANUSVARA")
+    (ucs               . #x0C02)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU SIGN VISARGA")
+    (ucs               . #x0C03)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER A")
+    (ucs               . #x0C05)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER AA")
+    (ucs               . #x0C06)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER I")
+    (ucs               . #x0C07)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER II")
+    (ucs               . #x0C08)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER U")
+    (ucs               . #x0C09)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER UU")
+    (ucs               . #x0C0A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER VOCALIC R")
+    (ucs               . #x0C0B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER VOCALIC L")
+    (ucs               . #x0C0C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER E")
+    (ucs               . #x0C0E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER EE")
+    (ucs               . #x0C0F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER AI")
+    (ucs               . #x0C10)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER O")
+    (ucs               . #x0C12)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER OO")
+    (ucs               . #x0C13)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER AU")
+    (ucs               . #x0C14)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER KA")
+    (ucs               . #x0C15)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER KHA")
+    (ucs               . #x0C16)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER GA")
+    (ucs               . #x0C17)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER GHA")
+    (ucs               . #x0C18)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER NGA")
+    (ucs               . #x0C19)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER CA")
+    (ucs               . #x0C1A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER CHA")
+    (ucs               . #x0C1B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER JA")
+    (ucs               . #x0C1C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER JHA")
+    (ucs               . #x0C1D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER NYA")
+    (ucs               . #x0C1E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER TTA")
+    (ucs               . #x0C1F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER TTHA")
+    (ucs               . #x0C20)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER DDA")
+    (ucs               . #x0C21)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER DDHA")
+    (ucs               . #x0C22)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER NNA")
+    (ucs               . #x0C23)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER TA")
+    (ucs               . #x0C24)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER THA")
+    (ucs               . #x0C25)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER DA")
+    (ucs               . #x0C26)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER DHA")
+    (ucs               . #x0C27)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER NA")
+    (ucs               . #x0C28)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER PA")
+    (ucs               . #x0C2A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER PHA")
+    (ucs               . #x0C2B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER BA")
+    (ucs               . #x0C2C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER BHA")
+    (ucs               . #x0C2D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER MA")
+    (ucs               . #x0C2E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER YA")
+    (ucs               . #x0C2F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER RA")
+    (ucs               . #x0C30)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER RRA")
+    (ucs               . #x0C31)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER LA")
+    (ucs               . #x0C32)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER LLA")
+    (ucs               . #x0C33)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER VA")
+    (ucs               . #x0C35)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER SHA")
+    (ucs               . #x0C36)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER SSA")
+    (ucs               . #x0C37)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER SA")
+    (ucs               . #x0C38)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER HA")
+    (ucs               . #x0C39)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU VOWEL SIGN AA")
+    (ucs               . #x0C3E)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU VOWEL SIGN I")
+    (ucs               . #x0C3F)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU VOWEL SIGN II")
+    (ucs               . #x0C40)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU VOWEL SIGN U")
+    (ucs               . #x0C41)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU VOWEL SIGN UU")
+    (ucs               . #x0C42)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU VOWEL SIGN VOCALIC R")
+    (ucs               . #x0C43)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU VOWEL SIGN VOCALIC RR")
+    (ucs               . #x0C44)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU VOWEL SIGN E")
+    (ucs               . #x0C46)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU VOWEL SIGN EE")
+    (ucs               . #x0C47)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU VOWEL SIGN AI")
+    (ucs               . #x0C48)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (->decomposition   #x0C46 #x0C56)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU VOWEL SIGN O")
+    (ucs               . #x0C4A)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU VOWEL SIGN OO")
+    (ucs               . #x0C4B)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU VOWEL SIGN AU")
+    (ucs               . #x0C4C)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU SIGN VIRAMA")
+    (ucs               . #x0C4D)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LENGTH MARK")
+    (ucs               . #x0C55)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU AI LENGTH MARK")
+    (ucs               . #x0C56)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER VOCALIC RR")
+    (ucs               . #x0C60)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU LETTER VOCALIC LL")
+    (ucs               . #x0C61)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU DIGIT ZERO")
+    (ucs               . #x0C66)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 0)
+    (digit-value       . 0)
+    (numeric-value     . 0)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU DIGIT ONE")
+    (ucs               . #x0C67)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 1)
+    (digit-value       . 1)
+    (numeric-value     . 1)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU DIGIT TWO")
+    (ucs               . #x0C68)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 2)
+    (digit-value       . 2)
+    (numeric-value     . 2)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU DIGIT THREE")
+    (ucs               . #x0C69)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 3)
+    (digit-value       . 3)
+    (numeric-value     . 3)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU DIGIT FOUR")
+    (ucs               . #x0C6A)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 4)
+    (digit-value       . 4)
+    (numeric-value     . 4)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU DIGIT FIVE")
+    (ucs               . #x0C6B)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 5)
+    (digit-value       . 5)
+    (numeric-value     . 5)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU DIGIT SIX")
+    (ucs               . #x0C6C)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 6)
+    (digit-value       . 6)
+    (numeric-value     . 6)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU DIGIT SEVEN")
+    (ucs               . #x0C6D)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 7)
+    (digit-value       . 7)
+    (numeric-value     . 7)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU DIGIT EIGHT")
+    (ucs               . #x0C6E)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 8)
+    (digit-value       . 8)
+    (numeric-value     . 8)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELUGU DIGIT NINE")
+    (ucs               . #x0C6F)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 9)
+    (digit-value       . 9)
+    (numeric-value     . 9)
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u00C80-Kannada.el b/lisp/utf-2000/u00C80-Kannada.el
new file mode 100644 (file)
index 0000000..914051b
--- /dev/null
@@ -0,0 +1,595 @@
+(define-char
+  '((name              . "KANNADA SIGN ANUSVARA")
+    (ucs               . #x0C82)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA SIGN VISARGA")
+    (ucs               . #x0C83)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER A")
+    (ucs               . #x0C85)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER AA")
+    (ucs               . #x0C86)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER I")
+    (ucs               . #x0C87)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER II")
+    (ucs               . #x0C88)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER U")
+    (ucs               . #x0C89)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER UU")
+    (ucs               . #x0C8A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER VOCALIC R")
+    (ucs               . #x0C8B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER VOCALIC L")
+    (ucs               . #x0C8C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER E")
+    (ucs               . #x0C8E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER EE")
+    (ucs               . #x0C8F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER AI")
+    (ucs               . #x0C90)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER O")
+    (ucs               . #x0C92)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER OO")
+    (ucs               . #x0C93)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER AU")
+    (ucs               . #x0C94)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER KA")
+    (ucs               . #x0C95)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER KHA")
+    (ucs               . #x0C96)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER GA")
+    (ucs               . #x0C97)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER GHA")
+    (ucs               . #x0C98)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER NGA")
+    (ucs               . #x0C99)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER CA")
+    (ucs               . #x0C9A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER CHA")
+    (ucs               . #x0C9B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER JA")
+    (ucs               . #x0C9C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER JHA")
+    (ucs               . #x0C9D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER NYA")
+    (ucs               . #x0C9E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER TTA")
+    (ucs               . #x0C9F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER TTHA")
+    (ucs               . #x0CA0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER DDA")
+    (ucs               . #x0CA1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER DDHA")
+    (ucs               . #x0CA2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER NNA")
+    (ucs               . #x0CA3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER TA")
+    (ucs               . #x0CA4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER THA")
+    (ucs               . #x0CA5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER DA")
+    (ucs               . #x0CA6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER DHA")
+    (ucs               . #x0CA7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER NA")
+    (ucs               . #x0CA8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER PA")
+    (ucs               . #x0CAA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER PHA")
+    (ucs               . #x0CAB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER BA")
+    (ucs               . #x0CAC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER BHA")
+    (ucs               . #x0CAD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER MA")
+    (ucs               . #x0CAE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER YA")
+    (ucs               . #x0CAF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER RA")
+    (ucs               . #x0CB0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER RRA")
+    (ucs               . #x0CB1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER LA")
+    (ucs               . #x0CB2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER LLA")
+    (ucs               . #x0CB3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER VA")
+    (ucs               . #x0CB5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER SHA")
+    (ucs               . #x0CB6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER SSA")
+    (ucs               . #x0CB7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER SA")
+    (ucs               . #x0CB8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER HA")
+    (ucs               . #x0CB9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA VOWEL SIGN AA")
+    (ucs               . #x0CBE)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA VOWEL SIGN I")
+    (ucs               . #x0CBF)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA VOWEL SIGN II")
+    (ucs               . #x0CC0)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0CBF #x0CD5)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA VOWEL SIGN U")
+    (ucs               . #x0CC1)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA VOWEL SIGN UU")
+    (ucs               . #x0CC2)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA VOWEL SIGN VOCALIC R")
+    (ucs               . #x0CC3)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA VOWEL SIGN VOCALIC RR")
+    (ucs               . #x0CC4)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA VOWEL SIGN E")
+    (ucs               . #x0CC6)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA VOWEL SIGN EE")
+    (ucs               . #x0CC7)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0CC6 #x0CD5)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA VOWEL SIGN AI")
+    (ucs               . #x0CC8)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0CC6 #x0CD6)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA VOWEL SIGN O")
+    (ucs               . #x0CCA)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0CC6 #x0CC2)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA VOWEL SIGN OO")
+    (ucs               . #x0CCB)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0CCA #x0CD5)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA VOWEL SIGN AU")
+    (ucs               . #x0CCC)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA SIGN VIRAMA")
+    (ucs               . #x0CCD)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LENGTH MARK")
+    (ucs               . #x0CD5)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA AI LENGTH MARK")
+    (ucs               . #x0CD6)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER FA")
+    (ucs               . #x0CDE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER VOCALIC RR")
+    (ucs               . #x0CE0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA LETTER VOCALIC LL")
+    (ucs               . #x0CE1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA DIGIT ZERO")
+    (ucs               . #x0CE6)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 0)
+    (digit-value       . 0)
+    (numeric-value     . 0)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA DIGIT ONE")
+    (ucs               . #x0CE7)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 1)
+    (digit-value       . 1)
+    (numeric-value     . 1)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA DIGIT TWO")
+    (ucs               . #x0CE8)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 2)
+    (digit-value       . 2)
+    (numeric-value     . 2)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA DIGIT THREE")
+    (ucs               . #x0CE9)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 3)
+    (digit-value       . 3)
+    (numeric-value     . 3)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA DIGIT FOUR")
+    (ucs               . #x0CEA)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 4)
+    (digit-value       . 4)
+    (numeric-value     . 4)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA DIGIT FIVE")
+    (ucs               . #x0CEB)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 5)
+    (digit-value       . 5)
+    (numeric-value     . 5)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA DIGIT SIX")
+    (ucs               . #x0CEC)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 6)
+    (digit-value       . 6)
+    (numeric-value     . 6)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA DIGIT SEVEN")
+    (ucs               . #x0CED)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 7)
+    (digit-value       . 7)
+    (numeric-value     . 7)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA DIGIT EIGHT")
+    (ucs               . #x0CEE)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 8)
+    (digit-value       . 8)
+    (numeric-value     . 8)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KANNADA DIGIT NINE")
+    (ucs               . #x0CEF)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 9)
+    (digit-value       . 9)
+    (numeric-value     . 9)
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u00D00-Malayalam.el b/lisp/utf-2000/u00D00-Malayalam.el
new file mode 100644 (file)
index 0000000..dd6dfc6
--- /dev/null
@@ -0,0 +1,579 @@
+(define-char
+  '((name              . "MALAYALAM SIGN ANUSVARA")
+    (ucs               . #x0D02)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM SIGN VISARGA")
+    (ucs               . #x0D03)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER A")
+    (ucs               . #x0D05)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER AA")
+    (ucs               . #x0D06)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER I")
+    (ucs               . #x0D07)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER II")
+    (ucs               . #x0D08)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER U")
+    (ucs               . #x0D09)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER UU")
+    (ucs               . #x0D0A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER VOCALIC R")
+    (ucs               . #x0D0B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER VOCALIC L")
+    (ucs               . #x0D0C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER E")
+    (ucs               . #x0D0E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER EE")
+    (ucs               . #x0D0F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER AI")
+    (ucs               . #x0D10)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER O")
+    (ucs               . #x0D12)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER OO")
+    (ucs               . #x0D13)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER AU")
+    (ucs               . #x0D14)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER KA")
+    (ucs               . #x0D15)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER KHA")
+    (ucs               . #x0D16)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER GA")
+    (ucs               . #x0D17)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER GHA")
+    (ucs               . #x0D18)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER NGA")
+    (ucs               . #x0D19)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER CA")
+    (ucs               . #x0D1A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER CHA")
+    (ucs               . #x0D1B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER JA")
+    (ucs               . #x0D1C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER JHA")
+    (ucs               . #x0D1D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER NYA")
+    (ucs               . #x0D1E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER TTA")
+    (ucs               . #x0D1F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER TTHA")
+    (ucs               . #x0D20)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER DDA")
+    (ucs               . #x0D21)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER DDHA")
+    (ucs               . #x0D22)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER NNA")
+    (ucs               . #x0D23)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER TA")
+    (ucs               . #x0D24)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER THA")
+    (ucs               . #x0D25)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER DA")
+    (ucs               . #x0D26)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER DHA")
+    (ucs               . #x0D27)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER NA")
+    (ucs               . #x0D28)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER PA")
+    (ucs               . #x0D2A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER PHA")
+    (ucs               . #x0D2B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER BA")
+    (ucs               . #x0D2C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER BHA")
+    (ucs               . #x0D2D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER MA")
+    (ucs               . #x0D2E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER YA")
+    (ucs               . #x0D2F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER RA")
+    (ucs               . #x0D30)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER RRA")
+    (ucs               . #x0D31)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER LA")
+    (ucs               . #x0D32)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER LLA")
+    (ucs               . #x0D33)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER LLLA")
+    (ucs               . #x0D34)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER VA")
+    (ucs               . #x0D35)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER SHA")
+    (ucs               . #x0D36)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER SSA")
+    (ucs               . #x0D37)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER SA")
+    (ucs               . #x0D38)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER HA")
+    (ucs               . #x0D39)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM VOWEL SIGN AA")
+    (ucs               . #x0D3E)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM VOWEL SIGN I")
+    (ucs               . #x0D3F)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM VOWEL SIGN II")
+    (ucs               . #x0D40)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM VOWEL SIGN U")
+    (ucs               . #x0D41)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM VOWEL SIGN UU")
+    (ucs               . #x0D42)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM VOWEL SIGN VOCALIC R")
+    (ucs               . #x0D43)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM VOWEL SIGN E")
+    (ucs               . #x0D46)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM VOWEL SIGN EE")
+    (ucs               . #x0D47)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM VOWEL SIGN AI")
+    (ucs               . #x0D48)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM VOWEL SIGN O")
+    (ucs               . #x0D4A)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0D46 #x0D3E)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM VOWEL SIGN OO")
+    (ucs               . #x0D4B)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0D47 #x0D3E)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM VOWEL SIGN AU")
+    (ucs               . #x0D4C)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0D46 #x0D57)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM SIGN VIRAMA")
+    (ucs               . #x0D4D)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM AU LENGTH MARK")
+    (ucs               . #x0D57)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER VOCALIC RR")
+    (ucs               . #x0D60)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM LETTER VOCALIC LL")
+    (ucs               . #x0D61)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM DIGIT ZERO")
+    (ucs               . #x0D66)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 0)
+    (digit-value       . 0)
+    (numeric-value     . 0)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM DIGIT ONE")
+    (ucs               . #x0D67)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 1)
+    (digit-value       . 1)
+    (numeric-value     . 1)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM DIGIT TWO")
+    (ucs               . #x0D68)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 2)
+    (digit-value       . 2)
+    (numeric-value     . 2)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM DIGIT THREE")
+    (ucs               . #x0D69)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 3)
+    (digit-value       . 3)
+    (numeric-value     . 3)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM DIGIT FOUR")
+    (ucs               . #x0D6A)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 4)
+    (digit-value       . 4)
+    (numeric-value     . 4)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM DIGIT FIVE")
+    (ucs               . #x0D6B)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 5)
+    (digit-value       . 5)
+    (numeric-value     . 5)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM DIGIT SIX")
+    (ucs               . #x0D6C)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 6)
+    (digit-value       . 6)
+    (numeric-value     . 6)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM DIGIT SEVEN")
+    (ucs               . #x0D6D)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 7)
+    (digit-value       . 7)
+    (numeric-value     . 7)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM DIGIT EIGHT")
+    (ucs               . #x0D6E)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 8)
+    (digit-value       . 8)
+    (numeric-value     . 8)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALAYALAM DIGIT NINE")
+    (ucs               . #x0D6F)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 9)
+    (digit-value       . 9)
+    (numeric-value     . 9)
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u00D80-Sinhala.el b/lisp/utf-2000/u00D80-Sinhala.el
new file mode 100644 (file)
index 0000000..55e6494
--- /dev/null
@@ -0,0 +1,564 @@
+(define-char
+  '((name              . "SINHALA SIGN ANUSVARAYA")
+    (ucs               . #x0D82)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA SIGN VISARGAYA")
+    (ucs               . #x0D83)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER AYANNA")
+    (ucs               . #x0D85)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER AAYANNA")
+    (ucs               . #x0D86)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER AEYANNA")
+    (ucs               . #x0D87)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER AEEYANNA")
+    (ucs               . #x0D88)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER IYANNA")
+    (ucs               . #x0D89)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER IIYANNA")
+    (ucs               . #x0D8A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER UYANNA")
+    (ucs               . #x0D8B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER UUYANNA")
+    (ucs               . #x0D8C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER IRUYANNA")
+    (ucs               . #x0D8D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER IRUUYANNA")
+    (ucs               . #x0D8E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER ILUYANNA")
+    (ucs               . #x0D8F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER ILUUYANNA")
+    (ucs               . #x0D90)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER EYANNA")
+    (ucs               . #x0D91)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER EEYANNA")
+    (ucs               . #x0D92)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER AIYANNA")
+    (ucs               . #x0D93)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER OYANNA")
+    (ucs               . #x0D94)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER OOYANNA")
+    (ucs               . #x0D95)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER AUYANNA")
+    (ucs               . #x0D96)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER ALPAPRAANA KAYANNA")
+    (ucs               . #x0D9A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER MAHAAPRAANA KAYANNA")
+    (ucs               . #x0D9B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER ALPAPRAANA GAYANNA")
+    (ucs               . #x0D9C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER MAHAAPRAANA GAYANNA")
+    (ucs               . #x0D9D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER KANTAJA NAASIKYAYA")
+    (ucs               . #x0D9E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER SANYAKA GAYANNA")
+    (ucs               . #x0D9F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER ALPAPRAANA CAYANNA")
+    (ucs               . #x0DA0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER MAHAAPRAANA CAYANNA")
+    (ucs               . #x0DA1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER ALPAPRAANA JAYANNA")
+    (ucs               . #x0DA2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER MAHAAPRAANA JAYANNA")
+    (ucs               . #x0DA3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER TAALUJA NAASIKYAYA")
+    (ucs               . #x0DA4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER TAALUJA SANYOOGA NAAKSIKYAYA")
+    (ucs               . #x0DA5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER SANYAKA JAYANNA")
+    (ucs               . #x0DA6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER ALPAPRAANA TTAYANNA")
+    (ucs               . #x0DA7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER MAHAAPRAANA TTAYANNA")
+    (ucs               . #x0DA8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER ALPAPRAANA DDAYANNA")
+    (ucs               . #x0DA9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER MAHAAPRAANA DDAYANNA")
+    (ucs               . #x0DAA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER MUURDHAJA NAYANNA")
+    (ucs               . #x0DAB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER SANYAKA DDAYANNA")
+    (ucs               . #x0DAC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER ALPAPRAANA TAYANNA")
+    (ucs               . #x0DAD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER MAHAAPRAANA TAYANNA")
+    (ucs               . #x0DAE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER ALPAPRAANA DAYANNA")
+    (ucs               . #x0DAF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER MAHAAPRAANA DAYANNA")
+    (ucs               . #x0DB0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER DANTAJA NAYANNA")
+    (ucs               . #x0DB1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER SANYAKA DAYANNA")
+    (ucs               . #x0DB3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER ALPAPRAANA PAYANNA")
+    (ucs               . #x0DB4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER MAHAAPRAANA PAYANNA")
+    (ucs               . #x0DB5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER ALPAPRAANA BAYANNA")
+    (ucs               . #x0DB6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER MAHAAPRAANA BAYANNA")
+    (ucs               . #x0DB7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER MAYANNA")
+    (ucs               . #x0DB8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER AMBA BAYANNA")
+    (ucs               . #x0DB9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER YAYANNA")
+    (ucs               . #x0DBA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER RAYANNA")
+    (ucs               . #x0DBB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER DANTAJA LAYANNA")
+    (ucs               . #x0DBD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER VAYANNA")
+    (ucs               . #x0DC0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER TAALUJA SAYANNA")
+    (ucs               . #x0DC1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER MUURDHAJA SAYANNA")
+    (ucs               . #x0DC2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER DANTAJA SAYANNA")
+    (ucs               . #x0DC3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER HAYANNA")
+    (ucs               . #x0DC4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER MUURDHAJA LAYANNA")
+    (ucs               . #x0DC5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA LETTER FAYANNA")
+    (ucs               . #x0DC6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA SIGN AL-LAKUNA")
+    (ucs               . #x0DCA)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA VOWEL SIGN AELA-PILLA")
+    (ucs               . #x0DCF)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA VOWEL SIGN KETTI AEDA-PILLA")
+    (ucs               . #x0DD0)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA VOWEL SIGN DIGA AEDA-PILLA")
+    (ucs               . #x0DD1)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA VOWEL SIGN KETTI IS-PILLA")
+    (ucs               . #x0DD2)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA VOWEL SIGN DIGA IS-PILLA")
+    (ucs               . #x0DD3)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA VOWEL SIGN KETTI PAA-PILLA")
+    (ucs               . #x0DD4)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA VOWEL SIGN DIGA PAA-PILLA")
+    (ucs               . #x0DD6)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA VOWEL SIGN GAETTA-PILLA")
+    (ucs               . #x0DD8)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA VOWEL SIGN KOMBUVA")
+    (ucs               . #x0DD9)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA VOWEL SIGN DIGA KOMBUVA")
+    (ucs               . #x0DDA)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0DD9 #x0DCA)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA VOWEL SIGN KOMBU DEKA")
+    (ucs               . #x0DDB)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA VOWEL SIGN KOMBUVA HAA AELA-PILLA")
+    (ucs               . #x0DDC)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0DD9 #x0DCF)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA VOWEL SIGN KOMBUVA HAA DIGA AELA-PILLA")
+    (ucs               . #x0DDD)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0DDC #x0DCA)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA VOWEL SIGN KOMBUVA HAA GAYANUKITTA")
+    (ucs               . #x0DDE)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0DD9 #x0DDF)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA VOWEL SIGN GAYANUKITTA")
+    (ucs               . #x0DDF)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA VOWEL SIGN DIGA GAETTA-PILLA")
+    (ucs               . #x0DF2)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA VOWEL SIGN DIGA GAYANUKITTA")
+    (ucs               . #x0DF3)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINHALA PUNCTUATION KUNDDALIYA")
+    (ucs               . #x0DF4)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u00E00-Thai.el b/lisp/utf-2000/u00E00-Thai.el
new file mode 100644 (file)
index 0000000..d222433
--- /dev/null
@@ -0,0 +1,735 @@
+(define-char
+  '((name              . "THAI CHARACTER KO KAI")
+    (ucs               . #x0E01)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x21)   ; \e-T¡\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER KHO KHAI")
+    (ucs               . #x0E02)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x22)   ; \e-T¢\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER KHO KHUAT")
+    (ucs               . #x0E03)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x23)   ; \e-T£\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER KHO KHWAI")
+    (ucs               . #x0E04)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x24)   ; \e-T¤\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER KHO KHON")
+    (ucs               . #x0E05)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x25)   ; \e-T¥\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER KHO RAKHANG")
+    (ucs               . #x0E06)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x26)   ; \e-T¦\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER NGO NGU")
+    (ucs               . #x0E07)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x27)   ; \e-T§\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER CHO CHAN")
+    (ucs               . #x0E08)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x28)   ; \e-T¨\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER CHO CHING")
+    (ucs               . #x0E09)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x29)   ; \e-T©\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER CHO CHANG")
+    (ucs               . #x0E0A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x2A)   ; \e-Tª\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER SO SO")
+    (ucs               . #x0E0B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x2B)   ; \e-T«\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER CHO CHOE")
+    (ucs               . #x0E0C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x2C)   ; \e-T¬\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER YO YING")
+    (ucs               . #x0E0D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x2D)   ; \e-T­\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER DO CHADA")
+    (ucs               . #x0E0E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x2E)   ; \e-T®\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER TO PATAK")
+    (ucs               . #x0E0F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x2F)   ; \e-T¯\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER THO THAN")
+    (ucs               . #x0E10)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x30)   ; \e-T°\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER THO NANGMONTHO")
+    (ucs               . #x0E11)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x31)   ; \e-T±\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER THO PHUTHAO")
+    (ucs               . #x0E12)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x32)   ; \e-T²\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER NO NEN")
+    (ucs               . #x0E13)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x33)   ; \e-T³\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER DO DEK")
+    (ucs               . #x0E14)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x34)   ; \e-T´\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER TO TAO")
+    (ucs               . #x0E15)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x35)   ; \e-Tµ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER THO THUNG")
+    (ucs               . #x0E16)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x36)   ; \e-T¶\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER THO THAHAN")
+    (ucs               . #x0E17)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x37)   ; \e-T·\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER THO THONG")
+    (ucs               . #x0E18)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x38)   ; \e-T¸\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER NO NU")
+    (ucs               . #x0E19)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x39)   ; \e-T¹\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER BO BAIMAI")
+    (ucs               . #x0E1A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x3A)   ; \e-Tº\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER PO PLA")
+    (ucs               . #x0E1B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x3B)   ; \e-T»\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER PHO PHUNG")
+    (ucs               . #x0E1C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x3C)   ; \e-T¼\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER FO FA")
+    (ucs               . #x0E1D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x3D)   ; \e-T½\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER PHO PHAN")
+    (ucs               . #x0E1E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x3E)   ; \e-T¾\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER FO FAN")
+    (ucs               . #x0E1F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x3F)   ; \e-T¿\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER PHO SAMPHAO")
+    (ucs               . #x0E20)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x40)   ; \e-TÀ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER MO MA")
+    (ucs               . #x0E21)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x41)   ; \e-TÁ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER YO YAK")
+    (ucs               . #x0E22)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x42)   ; \e-TÂ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER RO RUA")
+    (ucs               . #x0E23)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x43)   ; \e-TÃ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER RU")
+    (ucs               . #x0E24)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x44)   ; \e-TÄ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER LO LING")
+    (ucs               . #x0E25)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x45)   ; \e-TÅ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER LU")
+    (ucs               . #x0E26)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x46)   ; \e-TÆ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER WO WAEN")
+    (ucs               . #x0E27)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x47)   ; \e-TÇ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER SO SALA")
+    (ucs               . #x0E28)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x48)   ; \e-TÈ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER SO RUSI")
+    (ucs               . #x0E29)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x49)   ; \e-TÉ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER SO SUA")
+    (ucs               . #x0E2A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x4A)   ; \e-TÊ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER HO HIP")
+    (ucs               . #x0E2B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x4B)   ; \e-TË\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER LO CHULA")
+    (ucs               . #x0E2C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x4C)   ; \e-TÌ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER O ANG")
+    (ucs               . #x0E2D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x4D)   ; \e-TÍ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER HO NOKHUK")
+    (ucs               . #x0E2E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x4E)   ; \e-TÎ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER PAIYANNOI")
+    (ucs               . #x0E2F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "paiyan noi")
+    (thai-tis620       #x4F)   ; \e-TÏ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER SARA A")
+    (ucs               . #x0E30)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x50)   ; \e-TÐ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER MAI HAN-AKAT")
+    (ucs               . #x0E31)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (thai-tis620       #x51)   ; \e-TÑ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER SARA AA")
+    (ucs               . #x0E32)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x52)   ; \e-TÒ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER SARA AM")
+    (ucs               . #x0E33)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0E4D #x0E32)
+    (thai-tis620       #x53)   ; \e-TÓ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER SARA I")
+    (ucs               . #x0E34)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (thai-tis620       #x54)   ; \e-TÔ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER SARA II")
+    (ucs               . #x0E35)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (thai-tis620       #x55)   ; \e-TÕ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER SARA UE")
+    (ucs               . #x0E36)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (thai-tis620       #x56)   ; \e-TÖ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER SARA UEE")
+    (ucs               . #x0E37)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "sara uue")
+    (thai-tis620       #x57)   ; \e-T×\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER SARA U")
+    (ucs               . #x0E38)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (thai-tis620       #x58)   ; \e-TØ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER SARA UU")
+    (ucs               . #x0E39)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (thai-tis620       #x59)   ; \e-TÙ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER PHINTHU")
+    (ucs               . #x0E3A)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (thai-tis620       #x5A)   ; \e-TÚ\e-A
+    ))
+(define-char
+  '((name              . "THAI CURRENCY SYMBOL BAHT")
+    (ucs               . #x0E3F)
+    (general-category  symbol currency) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    (thai-tis620       #x5F)   ; \e-Tß\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER SARA E")
+    (ucs               . #x0E40)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x60)   ; \e-Tà\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER SARA AE")
+    (ucs               . #x0E41)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x61)   ; \e-Tá\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER SARA O")
+    (ucs               . #x0E42)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x62)   ; \e-Tâ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER SARA AI MAIMUAN")
+    (ucs               . #x0E43)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "sara ai mai muan")
+    (thai-tis620       #x63)   ; \e-Tã\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER SARA AI MAIMALAI")
+    (ucs               . #x0E44)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "sara ai mai malai")
+    (thai-tis620       #x64)   ; \e-Tä\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER LAKKHANGYAO")
+    (ucs               . #x0E45)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "lakkhang yao")
+    (thai-tis620       #x65)   ; \e-Tå\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER MAIYAMOK")
+    (ucs               . #x0E46)
+    (general-category  letter modifier) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "mai yamok")
+    (thai-tis620       #x66)   ; \e-Tæ\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER MAITAIKHU")
+    (ucs               . #x0E47)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "mai taikhu")
+    (thai-tis620       #x67)   ; \e-Tç\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER MAI EK")
+    (ucs               . #x0E48)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (thai-tis620       #x68)   ; \e-Tè\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER MAI THO")
+    (ucs               . #x0E49)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (thai-tis620       #x69)   ; \e-Té\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER MAI TRI")
+    (ucs               . #x0E4A)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (thai-tis620       #x6A)   ; \e-Tê\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER MAI CHATTAWA")
+    (ucs               . #x0E4B)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (thai-tis620       #x6B)   ; \e-Të\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER THANTHAKHAT")
+    (ucs               . #x0E4C)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (thai-tis620       #x6C)   ; \e-Tì\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER NIKHAHIT")
+    (ucs               . #x0E4D)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "nikkhahit")
+    (thai-tis620       #x6D)   ; \e-Tí\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER YAMAKKAN")
+    (ucs               . #x0E4E)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (thai-tis620       #x6E)   ; \e-Tî\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER FONGMAN")
+    (ucs               . #x0E4F)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x6F)   ; \e-Tï\e-A
+    ))
+(define-char
+  '((name              . "THAI DIGIT ZERO")
+    (ucs               . #x0E50)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 0)
+    (digit-value        . 0)
+    (numeric-value      . 0)
+    (thai-tis620       #x70)   ; \e-Tð\e-A
+    ))
+(define-char
+  '((name              . "THAI DIGIT ONE")
+    (ucs               . #x0E51)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 1)
+    (digit-value        . 1)
+    (numeric-value      . 1)
+    (thai-tis620       #x71)   ; \e-Tñ\e-A
+    ))
+(define-char
+  '((name              . "THAI DIGIT TWO")
+    (ucs               . #x0E52)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 2)
+    (digit-value        . 2)
+    (numeric-value      . 2)
+    (thai-tis620       #x72)   ; \e-Tò\e-A
+    ))
+(define-char
+  '((name              . "THAI DIGIT THREE")
+    (ucs               . #x0E53)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 3)
+    (digit-value        . 3)
+    (numeric-value      . 3)
+    (thai-tis620       #x73)   ; \e-Tó\e-A
+    ))
+(define-char
+  '((name              . "THAI DIGIT FOUR")
+    (ucs               . #x0E54)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 4)
+    (digit-value        . 4)
+    (numeric-value      . 4)
+    (thai-tis620       #x74)   ; \e-Tô\e-A
+    ))
+(define-char
+  '((name              . "THAI DIGIT FIVE")
+    (ucs               . #x0E55)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 5)
+    (digit-value        . 5)
+    (numeric-value      . 5)
+    (thai-tis620       #x75)   ; \e-Tõ\e-A
+    ))
+(define-char
+  '((name              . "THAI DIGIT SIX")
+    (ucs               . #x0E56)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 6)
+    (digit-value        . 6)
+    (numeric-value      . 6)
+    (thai-tis620       #x76)   ; \e-Tö\e-A
+    ))
+(define-char
+  '((name              . "THAI DIGIT SEVEN")
+    (ucs               . #x0E57)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 7)
+    (digit-value        . 7)
+    (numeric-value      . 7)
+    (thai-tis620       #x77)   ; \e-T÷\e-A
+    ))
+(define-char
+  '((name              . "THAI DIGIT EIGHT")
+    (ucs               . #x0E58)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 8)
+    (digit-value        . 8)
+    (numeric-value      . 8)
+    (thai-tis620       #x78)   ; \e-Tø\e-A
+    ))
+(define-char
+  '((name              . "THAI DIGIT NINE")
+    (ucs               . #x0E59)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 9)
+    (digit-value        . 9)
+    (numeric-value      . 9)
+    (thai-tis620       #x79)   ; \e-Tù\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER ANGKHANKHU")
+    (ucs               . #x0E5A)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x7A)   ; \e-Tú\e-A
+    ))
+(define-char
+  '((name              . "THAI CHARACTER KHOMUT")
+    (ucs               . #x0E5B)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (thai-tis620       #x7B)   ; \e-Tû\e-A
+    ))
diff --git a/lisp/utf-2000/u00E80-Lao.el b/lisp/utf-2000/u00E80-Lao.el
new file mode 100644 (file)
index 0000000..b06a513
--- /dev/null
@@ -0,0 +1,553 @@
+(define-char
+  '((name              . "LAO LETTER KO")
+    (ucs               . #x0E81)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x21)   ; \e)1¡\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER KHO SUNG")
+    (ucs               . #x0E82)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x22)   ; \e)1¢\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER KHO TAM")
+    (ucs               . #x0E84)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x24)   ; \e)1¤\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER NGO")
+    (ucs               . #x0E87)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x27)   ; \e)1§\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER CO")
+    (ucs               . #x0E88)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x28)   ; \e)1¨\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER SO TAM")
+    (ucs               . #x0E8A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x2A)   ; \e)1ª\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER NYO")
+    (ucs               . #x0E8D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x2D)   ; \e)1­\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER DO")
+    (ucs               . #x0E94)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x34)   ; \e)1´\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER TO")
+    (ucs               . #x0E95)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x35)   ; \e)1µ\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER THO SUNG")
+    (ucs               . #x0E96)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x36)   ; \e)1¶\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER THO TAM")
+    (ucs               . #x0E97)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x37)   ; \e)1·\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER NO")
+    (ucs               . #x0E99)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x39)   ; \e)1¹\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER BO")
+    (ucs               . #x0E9A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x3A)   ; \e)1º\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER PO")
+    (ucs               . #x0E9B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x3B)   ; \e)1»\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER PHO SUNG")
+    (ucs               . #x0E9C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x3C)   ; \e)1¼\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER FO TAM")
+    (ucs               . #x0E9D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x3D)   ; \e)1½\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER PHO TAM")
+    (ucs               . #x0E9E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x3E)   ; \e)1¾\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER FO SUNG")
+    (ucs               . #x0E9F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x3F)   ; \e)1¿\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER MO")
+    (ucs               . #x0EA1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x41)   ; \e)1Á\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER YO")
+    (ucs               . #x0EA2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x42)   ; \e)1Â\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER LO LING")
+    (ucs               . #x0EA3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x43)   ; \e)1Ã\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER LO LOOT")
+    (ucs               . #x0EA5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x45)   ; \e)1Å\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER WO")
+    (ucs               . #x0EA7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x47)   ; \e)1Ç\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER SO SUNG")
+    (ucs               . #x0EAA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x4A)   ; \e)1Ê\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER HO SUNG")
+    (ucs               . #x0EAB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x4B)   ; \e)1Ë\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER O")
+    (ucs               . #x0EAD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x4D)   ; \e)1Í\e-A
+    ))
+(define-char
+  '((name              . "LAO LETTER HO TAM")
+    (ucs               . #x0EAE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x4E)   ; \e)1Î\e-A
+    ))
+(define-char
+  '((name              . "LAO ELLIPSIS")
+    (ucs               . #x0EAF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x4F)   ; \e)1Ï\e-A
+    ))
+(define-char
+  '((name              . "LAO VOWEL SIGN A")
+    (ucs               . #x0EB0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x50)   ; \e)1Ð\e-A
+    ))
+(define-char
+  '((name              . "LAO VOWEL SIGN MAI KAN")
+    (ucs               . #x0EB1)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (lao               #x51)   ; \e)1Ñ\e-A
+    ))
+(define-char
+  '((name              . "LAO VOWEL SIGN AA")
+    (ucs               . #x0EB2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x52)   ; \e)1Ò\e-A
+    ))
+(define-char
+  '((name              . "LAO VOWEL SIGN AM")
+    (ucs               . #x0EB3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0ECD #x0EB2)
+    (lao               #x53)   ; \e)1Ó\e-A
+    ))
+(define-char
+  '((name              . "LAO VOWEL SIGN I")
+    (ucs               . #x0EB4)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (lao               #x54)   ; \e)1Ô\e-A
+    ))
+(define-char
+  '((name              . "LAO VOWEL SIGN II")
+    (ucs               . #x0EB5)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (lao               #x55)   ; \e)1Õ\e-A
+    ))
+(define-char
+  '((name              . "LAO VOWEL SIGN Y")
+    (ucs               . #x0EB6)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (lao               #x56)   ; \e)1Ö\e-A
+    ))
+(define-char
+  '((name              . "LAO VOWEL SIGN YY")
+    (ucs               . #x0EB7)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (lao               #x57)   ; \e)1×\e-A
+    ))
+(define-char
+  '((name              . "LAO VOWEL SIGN U")
+    (ucs               . #x0EB8)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (lao               #x58)   ; \e)1Ø\e-A
+    ))
+(define-char
+  '((name              . "LAO VOWEL SIGN UU")
+    (ucs               . #x0EB9)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (lao               #x59)   ; \e)1Ù\e-A
+    ))
+(define-char
+  '((name              . "LAO VOWEL SIGN MAI KON")
+    (ucs               . #x0EBB)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (lao               #x5B)   ; \e)1Û\e-A
+    ))
+(define-char
+  '((name              . "LAO SEMIVOWEL SIGN LO")
+    (ucs               . #x0EBC)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (lao               #x5C)   ; \e)1Ü\e-A
+    ))
+(define-char
+  '((name              . "LAO SEMIVOWEL SIGN NYO")
+    (ucs               . #x0EBD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x5D)   ; \e)1Ý\e-A
+    ))
+(define-char
+  '((name              . "LAO VOWEL SIGN E")
+    (ucs               . #x0EC0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x60)   ; \e)1à\e-A
+    ))
+(define-char
+  '((name              . "LAO VOWEL SIGN EI")
+    (ucs               . #x0EC1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x61)   ; \e)1á\e-A
+    ))
+(define-char
+  '((name              . "LAO VOWEL SIGN O")
+    (ucs               . #x0EC2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x62)   ; \e)1â\e-A
+    ))
+(define-char
+  '((name              . "LAO VOWEL SIGN AY")
+    (ucs               . #x0EC3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x63)   ; \e)1ã\e-A
+    ))
+(define-char
+  '((name              . "LAO VOWEL SIGN AI")
+    (ucs               . #x0EC4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x64)   ; \e)1ä\e-A
+    ))
+(define-char
+  '((name              . "LAO KO LA")
+    (ucs               . #x0EC6)
+    (general-category  letter modifier) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (lao               #x66)   ; \e)1æ\e-A
+    ))
+(define-char
+  '((name              . "LAO TONE MAI EK")
+    (ucs               . #x0EC8)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (lao               #x68)   ; \e)1è\e-A
+    ))
+(define-char
+  '((name              . "LAO TONE MAI THO")
+    (ucs               . #x0EC9)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (lao               #x69)   ; \e)1é\e-A
+    ))
+(define-char
+  '((name              . "LAO TONE MAI TI")
+    (ucs               . #x0ECA)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (lao               #x6A)   ; \e)1ê\e-A
+    ))
+(define-char
+  '((name              . "LAO TONE MAI CATAWA")
+    (ucs               . #x0ECB)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (lao               #x6B)   ; \e)1ë\e-A
+    ))
+(define-char
+  '((name              . "LAO CANCELLATION MARK")
+    (ucs               . #x0ECC)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (lao               #x6C)   ; \e)1ì\e-A
+    ))
+(define-char
+  '((name              . "LAO NIGGAHITA")
+    (ucs               . #x0ECD)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (lao               #x6D)   ; \e)1í\e-A
+    ))
+(define-char
+  '((name              . "LAO DIGIT ZERO")
+    (ucs               . #x0ED0)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 0)
+    (digit-value        . 0)
+    (numeric-value      . 0)
+    (lao               #x70)   ; \e)1ð\e-A
+    ))
+(define-char
+  '((name              . "LAO DIGIT ONE")
+    (ucs               . #x0ED1)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 1)
+    (digit-value        . 1)
+    (numeric-value      . 1)
+    (lao               #x71)   ; \e)1ñ\e-A
+    ))
+(define-char
+  '((name              . "LAO DIGIT TWO")
+    (ucs               . #x0ED2)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 2)
+    (digit-value        . 2)
+    (numeric-value      . 2)
+    (lao               #x72)   ; \e)1ò\e-A
+    ))
+(define-char
+  '((name              . "LAO DIGIT THREE")
+    (ucs               . #x0ED3)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 3)
+    (digit-value        . 3)
+    (numeric-value      . 3)
+    (lao               #x73)   ; \e)1ó\e-A
+    ))
+(define-char
+  '((name              . "LAO DIGIT FOUR")
+    (ucs               . #x0ED4)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 4)
+    (digit-value        . 4)
+    (numeric-value      . 4)
+    (lao               #x74)   ; \e)1ô\e-A
+    ))
+(define-char
+  '((name              . "LAO DIGIT FIVE")
+    (ucs               . #x0ED5)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 5)
+    (digit-value        . 5)
+    (numeric-value      . 5)
+    (lao               #x75)   ; \e)1õ\e-A
+    ))
+(define-char
+  '((name              . "LAO DIGIT SIX")
+    (ucs               . #x0ED6)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 6)
+    (digit-value        . 6)
+    (numeric-value      . 6)
+    (lao               #x76)   ; \e)1ö\e-A
+    ))
+(define-char
+  '((name              . "LAO DIGIT SEVEN")
+    (ucs               . #x0ED7)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 7)
+    (digit-value        . 7)
+    (numeric-value      . 7)
+    (lao               #x77)   ; \e)1÷\e-A
+    ))
+(define-char
+  '((name              . "LAO DIGIT EIGHT")
+    (ucs               . #x0ED8)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 8)
+    (digit-value        . 8)
+    (numeric-value      . 8)
+    (lao               #x78)   ; \e)1ø\e-A
+    ))
+(define-char
+  '((name              . "LAO DIGIT NINE")
+    (ucs               . #x0ED9)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 9)
+    (digit-value        . 9)
+    (numeric-value      . 9)
+    (lao               #x79)   ; \e)1ù\e-A
+    ))
+(define-char
+  '((name              . "LAO HO NO")
+    (ucs               . #x0EDC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0EAB #x0E99)
+    (lao               #x7C)   ; \e)1ü\e-A
+    ))
+(define-char
+  '((name              . "LAO HO MO")
+    (ucs               . #x0EDD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0EAB #x0EA1)
+    (lao               #x7D)   ; \e)1ý\e-A
+    ))
diff --git a/lisp/utf-2000/u00F00-Tibetan.el b/lisp/utf-2000/u00F00-Tibetan.el
new file mode 100644 (file)
index 0000000..8a0c803
--- /dev/null
@@ -0,0 +1,1475 @@
+(define-char
+  '((name              . "TIBETAN SYLLABLE OM")
+    (ucs               . #x0F00)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN MARK GTER YIG MGO TRUNCATED A")
+    (ucs               . #x0F01)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "ter yik go a thung")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK GTER YIG MGO -UM RNAM BCAD MA")
+    (ucs               . #x0F02)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "ter yik go wum nam chey ma")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK GTER YIG MGO -UM GTER TSHEG MA")
+    (ucs               . #x0F03)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "ter yik go wum ter tsek ma")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK INITIAL YIG MGO MDUN MA")
+    (ucs               . #x0F04)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "yik go dun ma")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK CLOSING YIG MGO SGAB MA")
+    (ucs               . #x0F05)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "yik go kab ma")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK CARET YIG MGO PHUR SHAD MA")
+    (ucs               . #x0F06)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "yik go pur shey ma")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK YIG MGO TSHEG SHAD MA")
+    (ucs               . #x0F07)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "yik go tsek shey ma")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK SBRUL SHAD")
+    (ucs               . #x0F08)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "drul shey")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK BSKUR YIG MGO")
+    (ucs               . #x0F09)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "kur yik go")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK BKA- SHOG YIG MGO")
+    (ucs               . #x0F0A)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "ka sho yik go")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK INTERSYLLABIC TSHEG")
+    (ucs               . #x0F0B)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "tsek")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK DELIMITER TSHEG BSTAR")
+    (ucs               . #x0F0C)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (->decomposition   noBreak #x0F0B)
+    (mirrored          . nil)
+    (iso-10646-comment . "tsek tar")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK SHAD")
+    (ucs               . #x0F0D)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "shey")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK NYIS SHAD")
+    (ucs               . #x0F0E)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "nyi shey")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK TSHEG SHAD")
+    (ucs               . #x0F0F)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "tsek shey")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK NYIS TSHEG SHAD")
+    (ucs               . #x0F10)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "nyi tsek shey")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK RIN CHEN SPUNGS SHAD")
+    (ucs               . #x0F11)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "rinchen pung shey")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK RGYA GRAM SHAD")
+    (ucs               . #x0F12)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "gya tram shey")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK CARET -DZUD RTAGS ME LONG CAN")
+    (ucs               . #x0F13)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "dzu ta me long chen")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK GTER TSHEG")
+    (ucs               . #x0F14)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "ter tsek")
+    ))
+(define-char
+  '((name              . "TIBETAN LOGOTYPE SIGN CHAD RTAGS")
+    (ucs               . #x0F15)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "che ta")
+    ))
+(define-char
+  '((name              . "TIBETAN LOGOTYPE SIGN LHAG RTAGS")
+    (ucs               . #x0F16)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "hlak ta")
+    ))
+(define-char
+  '((name              . "TIBETAN ASTROLOGICAL SIGN SGRA GCAN -CHAR RTAGS")
+    (ucs               . #x0F17)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "trachen char ta")
+    ))
+(define-char
+  '((name              . "TIBETAN ASTROLOGICAL SIGN -KHYUD PA")
+    (ucs               . #x0F18)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "kyu pa")
+    ))
+(define-char
+  '((name              . "TIBETAN ASTROLOGICAL SIGN SDONG TSHUGS")
+    (ucs               . #x0F19)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "dong tsu")
+    ))
+(define-char
+  '((name              . "TIBETAN SIGN RDEL DKAR GCIG")
+    (ucs               . #x0F1A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "deka chig")
+    ))
+(define-char
+  '((name              . "TIBETAN SIGN RDEL DKAR GNYIS")
+    (ucs               . #x0F1B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "deka nyi")
+    ))
+(define-char
+  '((name              . "TIBETAN SIGN RDEL DKAR GSUM")
+    (ucs               . #x0F1C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "deka sum")
+    ))
+(define-char
+  '((name              . "TIBETAN SIGN RDEL NAG GCIG")
+    (ucs               . #x0F1D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "dena chig")
+    ))
+(define-char
+  '((name              . "TIBETAN SIGN RDEL NAG GNYIS")
+    (ucs               . #x0F1E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "dena nyi")
+    ))
+(define-char
+  '((name              . "TIBETAN SIGN RDEL DKAR RDEL NAG")
+    (ucs               . #x0F1F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "deka dena")
+    ))
+(define-char
+  '((name              . "TIBETAN DIGIT ZERO")
+    (ucs               . #x0F20)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 0)
+    (digit-value       . 0)
+    (numeric-value     . 0)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN DIGIT ONE")
+    (ucs               . #x0F21)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 1)
+    (digit-value       . 1)
+    (numeric-value     . 1)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN DIGIT TWO")
+    (ucs               . #x0F22)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 2)
+    (digit-value       . 2)
+    (numeric-value     . 2)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN DIGIT THREE")
+    (ucs               . #x0F23)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 3)
+    (digit-value       . 3)
+    (numeric-value     . 3)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN DIGIT FOUR")
+    (ucs               . #x0F24)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 4)
+    (digit-value       . 4)
+    (numeric-value     . 4)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN DIGIT FIVE")
+    (ucs               . #x0F25)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 5)
+    (digit-value       . 5)
+    (numeric-value     . 5)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN DIGIT SIX")
+    (ucs               . #x0F26)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 6)
+    (digit-value       . 6)
+    (numeric-value     . 6)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN DIGIT SEVEN")
+    (ucs               . #x0F27)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 7)
+    (digit-value       . 7)
+    (numeric-value     . 7)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN DIGIT EIGHT")
+    (ucs               . #x0F28)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 8)
+    (digit-value       . 8)
+    (numeric-value     . 8)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN DIGIT NINE")
+    (ucs               . #x0F29)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 9)
+    (digit-value       . 9)
+    (numeric-value     . 9)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN DIGIT HALF ONE")
+    (ucs               . #x0F2A)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN DIGIT HALF TWO")
+    (ucs               . #x0F2B)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN DIGIT HALF THREE")
+    (ucs               . #x0F2C)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN DIGIT HALF FOUR")
+    (ucs               . #x0F2D)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN DIGIT HALF FIVE")
+    (ucs               . #x0F2E)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN DIGIT HALF SIX")
+    (ucs               . #x0F2F)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN DIGIT HALF SEVEN")
+    (ucs               . #x0F30)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN DIGIT HALF EIGHT")
+    (ucs               . #x0F31)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN DIGIT HALF NINE")
+    (ucs               . #x0F32)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN DIGIT HALF ZERO")
+    (ucs               . #x0F33)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN MARK BSDUS RTAGS")
+    (ucs               . #x0F34)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "du ta")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK NGAS BZUNG NYI ZLA")
+    (ucs               . #x0F35)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "nge zung nyi da")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK CARET -DZUD RTAGS BZHI MIG CAN")
+    (ucs               . #x0F36)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "dzu ta shi mig chen")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK NGAS BZUNG SGOR RTAGS")
+    (ucs               . #x0F37)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "nge zung gor ta")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK CHE MGO")
+    (ucs               . #x0F38)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "che go")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK TSA -PHRU")
+    (ucs               . #x0F39)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "tsa tru")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK GUG RTAGS GYON")
+    (ucs               . #x0F3A)
+    (general-category  punctuation open) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (iso-10646-comment . "gug ta yun")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK GUG RTAGS GYAS")
+    (ucs               . #x0F3B)
+    (general-category  punctuation close) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (iso-10646-comment . "gug ta ye")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK ANG KHANG GYON")
+    (ucs               . #x0F3C)
+    (general-category  punctuation open) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (iso-10646-comment . "ang kang yun")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK ANG KHANG GYAS")
+    (ucs               . #x0F3D)
+    (general-category  punctuation close) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (iso-10646-comment . "ang kang ye")
+    ))
+(define-char
+  '((name              . "TIBETAN SIGN YAR TSHES")
+    (ucs               . #x0F3E)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "yar tse")
+    ))
+(define-char
+  '((name              . "TIBETAN SIGN MAR TSHES")
+    (ucs               . #x0F3F)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "mar tse")
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER KA")
+    (ucs               . #x0F40)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER KHA")
+    (ucs               . #x0F41)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER GA")
+    (ucs               . #x0F42)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER GHA")
+    (ucs               . #x0F43)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0F42 #x0FB7)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER NGA")
+    (ucs               . #x0F44)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER CA")
+    (ucs               . #x0F45)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER CHA")
+    (ucs               . #x0F46)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER JA")
+    (ucs               . #x0F47)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER NYA")
+    (ucs               . #x0F49)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER TTA")
+    (ucs               . #x0F4A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER TTHA")
+    (ucs               . #x0F4B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER DDA")
+    (ucs               . #x0F4C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER DDHA")
+    (ucs               . #x0F4D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0F4C #x0FB7)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER NNA")
+    (ucs               . #x0F4E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER TA")
+    (ucs               . #x0F4F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER THA")
+    (ucs               . #x0F50)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER DA")
+    (ucs               . #x0F51)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER DHA")
+    (ucs               . #x0F52)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0F51 #x0FB7)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER NA")
+    (ucs               . #x0F53)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER PA")
+    (ucs               . #x0F54)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER PHA")
+    (ucs               . #x0F55)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER BA")
+    (ucs               . #x0F56)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER BHA")
+    (ucs               . #x0F57)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0F56 #x0FB7)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER MA")
+    (ucs               . #x0F58)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER TSA")
+    (ucs               . #x0F59)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER TSHA")
+    (ucs               . #x0F5A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER DZA")
+    (ucs               . #x0F5B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER DZHA")
+    (ucs               . #x0F5C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0F5B #x0FB7)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER WA")
+    (ucs               . #x0F5D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER ZHA")
+    (ucs               . #x0F5E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER ZA")
+    (ucs               . #x0F5F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER -A")
+    (ucs               . #x0F60)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER YA")
+    (ucs               . #x0F61)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER RA")
+    (ucs               . #x0F62)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "*")
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER LA")
+    (ucs               . #x0F63)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER SHA")
+    (ucs               . #x0F64)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER SSA")
+    (ucs               . #x0F65)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER SA")
+    (ucs               . #x0F66)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER HA")
+    (ucs               . #x0F67)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER A")
+    (ucs               . #x0F68)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER KSSA")
+    (ucs               . #x0F69)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0F40 #x0FB5)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN LETTER FIXED-FORM RA")
+    (ucs               . #x0F6A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "*")
+    ))
+(define-char
+  '((name              . "TIBETAN VOWEL SIGN AA")
+    (ucs               . #x0F71)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN VOWEL SIGN I")
+    (ucs               . #x0F72)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN VOWEL SIGN II")
+    (ucs               . #x0F73)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (->decomposition   #x0F71 #x0F72)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN VOWEL SIGN U")
+    (ucs               . #x0F74)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN VOWEL SIGN UU")
+    (ucs               . #x0F75)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (->decomposition   #x0F71 #x0F74)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN VOWEL SIGN VOCALIC R")
+    (ucs               . #x0F76)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (->decomposition   #x0FB2 #x0F80)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN VOWEL SIGN VOCALIC RR")
+    (ucs               . #x0F77)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (->decomposition   compat #x0FB2 #x0F81)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN VOWEL SIGN VOCALIC L")
+    (ucs               . #x0F78)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (->decomposition   #x0FB3 #x0F80)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN VOWEL SIGN VOCALIC LL")
+    (ucs               . #x0F79)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (->decomposition   compat #x0FB3 #x0F81)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN VOWEL SIGN E")
+    (ucs               . #x0F7A)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN VOWEL SIGN EE")
+    (ucs               . #x0F7B)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN VOWEL SIGN O")
+    (ucs               . #x0F7C)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN VOWEL SIGN OO")
+    (ucs               . #x0F7D)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SIGN RJES SU NGA RO")
+    (ucs               . #x0F7E)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "je su nga ro")
+    ))
+(define-char
+  '((name              . "TIBETAN SIGN RNAM BCAD")
+    (ucs               . #x0F7F)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "nam chey")
+    ))
+(define-char
+  '((name              . "TIBETAN VOWEL SIGN REVERSED I")
+    (ucs               . #x0F80)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN VOWEL SIGN REVERSED II")
+    (ucs               . #x0F81)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (->decomposition   #x0F71 #x0F80)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SIGN NYI ZLA NAA DA")
+    (ucs               . #x0F82)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "nyi da na da")
+    ))
+(define-char
+  '((name              . "TIBETAN SIGN SNA LDAN")
+    (ucs               . #x0F83)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "nan de")
+    ))
+(define-char
+  '((name              . "TIBETAN MARK HALANTA")
+    (ucs               . #x0F84)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN MARK PALUTA")
+    (ucs               . #x0F85)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SIGN LCI RTAGS")
+    (ucs               . #x0F86)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "ji ta")
+    ))
+(define-char
+  '((name              . "TIBETAN SIGN YANG RTAGS")
+    (ucs               . #x0F87)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "yang ta")
+    ))
+(define-char
+  '((name              . "TIBETAN SIGN LCE TSA CAN")
+    (ucs               . #x0F88)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "che tsa chen")
+    ))
+(define-char
+  '((name              . "TIBETAN SIGN MCHU CAN")
+    (ucs               . #x0F89)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "chu chen")
+    ))
+(define-char
+  '((name              . "TIBETAN SIGN GRU CAN RGYINGS")
+    (ucs               . #x0F8A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "tru chen ging")
+    ))
+(define-char
+  '((name              . "TIBETAN SIGN GRU MED RGYINGS")
+    (ucs               . #x0F8B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "tru me ging")
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER KA")
+    (ucs               . #x0F90)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER KHA")
+    (ucs               . #x0F91)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER GA")
+    (ucs               . #x0F92)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER GHA")
+    (ucs               . #x0F93)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (->decomposition   #x0F92 #x0FB7)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER NGA")
+    (ucs               . #x0F94)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER CA")
+    (ucs               . #x0F95)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER CHA")
+    (ucs               . #x0F96)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER JA")
+    (ucs               . #x0F97)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER NYA")
+    (ucs               . #x0F99)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER TTA")
+    (ucs               . #x0F9A)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER TTHA")
+    (ucs               . #x0F9B)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER DDA")
+    (ucs               . #x0F9C)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER DDHA")
+    (ucs               . #x0F9D)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (->decomposition   #x0F9C #x0FB7)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER NNA")
+    (ucs               . #x0F9E)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER TA")
+    (ucs               . #x0F9F)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER THA")
+    (ucs               . #x0FA0)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER DA")
+    (ucs               . #x0FA1)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER DHA")
+    (ucs               . #x0FA2)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (->decomposition   #x0FA1 #x0FB7)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER NA")
+    (ucs               . #x0FA3)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER PA")
+    (ucs               . #x0FA4)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER PHA")
+    (ucs               . #x0FA5)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER BA")
+    (ucs               . #x0FA6)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER BHA")
+    (ucs               . #x0FA7)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (->decomposition   #x0FA6 #x0FB7)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER MA")
+    (ucs               . #x0FA8)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER TSA")
+    (ucs               . #x0FA9)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER TSHA")
+    (ucs               . #x0FAA)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER DZA")
+    (ucs               . #x0FAB)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER DZHA")
+    (ucs               . #x0FAC)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (->decomposition   #x0FAB #x0FB7)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER WA")
+    (ucs               . #x0FAD)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "*")
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER ZHA")
+    (ucs               . #x0FAE)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER ZA")
+    (ucs               . #x0FAF)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER -A")
+    (ucs               . #x0FB0)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER YA")
+    (ucs               . #x0FB1)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "*")
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER RA")
+    (ucs               . #x0FB2)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "*")
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER LA")
+    (ucs               . #x0FB3)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER SHA")
+    (ucs               . #x0FB4)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER SSA")
+    (ucs               . #x0FB5)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER SA")
+    (ucs               . #x0FB6)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER HA")
+    (ucs               . #x0FB7)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER A")
+    (ucs               . #x0FB8)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER KSSA")
+    (ucs               . #x0FB9)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (->decomposition   #x0F90 #x0FB5)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER FIXED-FORM WA")
+    (ucs               . #x0FBA)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "*")
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER FIXED-FORM YA")
+    (ucs               . #x0FBB)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "*")
+    ))
+(define-char
+  '((name              . "TIBETAN SUBJOINED LETTER FIXED-FORM RA")
+    (ucs               . #x0FBC)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "*")
+    ))
+(define-char
+  '((name              . "TIBETAN KU RU KHA")
+    (ucs               . #x0FBE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "kuruka")
+    ))
+(define-char
+  '((name              . "TIBETAN KU RU KHA BZHI MIG CAN")
+    (ucs               . #x0FBF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "kuruka shi mik chen")
+    ))
+(define-char
+  '((name              . "TIBETAN CANTILLATION SIGN HEAVY BEAT")
+    (ucs               . #x0FC0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN CANTILLATION SIGN LIGHT BEAT")
+    (ucs               . #x0FC1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIBETAN CANTILLATION SIGN CANG TE-U")
+    (ucs               . #x0FC2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "chang tyu")
+    ))
+(define-char
+  '((name              . "TIBETAN CANTILLATION SIGN SBUB -CHAL")
+    (ucs               . #x0FC3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "bub chey")
+    ))
+(define-char
+  '((name              . "TIBETAN SYMBOL DRIL BU")
+    (ucs               . #x0FC4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "drilbu")
+    ))
+(define-char
+  '((name              . "TIBETAN SYMBOL RDO RJE")
+    (ucs               . #x0FC5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "dorje")
+    ))
+(define-char
+  '((name              . "TIBETAN SYMBOL PADMA GDAN")
+    (ucs               . #x0FC6)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    (iso-10646-comment . "pema den")
+    ))
+(define-char
+  '((name              . "TIBETAN SYMBOL RDO RJE RGYA GRAM")
+    (ucs               . #x0FC7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "dorje gya dram")
+    ))
+(define-char
+  '((name              . "TIBETAN SYMBOL PHUR PA")
+    (ucs               . #x0FC8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "phurba")
+    ))
+(define-char
+  '((name              . "TIBETAN SYMBOL NOR BU")
+    (ucs               . #x0FC9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "norbu")
+    ))
+(define-char
+  '((name              . "TIBETAN SYMBOL NOR BU NYIS -KHYIL")
+    (ucs               . #x0FCA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "norbu nyi khyi")
+    ))
+(define-char
+  '((name              . "TIBETAN SYMBOL NOR BU GSUM -KHYIL")
+    (ucs               . #x0FCB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "norbu sum khyi")
+    ))
+(define-char
+  '((name              . "TIBETAN SYMBOL NOR BU BZHI -KHYIL")
+    (ucs               . #x0FCC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "norbu shi khyi")
+    ))
+(define-char
+  '((name              . "TIBETAN SIGN RDEL NAG GSUM")
+    (ucs               . #x0FCF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u01000-Myanmar.el b/lisp/utf-2000/u01000-Myanmar.el
new file mode 100644 (file)
index 0000000..f1329e7
--- /dev/null
@@ -0,0 +1,577 @@
+(define-char
+  '((name              . "MYANMAR LETTER KA")
+    (ucs               . #x1000)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER KHA")
+    (ucs               . #x1001)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER GA")
+    (ucs               . #x1002)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER GHA")
+    (ucs               . #x1003)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER NGA")
+    (ucs               . #x1004)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER CA")
+    (ucs               . #x1005)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER CHA")
+    (ucs               . #x1006)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER JA")
+    (ucs               . #x1007)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER JHA")
+    (ucs               . #x1008)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER NYA")
+    (ucs               . #x1009)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER NNYA")
+    (ucs               . #x100A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER TTA")
+    (ucs               . #x100B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER TTHA")
+    (ucs               . #x100C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER DDA")
+    (ucs               . #x100D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER DDHA")
+    (ucs               . #x100E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER NNA")
+    (ucs               . #x100F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER TA")
+    (ucs               . #x1010)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER THA")
+    (ucs               . #x1011)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER DA")
+    (ucs               . #x1012)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER DHA")
+    (ucs               . #x1013)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER NA")
+    (ucs               . #x1014)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER PA")
+    (ucs               . #x1015)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER PHA")
+    (ucs               . #x1016)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER BA")
+    (ucs               . #x1017)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER BHA")
+    (ucs               . #x1018)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER MA")
+    (ucs               . #x1019)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER YA")
+    (ucs               . #x101A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER RA")
+    (ucs               . #x101B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER LA")
+    (ucs               . #x101C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER WA")
+    (ucs               . #x101D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER SA")
+    (ucs               . #x101E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER HA")
+    (ucs               . #x101F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER LLA")
+    (ucs               . #x1020)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER A")
+    (ucs               . #x1021)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER I")
+    (ucs               . #x1023)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER II")
+    (ucs               . #x1024)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER U")
+    (ucs               . #x1025)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER UU")
+    (ucs               . #x1026)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1025 #x102E)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER E")
+    (ucs               . #x1027)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER O")
+    (ucs               . #x1029)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER AU")
+    (ucs               . #x102A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR VOWEL SIGN AA")
+    (ucs               . #x102C)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR VOWEL SIGN I")
+    (ucs               . #x102D)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR VOWEL SIGN II")
+    (ucs               . #x102E)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR VOWEL SIGN U")
+    (ucs               . #x102F)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR VOWEL SIGN UU")
+    (ucs               . #x1030)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR VOWEL SIGN E")
+    (ucs               . #x1031)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR VOWEL SIGN AI")
+    (ucs               . #x1032)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR SIGN ANUSVARA")
+    (ucs               . #x1036)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR SIGN DOT BELOW")
+    (ucs               . #x1037)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR SIGN VISARGA")
+    (ucs               . #x1038)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR SIGN VIRAMA")
+    (ucs               . #x1039)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR DIGIT ZERO")
+    (ucs               . #x1040)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 0)
+    (digit-value       . 0)
+    (numeric-value     . 0)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR DIGIT ONE")
+    (ucs               . #x1041)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 1)
+    (digit-value       . 1)
+    (numeric-value     . 1)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR DIGIT TWO")
+    (ucs               . #x1042)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 2)
+    (digit-value       . 2)
+    (numeric-value     . 2)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR DIGIT THREE")
+    (ucs               . #x1043)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 3)
+    (digit-value       . 3)
+    (numeric-value     . 3)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR DIGIT FOUR")
+    (ucs               . #x1044)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 4)
+    (digit-value       . 4)
+    (numeric-value     . 4)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR DIGIT FIVE")
+    (ucs               . #x1045)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 5)
+    (digit-value       . 5)
+    (numeric-value     . 5)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR DIGIT SIX")
+    (ucs               . #x1046)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 6)
+    (digit-value       . 6)
+    (numeric-value     . 6)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR DIGIT SEVEN")
+    (ucs               . #x1047)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 7)
+    (digit-value       . 7)
+    (numeric-value     . 7)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR DIGIT EIGHT")
+    (ucs               . #x1048)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 8)
+    (digit-value       . 8)
+    (numeric-value     . 8)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR DIGIT NINE")
+    (ucs               . #x1049)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 9)
+    (digit-value       . 9)
+    (numeric-value     . 9)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR SIGN LITTLE SECTION")
+    (ucs               . #x104A)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR SIGN SECTION")
+    (ucs               . #x104B)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR SYMBOL LOCATIVE")
+    (ucs               . #x104C)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR SYMBOL COMPLETED")
+    (ucs               . #x104D)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR SYMBOL AFOREMENTIONED")
+    (ucs               . #x104E)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR SYMBOL GENITIVE")
+    (ucs               . #x104F)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER SHA")
+    (ucs               . #x1050)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER SSA")
+    (ucs               . #x1051)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER VOCALIC R")
+    (ucs               . #x1052)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER VOCALIC RR")
+    (ucs               . #x1053)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER VOCALIC L")
+    (ucs               . #x1054)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR LETTER VOCALIC LL")
+    (ucs               . #x1055)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR VOWEL SIGN VOCALIC R")
+    (ucs               . #x1056)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR VOWEL SIGN VOCALIC RR")
+    (ucs               . #x1057)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR VOWEL SIGN VOCALIC L")
+    (ucs               . #x1058)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MYANMAR VOWEL SIGN VOCALIC LL")
+    (ucs               . #x1059)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u010A0-Georgian.el b/lisp/utf-2000/u010A0-Georgian.el
new file mode 100644 (file)
index 0000000..2a4adbf
--- /dev/null
@@ -0,0 +1,584 @@
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER AN")
+    (ucs               . #x10A0)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER BAN")
+    (ucs               . #x10A1)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER GAN")
+    (ucs               . #x10A2)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER DON")
+    (ucs               . #x10A3)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER EN")
+    (ucs               . #x10A4)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER VIN")
+    (ucs               . #x10A5)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER ZEN")
+    (ucs               . #x10A6)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER TAN")
+    (ucs               . #x10A7)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER IN")
+    (ucs               . #x10A8)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER KAN")
+    (ucs               . #x10A9)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER LAS")
+    (ucs               . #x10AA)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER MAN")
+    (ucs               . #x10AB)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER NAR")
+    (ucs               . #x10AC)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER ON")
+    (ucs               . #x10AD)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER PAR")
+    (ucs               . #x10AE)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER ZHAR")
+    (ucs               . #x10AF)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER RAE")
+    (ucs               . #x10B0)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER SAN")
+    (ucs               . #x10B1)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER TAR")
+    (ucs               . #x10B2)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER UN")
+    (ucs               . #x10B3)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER PHAR")
+    (ucs               . #x10B4)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER KHAR")
+    (ucs               . #x10B5)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER GHAN")
+    (ucs               . #x10B6)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER QAR")
+    (ucs               . #x10B7)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER SHIN")
+    (ucs               . #x10B8)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER CHIN")
+    (ucs               . #x10B9)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER CAN")
+    (ucs               . #x10BA)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER JIL")
+    (ucs               . #x10BB)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER CIL")
+    (ucs               . #x10BC)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER CHAR")
+    (ucs               . #x10BD)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER XAN")
+    (ucs               . #x10BE)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER JHAN")
+    (ucs               . #x10BF)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER HAE")
+    (ucs               . #x10C0)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER HE")
+    (ucs               . #x10C1)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER HIE")
+    (ucs               . #x10C2)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER WE")
+    (ucs               . #x10C3)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER HAR")
+    (ucs               . #x10C4)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN CAPITAL LETTER HOE")
+    (ucs               . #x10C5)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Khutsuri")
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER AN")
+    (ucs               . #x10D0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER BAN")
+    (ucs               . #x10D1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER GAN")
+    (ucs               . #x10D2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER DON")
+    (ucs               . #x10D3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER EN")
+    (ucs               . #x10D4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER VIN")
+    (ucs               . #x10D5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER ZEN")
+    (ucs               . #x10D6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER TAN")
+    (ucs               . #x10D7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER IN")
+    (ucs               . #x10D8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER KAN")
+    (ucs               . #x10D9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER LAS")
+    (ucs               . #x10DA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER MAN")
+    (ucs               . #x10DB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER NAR")
+    (ucs               . #x10DC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER ON")
+    (ucs               . #x10DD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER PAR")
+    (ucs               . #x10DE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER ZHAR")
+    (ucs               . #x10DF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER RAE")
+    (ucs               . #x10E0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER SAN")
+    (ucs               . #x10E1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER TAR")
+    (ucs               . #x10E2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER UN")
+    (ucs               . #x10E3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER PHAR")
+    (ucs               . #x10E4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER KHAR")
+    (ucs               . #x10E5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER GHAN")
+    (ucs               . #x10E6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER QAR")
+    (ucs               . #x10E7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER SHIN")
+    (ucs               . #x10E8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER CHIN")
+    (ucs               . #x10E9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER CAN")
+    (ucs               . #x10EA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER JIL")
+    (ucs               . #x10EB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER CIL")
+    (ucs               . #x10EC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER CHAR")
+    (ucs               . #x10ED)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER XAN")
+    (ucs               . #x10EE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER JHAN")
+    (ucs               . #x10EF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER HAE")
+    (ucs               . #x10F0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER HE")
+    (ucs               . #x10F1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER HIE")
+    (ucs               . #x10F2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER WE")
+    (ucs               . #x10F3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER HAR")
+    (ucs               . #x10F4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER HOE")
+    (ucs               . #x10F5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN LETTER FI")
+    (ucs               . #x10F6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEORGIAN PARAGRAPH SEPARATOR")
+    (ucs               . #x10FB)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u01100-Hangul-Jamo.el b/lisp/utf-2000/u01100-Hangul-Jamo.el
new file mode 100644 (file)
index 0000000..7ca0827
--- /dev/null
@@ -0,0 +1,1725 @@
+(define-char
+  '((name              . "HANGUL CHOSEONG KIYEOK")
+    (ucs               . #x1100)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "g *")
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SSANGKIYEOK")
+    (ucs               . #x1101)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "gg *")
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG NIEUN")
+    (ucs               . #x1102)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "n *")
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG TIKEUT")
+    (ucs               . #x1103)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "d *")
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SSANGTIKEUT")
+    (ucs               . #x1104)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "dd *")
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG RIEUL")
+    (ucs               . #x1105)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "r *")
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG MIEUM")
+    (ucs               . #x1106)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "m *")
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG PIEUP")
+    (ucs               . #x1107)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "b *")
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SSANGPIEUP")
+    (ucs               . #x1108)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "bb *")
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SIOS")
+    (ucs               . #x1109)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "s *")
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SSANGSIOS")
+    (ucs               . #x110A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "ss *")
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG IEUNG")
+    (ucs               . #x110B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG CIEUC")
+    (ucs               . #x110C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "j *")
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SSANGCIEUC")
+    (ucs               . #x110D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "jj *")
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG CHIEUCH")
+    (ucs               . #x110E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "c *")
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG KHIEUKH")
+    (ucs               . #x110F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "k *")
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG THIEUTH")
+    (ucs               . #x1110)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "t *")
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG PHIEUPH")
+    (ucs               . #x1111)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "p *")
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG HIEUH")
+    (ucs               . #x1112)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "h *")
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG NIEUN-KIYEOK")
+    (ucs               . #x1113)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SSANGNIEUN")
+    (ucs               . #x1114)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG NIEUN-TIKEUT")
+    (ucs               . #x1115)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG NIEUN-PIEUP")
+    (ucs               . #x1116)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG TIKEUT-KIYEOK")
+    (ucs               . #x1117)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG RIEUL-NIEUN")
+    (ucs               . #x1118)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SSANGRIEUL")
+    (ucs               . #x1119)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG RIEUL-HIEUH")
+    (ucs               . #x111A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG KAPYEOUNRIEUL")
+    (ucs               . #x111B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG MIEUM-PIEUP")
+    (ucs               . #x111C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG KAPYEOUNMIEUM")
+    (ucs               . #x111D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG PIEUP-KIYEOK")
+    (ucs               . #x111E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG PIEUP-NIEUN")
+    (ucs               . #x111F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG PIEUP-TIKEUT")
+    (ucs               . #x1120)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG PIEUP-SIOS")
+    (ucs               . #x1121)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG PIEUP-SIOS-KIYEOK")
+    (ucs               . #x1122)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG PIEUP-SIOS-TIKEUT")
+    (ucs               . #x1123)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG PIEUP-SIOS-PIEUP")
+    (ucs               . #x1124)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG PIEUP-SSANGSIOS")
+    (ucs               . #x1125)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG PIEUP-SIOS-CIEUC")
+    (ucs               . #x1126)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG PIEUP-CIEUC")
+    (ucs               . #x1127)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG PIEUP-CHIEUCH")
+    (ucs               . #x1128)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG PIEUP-THIEUTH")
+    (ucs               . #x1129)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG PIEUP-PHIEUPH")
+    (ucs               . #x112A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG KAPYEOUNPIEUP")
+    (ucs               . #x112B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG KAPYEOUNSSANGPIEUP")
+    (ucs               . #x112C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SIOS-KIYEOK")
+    (ucs               . #x112D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SIOS-NIEUN")
+    (ucs               . #x112E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SIOS-TIKEUT")
+    (ucs               . #x112F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SIOS-RIEUL")
+    (ucs               . #x1130)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SIOS-MIEUM")
+    (ucs               . #x1131)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SIOS-PIEUP")
+    (ucs               . #x1132)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SIOS-PIEUP-KIYEOK")
+    (ucs               . #x1133)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SIOS-SSANGSIOS")
+    (ucs               . #x1134)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SIOS-IEUNG")
+    (ucs               . #x1135)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SIOS-CIEUC")
+    (ucs               . #x1136)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SIOS-CHIEUCH")
+    (ucs               . #x1137)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SIOS-KHIEUKH")
+    (ucs               . #x1138)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SIOS-THIEUTH")
+    (ucs               . #x1139)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SIOS-PHIEUPH")
+    (ucs               . #x113A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SIOS-HIEUH")
+    (ucs               . #x113B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG CHITUEUMSIOS")
+    (ucs               . #x113C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG CHITUEUMSSANGSIOS")
+    (ucs               . #x113D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG CEONGCHIEUMSIOS")
+    (ucs               . #x113E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG CEONGCHIEUMSSANGSIOS")
+    (ucs               . #x113F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG PANSIOS")
+    (ucs               . #x1140)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG IEUNG-KIYEOK")
+    (ucs               . #x1141)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG IEUNG-TIKEUT")
+    (ucs               . #x1142)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG IEUNG-MIEUM")
+    (ucs               . #x1143)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG IEUNG-PIEUP")
+    (ucs               . #x1144)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG IEUNG-SIOS")
+    (ucs               . #x1145)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG IEUNG-PANSIOS")
+    (ucs               . #x1146)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SSANGIEUNG")
+    (ucs               . #x1147)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG IEUNG-CIEUC")
+    (ucs               . #x1148)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG IEUNG-CHIEUCH")
+    (ucs               . #x1149)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG IEUNG-THIEUTH")
+    (ucs               . #x114A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG IEUNG-PHIEUPH")
+    (ucs               . #x114B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG YESIEUNG")
+    (ucs               . #x114C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG CIEUC-IEUNG")
+    (ucs               . #x114D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG CHITUEUMCIEUC")
+    (ucs               . #x114E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG CHITUEUMSSANGCIEUC")
+    (ucs               . #x114F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG CEONGCHIEUMCIEUC")
+    (ucs               . #x1150)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG CEONGCHIEUMSSANGCIEUC")
+    (ucs               . #x1151)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG CHIEUCH-KHIEUKH")
+    (ucs               . #x1152)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG CHIEUCH-HIEUH")
+    (ucs               . #x1153)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG CHITUEUMCHIEUCH")
+    (ucs               . #x1154)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG CEONGCHIEUMCHIEUCH")
+    (ucs               . #x1155)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG PHIEUPH-PIEUP")
+    (ucs               . #x1156)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG KAPYEOUNPHIEUPH")
+    (ucs               . #x1157)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG SSANGHIEUH")
+    (ucs               . #x1158)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG YEORINHIEUH")
+    (ucs               . #x1159)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL CHOSEONG FILLER")
+    (ucs               . #x115F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG FILLER")
+    (ucs               . #x1160)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG A")
+    (ucs               . #x1161)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG AE")
+    (ucs               . #x1162)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YA")
+    (ucs               . #x1163)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YAE")
+    (ucs               . #x1164)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG EO")
+    (ucs               . #x1165)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG E")
+    (ucs               . #x1166)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YEO")
+    (ucs               . #x1167)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YE")
+    (ucs               . #x1168)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG O")
+    (ucs               . #x1169)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG WA")
+    (ucs               . #x116A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG WAE")
+    (ucs               . #x116B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG OE")
+    (ucs               . #x116C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YO")
+    (ucs               . #x116D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG U")
+    (ucs               . #x116E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG WEO")
+    (ucs               . #x116F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG WE")
+    (ucs               . #x1170)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG WI")
+    (ucs               . #x1171)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YU")
+    (ucs               . #x1172)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG EU")
+    (ucs               . #x1173)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YI")
+    (ucs               . #x1174)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG I")
+    (ucs               . #x1175)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG A-O")
+    (ucs               . #x1176)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG A-U")
+    (ucs               . #x1177)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YA-O")
+    (ucs               . #x1178)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YA-YO")
+    (ucs               . #x1179)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG EO-O")
+    (ucs               . #x117A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG EO-U")
+    (ucs               . #x117B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG EO-EU")
+    (ucs               . #x117C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YEO-O")
+    (ucs               . #x117D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YEO-U")
+    (ucs               . #x117E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG O-EO")
+    (ucs               . #x117F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG O-E")
+    (ucs               . #x1180)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG O-YE")
+    (ucs               . #x1181)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG O-O")
+    (ucs               . #x1182)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG O-U")
+    (ucs               . #x1183)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YO-YA")
+    (ucs               . #x1184)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YO-YAE")
+    (ucs               . #x1185)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YO-YEO")
+    (ucs               . #x1186)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YO-O")
+    (ucs               . #x1187)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YO-I")
+    (ucs               . #x1188)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG U-A")
+    (ucs               . #x1189)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG U-AE")
+    (ucs               . #x118A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG U-EO-EU")
+    (ucs               . #x118B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG U-YE")
+    (ucs               . #x118C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG U-U")
+    (ucs               . #x118D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YU-A")
+    (ucs               . #x118E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YU-EO")
+    (ucs               . #x118F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YU-E")
+    (ucs               . #x1190)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YU-YEO")
+    (ucs               . #x1191)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YU-YE")
+    (ucs               . #x1192)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YU-U")
+    (ucs               . #x1193)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YU-I")
+    (ucs               . #x1194)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG EU-U")
+    (ucs               . #x1195)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG EU-EU")
+    (ucs               . #x1196)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG YI-U")
+    (ucs               . #x1197)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG I-A")
+    (ucs               . #x1198)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG I-YA")
+    (ucs               . #x1199)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG I-O")
+    (ucs               . #x119A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG I-U")
+    (ucs               . #x119B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG I-EU")
+    (ucs               . #x119C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG I-ARAEA")
+    (ucs               . #x119D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG ARAEA")
+    (ucs               . #x119E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG ARAEA-EO")
+    (ucs               . #x119F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG ARAEA-U")
+    (ucs               . #x11A0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG ARAEA-I")
+    (ucs               . #x11A1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JUNGSEONG SSANGARAEA")
+    (ucs               . #x11A2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG KIYEOK")
+    (ucs               . #x11A8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "g *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG SSANGKIYEOK")
+    (ucs               . #x11A9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "gg *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG KIYEOK-SIOS")
+    (ucs               . #x11AA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "gs *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG NIEUN")
+    (ucs               . #x11AB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "n *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG NIEUN-CIEUC")
+    (ucs               . #x11AC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "nj *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG NIEUN-HIEUH")
+    (ucs               . #x11AD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "nh *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG TIKEUT")
+    (ucs               . #x11AE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "d *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG RIEUL")
+    (ucs               . #x11AF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "l *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG RIEUL-KIYEOK")
+    (ucs               . #x11B0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "lg *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG RIEUL-MIEUM")
+    (ucs               . #x11B1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "lm *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG RIEUL-PIEUP")
+    (ucs               . #x11B2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "lb *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG RIEUL-SIOS")
+    (ucs               . #x11B3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "ls *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG RIEUL-THIEUTH")
+    (ucs               . #x11B4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "lt *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG RIEUL-PHIEUPH")
+    (ucs               . #x11B5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "lp *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG RIEUL-HIEUH")
+    (ucs               . #x11B6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "lh *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG MIEUM")
+    (ucs               . #x11B7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "m *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG PIEUP")
+    (ucs               . #x11B8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "b *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG PIEUP-SIOS")
+    (ucs               . #x11B9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "bs *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG SIOS")
+    (ucs               . #x11BA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "s *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG SSANGSIOS")
+    (ucs               . #x11BB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "ss *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG IEUNG")
+    (ucs               . #x11BC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "ng *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG CIEUC")
+    (ucs               . #x11BD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "j *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG CHIEUCH")
+    (ucs               . #x11BE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "c *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG KHIEUKH")
+    (ucs               . #x11BF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "k *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG THIEUTH")
+    (ucs               . #x11C0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "t *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG PHIEUPH")
+    (ucs               . #x11C1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "p *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG HIEUH")
+    (ucs               . #x11C2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "h *")
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG KIYEOK-RIEUL")
+    (ucs               . #x11C3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG KIYEOK-SIOS-KIYEOK")
+    (ucs               . #x11C4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG NIEUN-KIYEOK")
+    (ucs               . #x11C5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG NIEUN-TIKEUT")
+    (ucs               . #x11C6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG NIEUN-SIOS")
+    (ucs               . #x11C7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG NIEUN-PANSIOS")
+    (ucs               . #x11C8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG NIEUN-THIEUTH")
+    (ucs               . #x11C9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG TIKEUT-KIYEOK")
+    (ucs               . #x11CA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG TIKEUT-RIEUL")
+    (ucs               . #x11CB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG RIEUL-KIYEOK-SIOS")
+    (ucs               . #x11CC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG RIEUL-NIEUN")
+    (ucs               . #x11CD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG RIEUL-TIKEUT")
+    (ucs               . #x11CE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG RIEUL-TIKEUT-HIEUH")
+    (ucs               . #x11CF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG SSANGRIEUL")
+    (ucs               . #x11D0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG RIEUL-MIEUM-KIYEOK")
+    (ucs               . #x11D1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG RIEUL-MIEUM-SIOS")
+    (ucs               . #x11D2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG RIEUL-PIEUP-SIOS")
+    (ucs               . #x11D3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG RIEUL-PIEUP-HIEUH")
+    (ucs               . #x11D4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG RIEUL-KAPYEOUNPIEUP")
+    (ucs               . #x11D5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG RIEUL-SSANGSIOS")
+    (ucs               . #x11D6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG RIEUL-PANSIOS")
+    (ucs               . #x11D7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG RIEUL-KHIEUKH")
+    (ucs               . #x11D8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG RIEUL-YEORINHIEUH")
+    (ucs               . #x11D9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG MIEUM-KIYEOK")
+    (ucs               . #x11DA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG MIEUM-RIEUL")
+    (ucs               . #x11DB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG MIEUM-PIEUP")
+    (ucs               . #x11DC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG MIEUM-SIOS")
+    (ucs               . #x11DD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG MIEUM-SSANGSIOS")
+    (ucs               . #x11DE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG MIEUM-PANSIOS")
+    (ucs               . #x11DF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG MIEUM-CHIEUCH")
+    (ucs               . #x11E0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG MIEUM-HIEUH")
+    (ucs               . #x11E1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG KAPYEOUNMIEUM")
+    (ucs               . #x11E2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG PIEUP-RIEUL")
+    (ucs               . #x11E3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG PIEUP-PHIEUPH")
+    (ucs               . #x11E4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG PIEUP-HIEUH")
+    (ucs               . #x11E5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG KAPYEOUNPIEUP")
+    (ucs               . #x11E6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG SIOS-KIYEOK")
+    (ucs               . #x11E7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG SIOS-TIKEUT")
+    (ucs               . #x11E8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG SIOS-RIEUL")
+    (ucs               . #x11E9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG SIOS-PIEUP")
+    (ucs               . #x11EA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG PANSIOS")
+    (ucs               . #x11EB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG IEUNG-KIYEOK")
+    (ucs               . #x11EC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG IEUNG-SSANGKIYEOK")
+    (ucs               . #x11ED)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG SSANGIEUNG")
+    (ucs               . #x11EE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG IEUNG-KHIEUKH")
+    (ucs               . #x11EF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG YESIEUNG")
+    (ucs               . #x11F0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG YESIEUNG-SIOS")
+    (ucs               . #x11F1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG YESIEUNG-PANSIOS")
+    (ucs               . #x11F2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG PHIEUPH-PIEUP")
+    (ucs               . #x11F3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG KAPYEOUNPHIEUPH")
+    (ucs               . #x11F4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG HIEUH-NIEUN")
+    (ucs               . #x11F5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG HIEUH-RIEUL")
+    (ucs               . #x11F6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG HIEUH-MIEUM")
+    (ucs               . #x11F7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG HIEUH-PIEUP")
+    (ucs               . #x11F8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL JONGSEONG YEORINHIEUH")
+    (ucs               . #x11F9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u01200-Ethiopic.el b/lisp/utf-2000/u01200-Ethiopic.el
new file mode 100644 (file)
index 0000000..6c1ba8b
--- /dev/null
@@ -0,0 +1,3143 @@
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE HA")
+    (ucs               . #x1200)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x21)      ; \e$(3!!\e(B
+    (ethiopic-ucs      #x12 #x00)      ; \e$(3!!\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE HU")
+    (ucs               . #x1201)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x22)      ; \e$(3!"\e(B
+    (ethiopic-ucs      #x12 #x01)      ; \e$(3!"\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE HI")
+    (ucs               . #x1202)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x23)      ; \e$(3!#\e(B
+    (ethiopic-ucs      #x12 #x02)      ; \e$(3!#\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE HAA")
+    (ucs               . #x1203)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x24)      ; \e$(3!$\e(B
+    (ethiopic-ucs      #x12 #x03)      ; \e$(3!$\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE HEE")
+    (ucs               . #x1204)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x25)      ; \e$(3!%\e(B
+    (ethiopic-ucs      #x12 #x04)      ; \e$(3!%\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE HE")
+    (ucs               . #x1205)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x26)      ; \e$(3!&\e(B
+    (ethiopic-ucs      #x12 #x05)      ; \e$(3!&\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE HO")
+    (ucs               . #x1206)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x27)      ; \e$(3!'\e(B
+    (ethiopic-ucs      #x12 #x06)      ; \e$(3!'\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE LA")
+    (ucs               . #x1208)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x29)      ; \e$(3!)\e(B
+    (ethiopic-ucs      #x12 #x08)      ; \e$(3!)\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE LU")
+    (ucs               . #x1209)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x2A)      ; \e$(3!*\e(B
+    (ethiopic-ucs      #x12 #x09)      ; \e$(3!*\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE LI")
+    (ucs               . #x120A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x2B)      ; \e$(3!+\e(B
+    (ethiopic-ucs      #x12 #x0A)      ; \e$(3!+\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE LAA")
+    (ucs               . #x120B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x2C)      ; \e$(3!,\e(B
+    (ethiopic-ucs      #x12 #x0B)      ; \e$(3!,\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE LEE")
+    (ucs               . #x120C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x2D)      ; \e$(3!-\e(B
+    (ethiopic-ucs      #x12 #x0C)      ; \e$(3!-\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE LE")
+    (ucs               . #x120D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x2E)      ; \e$(3!.\e(B
+    (ethiopic-ucs      #x12 #x0D)      ; \e$(3!.\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE LO")
+    (ucs               . #x120E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x2F)      ; \e$(3!/\e(B
+    (ethiopic-ucs      #x12 #x0E)      ; \e$(3!/\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE LWA")
+    (ucs               . #x120F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x30)      ; \e$(3!0\e(B
+    (ethiopic-ucs      #x12 #x0F)      ; \e$(3!0\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE HHA")
+    (ucs               . #x1210)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x31)      ; \e$(3!1\e(B
+    (ethiopic-ucs      #x12 #x10)      ; \e$(3!1\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE HHU")
+    (ucs               . #x1211)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x32)      ; \e$(3!2\e(B
+    (ethiopic-ucs      #x12 #x11)      ; \e$(3!2\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE HHI")
+    (ucs               . #x1212)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x33)      ; \e$(3!3\e(B
+    (ethiopic-ucs      #x12 #x12)      ; \e$(3!3\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE HHAA")
+    (ucs               . #x1213)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x34)      ; \e$(3!4\e(B
+    (ethiopic-ucs      #x12 #x13)      ; \e$(3!4\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE HHEE")
+    (ucs               . #x1214)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x35)      ; \e$(3!5\e(B
+    (ethiopic-ucs      #x12 #x14)      ; \e$(3!5\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE HHE")
+    (ucs               . #x1215)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x36)      ; \e$(3!6\e(B
+    (ethiopic-ucs      #x12 #x15)      ; \e$(3!6\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE HHO")
+    (ucs               . #x1216)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x37)      ; \e$(3!7\e(B
+    (ethiopic-ucs      #x12 #x16)      ; \e$(3!7\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE HHWA")
+    (ucs               . #x1217)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x38)      ; \e$(3!8\e(B
+    (ethiopic-ucs      #x12 #x17)      ; \e$(3!8\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE MA")
+    (ucs               . #x1218)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x39)      ; \e$(3!9\e(B
+    (ethiopic-ucs      #x12 #x18)      ; \e$(3!9\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE MU")
+    (ucs               . #x1219)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x3A)      ; \e$(3!:\e(B
+    (ethiopic-ucs      #x12 #x19)      ; \e$(3!:\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE MI")
+    (ucs               . #x121A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x3B)      ; \e$(3!;\e(B
+    (ethiopic-ucs      #x12 #x1A)      ; \e$(3!;\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE MAA")
+    (ucs               . #x121B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x3C)      ; \e$(3!<\e(B
+    (ethiopic-ucs      #x12 #x1B)      ; \e$(3!<\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE MEE")
+    (ucs               . #x121C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x3D)      ; \e$(3!=\e(B
+    (ethiopic-ucs      #x12 #x1C)      ; \e$(3!=\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE ME")
+    (ucs               . #x121D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x3E)      ; \e$(3!>\e(B
+    (ethiopic-ucs      #x12 #x1D)      ; \e$(3!>\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE MO")
+    (ucs               . #x121E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x3F)      ; \e$(3!?\e(B
+    (ethiopic-ucs      #x12 #x1E)      ; \e$(3!?\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE MWA")
+    (ucs               . #x121F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x40)      ; \e$(3!@\e(B
+    (ethiopic-ucs      #x12 #x1F)      ; \e$(3!@\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SZA")
+    (ucs               . #x1220)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x41)      ; \e$(3!A\e(B
+    (ethiopic-ucs      #x12 #x20)      ; \e$(3!A\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SZU")
+    (ucs               . #x1221)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x42)      ; \e$(3!B\e(B
+    (ethiopic-ucs      #x12 #x21)      ; \e$(3!B\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SZI")
+    (ucs               . #x1222)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x43)      ; \e$(3!C\e(B
+    (ethiopic-ucs      #x12 #x22)      ; \e$(3!C\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SZAA")
+    (ucs               . #x1223)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x44)      ; \e$(3!D\e(B
+    (ethiopic-ucs      #x12 #x23)      ; \e$(3!D\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SZEE")
+    (ucs               . #x1224)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x45)      ; \e$(3!E\e(B
+    (ethiopic-ucs      #x12 #x24)      ; \e$(3!E\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SZE")
+    (ucs               . #x1225)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x46)      ; \e$(3!F\e(B
+    (ethiopic-ucs      #x12 #x25)      ; \e$(3!F\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SZO")
+    (ucs               . #x1226)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x47)      ; \e$(3!G\e(B
+    (ethiopic-ucs      #x12 #x26)      ; \e$(3!G\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SZWA")
+    (ucs               . #x1227)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x48)      ; \e$(3!H\e(B
+    (ethiopic-ucs      #x12 #x27)      ; \e$(3!H\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE RA")
+    (ucs               . #x1228)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x49)      ; \e$(3!I\e(B
+    (ethiopic-ucs      #x12 #x28)      ; \e$(3!I\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE RU")
+    (ucs               . #x1229)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x4A)      ; \e$(3!J\e(B
+    (ethiopic-ucs      #x12 #x29)      ; \e$(3!J\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE RI")
+    (ucs               . #x122A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x4B)      ; \e$(3!K\e(B
+    (ethiopic-ucs      #x12 #x2A)      ; \e$(3!K\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE RAA")
+    (ucs               . #x122B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x4C)      ; \e$(3!L\e(B
+    (ethiopic-ucs      #x12 #x2B)      ; \e$(3!L\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE REE")
+    (ucs               . #x122C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x4D)      ; \e$(3!M\e(B
+    (ethiopic-ucs      #x12 #x2C)      ; \e$(3!M\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE RE")
+    (ucs               . #x122D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x4E)      ; \e$(3!N\e(B
+    (ethiopic-ucs      #x12 #x2D)      ; \e$(3!N\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE RO")
+    (ucs               . #x122E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x4F)      ; \e$(3!O\e(B
+    (ethiopic-ucs      #x12 #x2E)      ; \e$(3!O\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE RWA")
+    (ucs               . #x122F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x50)      ; \e$(3!P\e(B
+    (ethiopic-ucs      #x12 #x2F)      ; \e$(3!P\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SA")
+    (ucs               . #x1230)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x51)      ; \e$(3!Q\e(B
+    (ethiopic-ucs      #x12 #x30)      ; \e$(3!Q\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SU")
+    (ucs               . #x1231)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x52)      ; \e$(3!R\e(B
+    (ethiopic-ucs      #x12 #x31)      ; \e$(3!R\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SI")
+    (ucs               . #x1232)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x53)      ; \e$(3!S\e(B
+    (ethiopic-ucs      #x12 #x32)      ; \e$(3!S\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SAA")
+    (ucs               . #x1233)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x54)      ; \e$(3!T\e(B
+    (ethiopic-ucs      #x12 #x33)      ; \e$(3!T\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SEE")
+    (ucs               . #x1234)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x55)      ; \e$(3!U\e(B
+    (ethiopic-ucs      #x12 #x34)      ; \e$(3!U\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SE")
+    (ucs               . #x1235)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x56)      ; \e$(3!V\e(B
+    (ethiopic-ucs      #x12 #x35)      ; \e$(3!V\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SO")
+    (ucs               . #x1236)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x57)      ; \e$(3!W\e(B
+    (ethiopic-ucs      #x12 #x36)      ; \e$(3!W\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SWA")
+    (ucs               . #x1237)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x58)      ; \e$(3!X\e(B
+    (ethiopic-ucs      #x12 #x37)      ; \e$(3!X\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SHA")
+    (ucs               . #x1238)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x59)      ; \e$(3!Y\e(B
+    (ethiopic-ucs      #x12 #x38)      ; \e$(3!Y\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SHU")
+    (ucs               . #x1239)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x5A)      ; \e$(3!Z\e(B
+    (ethiopic-ucs      #x12 #x39)      ; \e$(3!Z\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SHI")
+    (ucs               . #x123A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x5B)      ; \e$(3![\e(B
+    (ethiopic-ucs      #x12 #x3A)      ; \e$(3![\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SHAA")
+    (ucs               . #x123B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x5C)      ; \e$(3!\\e(B
+    (ethiopic-ucs      #x12 #x3B)      ; \e$(3!\\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SHEE")
+    (ucs               . #x123C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x5D)      ; \e$(3!]\e(B
+    (ethiopic-ucs      #x12 #x3C)      ; \e$(3!]\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SHE")
+    (ucs               . #x123D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x5E)      ; \e$(3!^\e(B
+    (ethiopic-ucs      #x12 #x3D)      ; \e$(3!^\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SHO")
+    (ucs               . #x123E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x5F)      ; \e$(3!_\e(B
+    (ethiopic-ucs      #x12 #x3E)      ; \e$(3!_\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE SHWA")
+    (ucs               . #x123F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x60)      ; \e$(3!`\e(B
+    (ethiopic-ucs      #x12 #x3F)      ; \e$(3!`\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QA")
+    (ucs               . #x1240)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x61)      ; \e$(3!a\e(B
+    (ethiopic-ucs      #x12 #x40)      ; \e$(3!a\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QU")
+    (ucs               . #x1241)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x62)      ; \e$(3!b\e(B
+    (ethiopic-ucs      #x12 #x41)      ; \e$(3!b\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QI")
+    (ucs               . #x1242)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x63)      ; \e$(3!c\e(B
+    (ethiopic-ucs      #x12 #x42)      ; \e$(3!c\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QAA")
+    (ucs               . #x1243)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x64)      ; \e$(3!d\e(B
+    (ethiopic-ucs      #x12 #x43)      ; \e$(3!d\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QEE")
+    (ucs               . #x1244)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x65)      ; \e$(3!e\e(B
+    (ethiopic-ucs      #x12 #x44)      ; \e$(3!e\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QE")
+    (ucs               . #x1245)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x66)      ; \e$(3!f\e(B
+    (ethiopic-ucs      #x12 #x45)      ; \e$(3!f\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QO")
+    (ucs               . #x1246)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x67)      ; \e$(3!g\e(B
+    (ethiopic-ucs      #x12 #x46)      ; \e$(3!g\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QWA")
+    (ucs               . #x1248)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x69)      ; \e$(3!i\e(B
+    (ethiopic-ucs      #x12 #x48)      ; \e$(3!i\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QWI")
+    (ucs               . #x124A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x6B)      ; \e$(3!k\e(B
+    (ethiopic-ucs      #x12 #x4A)      ; \e$(3!k\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QWAA")
+    (ucs               . #x124B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x6C)      ; \e$(3!l\e(B
+    (ethiopic-ucs      #x12 #x4B)      ; \e$(3!l\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QWEE")
+    (ucs               . #x124C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x6D)      ; \e$(3!m\e(B
+    (ethiopic-ucs      #x12 #x4C)      ; \e$(3!m\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QWE")
+    (ucs               . #x124D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x6E)      ; \e$(3!n\e(B
+    (ethiopic-ucs      #x12 #x4D)      ; \e$(3!n\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QHA")
+    (ucs               . #x1250)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x71)      ; \e$(3!q\e(B
+    (ethiopic-ucs      #x12 #x50)      ; \e$(3!q\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QHU")
+    (ucs               . #x1251)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x72)      ; \e$(3!r\e(B
+    (ethiopic-ucs      #x12 #x51)      ; \e$(3!r\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QHI")
+    (ucs               . #x1252)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x73)      ; \e$(3!s\e(B
+    (ethiopic-ucs      #x12 #x52)      ; \e$(3!s\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QHAA")
+    (ucs               . #x1253)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x74)      ; \e$(3!t\e(B
+    (ethiopic-ucs      #x12 #x53)      ; \e$(3!t\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QHEE")
+    (ucs               . #x1254)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x75)      ; \e$(3!u\e(B
+    (ethiopic-ucs      #x12 #x54)      ; \e$(3!u\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QHE")
+    (ucs               . #x1255)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x76)      ; \e$(3!v\e(B
+    (ethiopic-ucs      #x12 #x55)      ; \e$(3!v\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QHO")
+    (ucs               . #x1256)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x77)      ; \e$(3!w\e(B
+    (ethiopic-ucs      #x12 #x56)      ; \e$(3!w\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QHWA")
+    (ucs               . #x1258)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x79)      ; \e$(3!y\e(B
+    (ethiopic-ucs      #x12 #x58)      ; \e$(3!y\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QHWI")
+    (ucs               . #x125A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x7B)      ; \e$(3!{\e(B
+    (ethiopic-ucs      #x12 #x5A)      ; \e$(3!{\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QHWAA")
+    (ucs               . #x125B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x7C)      ; \e$(3!|\e(B
+    (ethiopic-ucs      #x12 #x5B)      ; \e$(3!|\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QHWEE")
+    (ucs               . #x125C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x7D)      ; \e$(3!}\e(B
+    (ethiopic-ucs      #x12 #x5C)      ; \e$(3!}\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE QHWE")
+    (ucs               . #x125D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x21 #x7E)      ; \e$(3!~\e(B
+    (ethiopic-ucs      #x12 #x5D)      ; \e$(3!~\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE BA")
+    (ucs               . #x1260)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x23)      ; \e$(3"#\e(B
+    (ethiopic-ucs      #x12 #x60)      ; \e$(3"#\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE BU")
+    (ucs               . #x1261)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x24)      ; \e$(3"$\e(B
+    (ethiopic-ucs      #x12 #x61)      ; \e$(3"$\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE BI")
+    (ucs               . #x1262)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x25)      ; \e$(3"%\e(B
+    (ethiopic-ucs      #x12 #x62)      ; \e$(3"%\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE BAA")
+    (ucs               . #x1263)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x26)      ; \e$(3"&\e(B
+    (ethiopic-ucs      #x12 #x63)      ; \e$(3"&\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE BEE")
+    (ucs               . #x1264)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x27)      ; \e$(3"'\e(B
+    (ethiopic-ucs      #x12 #x64)      ; \e$(3"'\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE BE")
+    (ucs               . #x1265)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x28)      ; \e$(3"(\e(B
+    (ethiopic-ucs      #x12 #x65)      ; \e$(3"(\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE BO")
+    (ucs               . #x1266)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x29)      ; \e$(3")\e(B
+    (ethiopic-ucs      #x12 #x66)      ; \e$(3")\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE BWA")
+    (ucs               . #x1267)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x2A)      ; \e$(3"*\e(B
+    (ethiopic-ucs      #x12 #x67)      ; \e$(3"*\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE VA")
+    (ucs               . #x1268)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x2B)      ; \e$(3"+\e(B
+    (ethiopic-ucs      #x12 #x68)      ; \e$(3"+\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE VU")
+    (ucs               . #x1269)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x2C)      ; \e$(3",\e(B
+    (ethiopic-ucs      #x12 #x69)      ; \e$(3",\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE VI")
+    (ucs               . #x126A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x2D)      ; \e$(3"-\e(B
+    (ethiopic-ucs      #x12 #x6A)      ; \e$(3"-\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE VAA")
+    (ucs               . #x126B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x2E)      ; \e$(3".\e(B
+    (ethiopic-ucs      #x12 #x6B)      ; \e$(3".\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE VEE")
+    (ucs               . #x126C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x2F)      ; \e$(3"/\e(B
+    (ethiopic-ucs      #x12 #x6C)      ; \e$(3"/\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE VE")
+    (ucs               . #x126D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x30)      ; \e$(3"0\e(B
+    (ethiopic-ucs      #x12 #x6D)      ; \e$(3"0\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE VO")
+    (ucs               . #x126E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x31)      ; \e$(3"1\e(B
+    (ethiopic-ucs      #x12 #x6E)      ; \e$(3"1\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE VWA")
+    (ucs               . #x126F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x32)      ; \e$(3"2\e(B
+    (ethiopic-ucs      #x12 #x6F)      ; \e$(3"2\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE TA")
+    (ucs               . #x1270)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x33)      ; \e$(3"3\e(B
+    (ethiopic-ucs      #x12 #x70)      ; \e$(3"3\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE TU")
+    (ucs               . #x1271)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x34)      ; \e$(3"4\e(B
+    (ethiopic-ucs      #x12 #x71)      ; \e$(3"4\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE TI")
+    (ucs               . #x1272)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x35)      ; \e$(3"5\e(B
+    (ethiopic-ucs      #x12 #x72)      ; \e$(3"5\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE TAA")
+    (ucs               . #x1273)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x36)      ; \e$(3"6\e(B
+    (ethiopic-ucs      #x12 #x73)      ; \e$(3"6\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE TEE")
+    (ucs               . #x1274)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x37)      ; \e$(3"7\e(B
+    (ethiopic-ucs      #x12 #x74)      ; \e$(3"7\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE TE")
+    (ucs               . #x1275)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x38)      ; \e$(3"8\e(B
+    (ethiopic-ucs      #x12 #x75)      ; \e$(3"8\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE TO")
+    (ucs               . #x1276)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x39)      ; \e$(3"9\e(B
+    (ethiopic-ucs      #x12 #x76)      ; \e$(3"9\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE TWA")
+    (ucs               . #x1277)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x3A)      ; \e$(3":\e(B
+    (ethiopic-ucs      #x12 #x77)      ; \e$(3":\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE CA")
+    (ucs               . #x1278)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x3B)      ; \e$(3";\e(B
+    (ethiopic-ucs      #x12 #x78)      ; \e$(3";\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE CU")
+    (ucs               . #x1279)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x3C)      ; \e$(3"<\e(B
+    (ethiopic-ucs      #x12 #x79)      ; \e$(3"<\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE CI")
+    (ucs               . #x127A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x3D)      ; \e$(3"=\e(B
+    (ethiopic-ucs      #x12 #x7A)      ; \e$(3"=\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE CAA")
+    (ucs               . #x127B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x3E)      ; \e$(3">\e(B
+    (ethiopic-ucs      #x12 #x7B)      ; \e$(3">\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE CEE")
+    (ucs               . #x127C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x3F)      ; \e$(3"?\e(B
+    (ethiopic-ucs      #x12 #x7C)      ; \e$(3"?\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE CE")
+    (ucs               . #x127D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x40)      ; \e$(3"@\e(B
+    (ethiopic-ucs      #x12 #x7D)      ; \e$(3"@\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE CO")
+    (ucs               . #x127E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x41)      ; \e$(3"A\e(B
+    (ethiopic-ucs      #x12 #x7E)      ; \e$(3"A\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE CWA")
+    (ucs               . #x127F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x42)      ; \e$(3"B\e(B
+    (ethiopic-ucs      #x12 #x7F)      ; \e$(3"B\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE XA")
+    (ucs               . #x1280)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x43)      ; \e$(3"C\e(B
+    (ethiopic-ucs      #x12 #x80)      ; \e$(3"C\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE XU")
+    (ucs               . #x1281)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x44)      ; \e$(3"D\e(B
+    (ethiopic-ucs      #x12 #x81)      ; \e$(3"D\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE XI")
+    (ucs               . #x1282)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x45)      ; \e$(3"E\e(B
+    (ethiopic-ucs      #x12 #x82)      ; \e$(3"E\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE XAA")
+    (ucs               . #x1283)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x46)      ; \e$(3"F\e(B
+    (ethiopic-ucs      #x12 #x83)      ; \e$(3"F\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE XEE")
+    (ucs               . #x1284)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x47)      ; \e$(3"G\e(B
+    (ethiopic-ucs      #x12 #x84)      ; \e$(3"G\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE XE")
+    (ucs               . #x1285)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x48)      ; \e$(3"H\e(B
+    (ethiopic-ucs      #x12 #x85)      ; \e$(3"H\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE XO")
+    (ucs               . #x1286)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x49)      ; \e$(3"I\e(B
+    (ethiopic-ucs      #x12 #x86)      ; \e$(3"I\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE XWA")
+    (ucs               . #x1288)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x4B)      ; \e$(3"K\e(B
+    (ethiopic-ucs      #x12 #x88)      ; \e$(3"K\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE XWI")
+    (ucs               . #x128A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x4D)      ; \e$(3"M\e(B
+    (ethiopic-ucs      #x12 #x8A)      ; \e$(3"M\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE XWAA")
+    (ucs               . #x128B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x4E)      ; \e$(3"N\e(B
+    (ethiopic-ucs      #x12 #x8B)      ; \e$(3"N\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE XWEE")
+    (ucs               . #x128C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x4F)      ; \e$(3"O\e(B
+    (ethiopic-ucs      #x12 #x8C)      ; \e$(3"O\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE XWE")
+    (ucs               . #x128D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x50)      ; \e$(3"P\e(B
+    (ethiopic-ucs      #x12 #x8D)      ; \e$(3"P\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE NA")
+    (ucs               . #x1290)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x53)      ; \e$(3"S\e(B
+    (ethiopic-ucs      #x12 #x90)      ; \e$(3"S\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE NU")
+    (ucs               . #x1291)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x54)      ; \e$(3"T\e(B
+    (ethiopic-ucs      #x12 #x91)      ; \e$(3"T\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE NI")
+    (ucs               . #x1292)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x55)      ; \e$(3"U\e(B
+    (ethiopic-ucs      #x12 #x92)      ; \e$(3"U\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE NAA")
+    (ucs               . #x1293)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x56)      ; \e$(3"V\e(B
+    (ethiopic-ucs      #x12 #x93)      ; \e$(3"V\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE NEE")
+    (ucs               . #x1294)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x57)      ; \e$(3"W\e(B
+    (ethiopic-ucs      #x12 #x94)      ; \e$(3"W\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE NE")
+    (ucs               . #x1295)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x58)      ; \e$(3"X\e(B
+    (ethiopic-ucs      #x12 #x95)      ; \e$(3"X\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE NO")
+    (ucs               . #x1296)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x59)      ; \e$(3"Y\e(B
+    (ethiopic-ucs      #x12 #x96)      ; \e$(3"Y\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE NWA")
+    (ucs               . #x1297)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x5A)      ; \e$(3"Z\e(B
+    (ethiopic-ucs      #x12 #x97)      ; \e$(3"Z\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE NYA")
+    (ucs               . #x1298)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x5B)      ; \e$(3"[\e(B
+    (ethiopic-ucs      #x12 #x98)      ; \e$(3"[\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE NYU")
+    (ucs               . #x1299)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x5C)      ; \e$(3"\\e(B
+    (ethiopic-ucs      #x12 #x99)      ; \e$(3"\\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE NYI")
+    (ucs               . #x129A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x5D)      ; \e$(3"]\e(B
+    (ethiopic-ucs      #x12 #x9A)      ; \e$(3"]\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE NYAA")
+    (ucs               . #x129B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x5E)      ; \e$(3"^\e(B
+    (ethiopic-ucs      #x12 #x9B)      ; \e$(3"^\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE NYEE")
+    (ucs               . #x129C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x5F)      ; \e$(3"_\e(B
+    (ethiopic-ucs      #x12 #x9C)      ; \e$(3"_\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE NYE")
+    (ucs               . #x129D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x60)      ; \e$(3"`\e(B
+    (ethiopic-ucs      #x12 #x9D)      ; \e$(3"`\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE NYO")
+    (ucs               . #x129E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x61)      ; \e$(3"a\e(B
+    (ethiopic-ucs      #x12 #x9E)      ; \e$(3"a\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE NYWA")
+    (ucs               . #x129F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x62)      ; \e$(3"b\e(B
+    (ethiopic-ucs      #x12 #x9F)      ; \e$(3"b\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GLOTTAL A")
+    (ucs               . #x12A0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x63)      ; \e$(3"c\e(B
+    (ethiopic-ucs      #x12 #xA0)      ; \e$(3"c\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GLOTTAL U")
+    (ucs               . #x12A1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x64)      ; \e$(3"d\e(B
+    (ethiopic-ucs      #x12 #xA1)      ; \e$(3"d\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GLOTTAL I")
+    (ucs               . #x12A2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x65)      ; \e$(3"e\e(B
+    (ethiopic-ucs      #x12 #xA2)      ; \e$(3"e\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GLOTTAL AA")
+    (ucs               . #x12A3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x66)      ; \e$(3"f\e(B
+    (ethiopic-ucs      #x12 #xA3)      ; \e$(3"f\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GLOTTAL EE")
+    (ucs               . #x12A4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x67)      ; \e$(3"g\e(B
+    (ethiopic-ucs      #x12 #xA4)      ; \e$(3"g\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GLOTTAL E")
+    (ucs               . #x12A5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x68)      ; \e$(3"h\e(B
+    (ethiopic-ucs      #x12 #xA5)      ; \e$(3"h\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GLOTTAL O")
+    (ucs               . #x12A6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x69)      ; \e$(3"i\e(B
+    (ethiopic-ucs      #x12 #xA6)      ; \e$(3"i\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GLOTTAL WA")
+    (ucs               . #x12A7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x6A)      ; \e$(3"j\e(B
+    (ethiopic-ucs      #x12 #xA7)      ; \e$(3"j\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KA")
+    (ucs               . #x12A8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x6B)      ; \e$(3"k\e(B
+    (ethiopic-ucs      #x12 #xA8)      ; \e$(3"k\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KU")
+    (ucs               . #x12A9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x6C)      ; \e$(3"l\e(B
+    (ethiopic-ucs      #x12 #xA9)      ; \e$(3"l\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KI")
+    (ucs               . #x12AA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x6D)      ; \e$(3"m\e(B
+    (ethiopic-ucs      #x12 #xAA)      ; \e$(3"m\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KAA")
+    (ucs               . #x12AB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x6E)      ; \e$(3"n\e(B
+    (ethiopic-ucs      #x12 #xAB)      ; \e$(3"n\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KEE")
+    (ucs               . #x12AC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x6F)      ; \e$(3"o\e(B
+    (ethiopic-ucs      #x12 #xAC)      ; \e$(3"o\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KE")
+    (ucs               . #x12AD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x70)      ; \e$(3"p\e(B
+    (ethiopic-ucs      #x12 #xAD)      ; \e$(3"p\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KO")
+    (ucs               . #x12AE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x71)      ; \e$(3"q\e(B
+    (ethiopic-ucs      #x12 #xAE)      ; \e$(3"q\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KWA")
+    (ucs               . #x12B0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x73)      ; \e$(3"s\e(B
+    (ethiopic-ucs      #x12 #xB0)      ; \e$(3"s\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KWI")
+    (ucs               . #x12B2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x75)      ; \e$(3"u\e(B
+    (ethiopic-ucs      #x12 #xB2)      ; \e$(3"u\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KWAA")
+    (ucs               . #x12B3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x76)      ; \e$(3"v\e(B
+    (ethiopic-ucs      #x12 #xB3)      ; \e$(3"v\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KWEE")
+    (ucs               . #x12B4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x77)      ; \e$(3"w\e(B
+    (ethiopic-ucs      #x12 #xB4)      ; \e$(3"w\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KWE")
+    (ucs               . #x12B5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x78)      ; \e$(3"x\e(B
+    (ethiopic-ucs      #x12 #xB5)      ; \e$(3"x\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KXA")
+    (ucs               . #x12B8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x7B)      ; \e$(3"{\e(B
+    (ethiopic-ucs      #x12 #xB8)      ; \e$(3"{\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KXU")
+    (ucs               . #x12B9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x7C)      ; \e$(3"|\e(B
+    (ethiopic-ucs      #x12 #xB9)      ; \e$(3"|\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KXI")
+    (ucs               . #x12BA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x7D)      ; \e$(3"}\e(B
+    (ethiopic-ucs      #x12 #xBA)      ; \e$(3"}\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KXAA")
+    (ucs               . #x12BB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x22 #x7E)      ; \e$(3"~\e(B
+    (ethiopic-ucs      #x12 #xBB)      ; \e$(3"~\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KXEE")
+    (ucs               . #x12BC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x21)      ; \e$(3#!\e(B
+    (ethiopic-ucs      #x12 #xBC)      ; \e$(3#!\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KXE")
+    (ucs               . #x12BD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x22)      ; \e$(3#"\e(B
+    (ethiopic-ucs      #x12 #xBD)      ; \e$(3#"\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KXO")
+    (ucs               . #x12BE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x23)      ; \e$(3##\e(B
+    (ethiopic-ucs      #x12 #xBE)      ; \e$(3##\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KXWA")
+    (ucs               . #x12C0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x25)      ; \e$(3#%\e(B
+    (ethiopic-ucs      #x12 #xC0)      ; \e$(3#%\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KXWI")
+    (ucs               . #x12C2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x27)      ; \e$(3#'\e(B
+    (ethiopic-ucs      #x12 #xC2)      ; \e$(3#'\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KXWAA")
+    (ucs               . #x12C3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x28)      ; \e$(3#(\e(B
+    (ethiopic-ucs      #x12 #xC3)      ; \e$(3#(\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KXWEE")
+    (ucs               . #x12C4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x29)      ; \e$(3#)\e(B
+    (ethiopic-ucs      #x12 #xC4)      ; \e$(3#)\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE KXWE")
+    (ucs               . #x12C5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x2A)      ; \e$(3#*\e(B
+    (ethiopic-ucs      #x12 #xC5)      ; \e$(3#*\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE WA")
+    (ucs               . #x12C8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x2D)      ; \e$(3#-\e(B
+    (ethiopic-ucs      #x12 #xC8)      ; \e$(3#-\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE WU")
+    (ucs               . #x12C9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x2E)      ; \e$(3#.\e(B
+    (ethiopic-ucs      #x12 #xC9)      ; \e$(3#.\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE WI")
+    (ucs               . #x12CA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x2F)      ; \e$(3#/\e(B
+    (ethiopic-ucs      #x12 #xCA)      ; \e$(3#/\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE WAA")
+    (ucs               . #x12CB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x30)      ; \e$(3#0\e(B
+    (ethiopic-ucs      #x12 #xCB)      ; \e$(3#0\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE WEE")
+    (ucs               . #x12CC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x31)      ; \e$(3#1\e(B
+    (ethiopic-ucs      #x12 #xCC)      ; \e$(3#1\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE WE")
+    (ucs               . #x12CD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x32)      ; \e$(3#2\e(B
+    (ethiopic-ucs      #x12 #xCD)      ; \e$(3#2\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE WO")
+    (ucs               . #x12CE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x33)      ; \e$(3#3\e(B
+    (ethiopic-ucs      #x12 #xCE)      ; \e$(3#3\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE PHARYNGEAL A")
+    (ucs               . #x12D0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x35)      ; \e$(3#5\e(B
+    (ethiopic-ucs      #x12 #xD0)      ; \e$(3#5\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE PHARYNGEAL U")
+    (ucs               . #x12D1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x36)      ; \e$(3#6\e(B
+    (ethiopic-ucs      #x12 #xD1)      ; \e$(3#6\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE PHARYNGEAL I")
+    (ucs               . #x12D2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x37)      ; \e$(3#7\e(B
+    (ethiopic-ucs      #x12 #xD2)      ; \e$(3#7\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE PHARYNGEAL AA")
+    (ucs               . #x12D3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x38)      ; \e$(3#8\e(B
+    (ethiopic-ucs      #x12 #xD3)      ; \e$(3#8\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE PHARYNGEAL EE")
+    (ucs               . #x12D4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x39)      ; \e$(3#9\e(B
+    (ethiopic-ucs      #x12 #xD4)      ; \e$(3#9\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE PHARYNGEAL E")
+    (ucs               . #x12D5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x3A)      ; \e$(3#:\e(B
+    (ethiopic-ucs      #x12 #xD5)      ; \e$(3#:\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE PHARYNGEAL O")
+    (ucs               . #x12D6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x3B)      ; \e$(3#;\e(B
+    (ethiopic-ucs      #x12 #xD6)      ; \e$(3#;\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE ZA")
+    (ucs               . #x12D8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x3D)      ; \e$(3#=\e(B
+    (ethiopic-ucs      #x12 #xD8)      ; \e$(3#=\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE ZU")
+    (ucs               . #x12D9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x3E)      ; \e$(3#>\e(B
+    (ethiopic-ucs      #x12 #xD9)      ; \e$(3#>\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE ZI")
+    (ucs               . #x12DA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x3F)      ; \e$(3#?\e(B
+    (ethiopic-ucs      #x12 #xDA)      ; \e$(3#?\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE ZAA")
+    (ucs               . #x12DB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x40)      ; \e$(3#@\e(B
+    (ethiopic-ucs      #x12 #xDB)      ; \e$(3#@\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE ZEE")
+    (ucs               . #x12DC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x41)      ; \e$(3#A\e(B
+    (ethiopic-ucs      #x12 #xDC)      ; \e$(3#A\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE ZE")
+    (ucs               . #x12DD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x42)      ; \e$(3#B\e(B
+    (ethiopic-ucs      #x12 #xDD)      ; \e$(3#B\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE ZO")
+    (ucs               . #x12DE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x43)      ; \e$(3#C\e(B
+    (ethiopic-ucs      #x12 #xDE)      ; \e$(3#C\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE ZWA")
+    (ucs               . #x12DF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x44)      ; \e$(3#D\e(B
+    (ethiopic-ucs      #x12 #xDF)      ; \e$(3#D\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE ZHA")
+    (ucs               . #x12E0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x45)      ; \e$(3#E\e(B
+    (ethiopic-ucs      #x12 #xE0)      ; \e$(3#E\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE ZHU")
+    (ucs               . #x12E1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x46)      ; \e$(3#F\e(B
+    (ethiopic-ucs      #x12 #xE1)      ; \e$(3#F\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE ZHI")
+    (ucs               . #x12E2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x47)      ; \e$(3#G\e(B
+    (ethiopic-ucs      #x12 #xE2)      ; \e$(3#G\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE ZHAA")
+    (ucs               . #x12E3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x48)      ; \e$(3#H\e(B
+    (ethiopic-ucs      #x12 #xE3)      ; \e$(3#H\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE ZHEE")
+    (ucs               . #x12E4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x49)      ; \e$(3#I\e(B
+    (ethiopic-ucs      #x12 #xE4)      ; \e$(3#I\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE ZHE")
+    (ucs               . #x12E5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x4A)      ; \e$(3#J\e(B
+    (ethiopic-ucs      #x12 #xE5)      ; \e$(3#J\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE ZHO")
+    (ucs               . #x12E6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x4B)      ; \e$(3#K\e(B
+    (ethiopic-ucs      #x12 #xE6)      ; \e$(3#K\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE ZHWA")
+    (ucs               . #x12E7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x4C)      ; \e$(3#L\e(B
+    (ethiopic-ucs      #x12 #xE7)      ; \e$(3#L\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE YA")
+    (ucs               . #x12E8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x4D)      ; \e$(3#M\e(B
+    (ethiopic-ucs      #x12 #xE8)      ; \e$(3#M\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE YU")
+    (ucs               . #x12E9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x4E)      ; \e$(3#N\e(B
+    (ethiopic-ucs      #x12 #xE9)      ; \e$(3#N\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE YI")
+    (ucs               . #x12EA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x4F)      ; \e$(3#O\e(B
+    (ethiopic-ucs      #x12 #xEA)      ; \e$(3#O\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE YAA")
+    (ucs               . #x12EB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x50)      ; \e$(3#P\e(B
+    (ethiopic-ucs      #x12 #xEB)      ; \e$(3#P\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE YEE")
+    (ucs               . #x12EC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x51)      ; \e$(3#Q\e(B
+    (ethiopic-ucs      #x12 #xEC)      ; \e$(3#Q\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE YE")
+    (ucs               . #x12ED)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x52)      ; \e$(3#R\e(B
+    (ethiopic-ucs      #x12 #xED)      ; \e$(3#R\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE YO")
+    (ucs               . #x12EE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x53)      ; \e$(3#S\e(B
+    (ethiopic-ucs      #x12 #xEE)      ; \e$(3#S\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE DA")
+    (ucs               . #x12F0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x55)      ; \e$(3#U\e(B
+    (ethiopic-ucs      #x12 #xF0)      ; \e$(3#U\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE DU")
+    (ucs               . #x12F1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x56)      ; \e$(3#V\e(B
+    (ethiopic-ucs      #x12 #xF1)      ; \e$(3#V\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE DI")
+    (ucs               . #x12F2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x57)      ; \e$(3#W\e(B
+    (ethiopic-ucs      #x12 #xF2)      ; \e$(3#W\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE DAA")
+    (ucs               . #x12F3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x58)      ; \e$(3#X\e(B
+    (ethiopic-ucs      #x12 #xF3)      ; \e$(3#X\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE DEE")
+    (ucs               . #x12F4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x59)      ; \e$(3#Y\e(B
+    (ethiopic-ucs      #x12 #xF4)      ; \e$(3#Y\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE DE")
+    (ucs               . #x12F5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x5A)      ; \e$(3#Z\e(B
+    (ethiopic-ucs      #x12 #xF5)      ; \e$(3#Z\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE DO")
+    (ucs               . #x12F6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x5B)      ; \e$(3#[\e(B
+    (ethiopic-ucs      #x12 #xF6)      ; \e$(3#[\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE DWA")
+    (ucs               . #x12F7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x5C)      ; \e$(3#\\e(B
+    (ethiopic-ucs      #x12 #xF7)      ; \e$(3#\\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE DDA")
+    (ucs               . #x12F8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x5D)      ; \e$(3#]\e(B
+    (ethiopic-ucs      #x12 #xF8)      ; \e$(3#]\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE DDU")
+    (ucs               . #x12F9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x5E)      ; \e$(3#^\e(B
+    (ethiopic-ucs      #x12 #xF9)      ; \e$(3#^\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE DDI")
+    (ucs               . #x12FA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x5F)      ; \e$(3#_\e(B
+    (ethiopic-ucs      #x12 #xFA)      ; \e$(3#_\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE DDAA")
+    (ucs               . #x12FB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x60)      ; \e$(3#`\e(B
+    (ethiopic-ucs      #x12 #xFB)      ; \e$(3#`\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE DDEE")
+    (ucs               . #x12FC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x61)      ; \e$(3#a\e(B
+    (ethiopic-ucs      #x12 #xFC)      ; \e$(3#a\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE DDE")
+    (ucs               . #x12FD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x62)      ; \e$(3#b\e(B
+    (ethiopic-ucs      #x12 #xFD)      ; \e$(3#b\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE DDO")
+    (ucs               . #x12FE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x63)      ; \e$(3#c\e(B
+    (ethiopic-ucs      #x12 #xFE)      ; \e$(3#c\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE DDWA")
+    (ucs               . #x12FF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x64)      ; \e$(3#d\e(B
+    (ethiopic-ucs      #x12 #xFF)      ; \e$(3#d\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE JA")
+    (ucs               . #x1300)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x65)      ; \e$(3#e\e(B
+    (ethiopic-ucs      #x13 #x00)      ; \e$(3#e\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE JU")
+    (ucs               . #x1301)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x66)      ; \e$(3#f\e(B
+    (ethiopic-ucs      #x13 #x01)      ; \e$(3#f\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE JI")
+    (ucs               . #x1302)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x67)      ; \e$(3#g\e(B
+    (ethiopic-ucs      #x13 #x02)      ; \e$(3#g\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE JAA")
+    (ucs               . #x1303)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x68)      ; \e$(3#h\e(B
+    (ethiopic-ucs      #x13 #x03)      ; \e$(3#h\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE JEE")
+    (ucs               . #x1304)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x69)      ; \e$(3#i\e(B
+    (ethiopic-ucs      #x13 #x04)      ; \e$(3#i\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE JE")
+    (ucs               . #x1305)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x6A)      ; \e$(3#j\e(B
+    (ethiopic-ucs      #x13 #x05)      ; \e$(3#j\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE JO")
+    (ucs               . #x1306)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x6B)      ; \e$(3#k\e(B
+    (ethiopic-ucs      #x13 #x06)      ; \e$(3#k\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE JWA")
+    (ucs               . #x1307)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x6C)      ; \e$(3#l\e(B
+    (ethiopic-ucs      #x13 #x07)      ; \e$(3#l\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GA")
+    (ucs               . #x1308)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x6D)      ; \e$(3#m\e(B
+    (ethiopic-ucs      #x13 #x08)      ; \e$(3#m\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GU")
+    (ucs               . #x1309)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x6E)      ; \e$(3#n\e(B
+    (ethiopic-ucs      #x13 #x09)      ; \e$(3#n\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GI")
+    (ucs               . #x130A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x6F)      ; \e$(3#o\e(B
+    (ethiopic-ucs      #x13 #x0A)      ; \e$(3#o\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GAA")
+    (ucs               . #x130B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x70)      ; \e$(3#p\e(B
+    (ethiopic-ucs      #x13 #x0B)      ; \e$(3#p\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GEE")
+    (ucs               . #x130C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x71)      ; \e$(3#q\e(B
+    (ethiopic-ucs      #x13 #x0C)      ; \e$(3#q\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GE")
+    (ucs               . #x130D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x72)      ; \e$(3#r\e(B
+    (ethiopic-ucs      #x13 #x0D)      ; \e$(3#r\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GO")
+    (ucs               . #x130E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x73)      ; \e$(3#s\e(B
+    (ethiopic-ucs      #x13 #x0E)      ; \e$(3#s\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GWA")
+    (ucs               . #x1310)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x75)      ; \e$(3#u\e(B
+    (ethiopic-ucs      #x13 #x10)      ; \e$(3#u\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GWI")
+    (ucs               . #x1312)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x77)      ; \e$(3#w\e(B
+    (ethiopic-ucs      #x13 #x12)      ; \e$(3#w\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GWAA")
+    (ucs               . #x1313)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x78)      ; \e$(3#x\e(B
+    (ethiopic-ucs      #x13 #x13)      ; \e$(3#x\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GWEE")
+    (ucs               . #x1314)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x79)      ; \e$(3#y\e(B
+    (ethiopic-ucs      #x13 #x14)      ; \e$(3#y\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GWE")
+    (ucs               . #x1315)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x7A)      ; \e$(3#z\e(B
+    (ethiopic-ucs      #x13 #x15)      ; \e$(3#z\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GGA")
+    (ucs               . #x1318)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x7D)      ; \e$(3#}\e(B
+    (ethiopic-ucs      #x13 #x18)      ; \e$(3#}\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GGU")
+    (ucs               . #x1319)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x23 #x7E)      ; \e$(3#~\e(B
+    (ethiopic-ucs      #x13 #x19)      ; \e$(3#~\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GGI")
+    (ucs               . #x131A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x21)      ; \e$(3$!\e(B
+    (ethiopic-ucs      #x13 #x1A)      ; \e$(3$!\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GGAA")
+    (ucs               . #x131B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x22)      ; \e$(3$"\e(B
+    (ethiopic-ucs      #x13 #x1B)      ; \e$(3$"\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GGEE")
+    (ucs               . #x131C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x23)      ; \e$(3$#\e(B
+    (ethiopic-ucs      #x13 #x1C)      ; \e$(3$#\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GGE")
+    (ucs               . #x131D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x24)      ; \e$(3$$\e(B
+    (ethiopic-ucs      #x13 #x1D)      ; \e$(3$$\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE GGO")
+    (ucs               . #x131E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x25)      ; \e$(3$%\e(B
+    (ethiopic-ucs      #x13 #x1E)      ; \e$(3$%\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE THA")
+    (ucs               . #x1320)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x27)      ; \e$(3$'\e(B
+    (ethiopic-ucs      #x13 #x20)      ; \e$(3$'\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE THU")
+    (ucs               . #x1321)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x28)      ; \e$(3$(\e(B
+    (ethiopic-ucs      #x13 #x21)      ; \e$(3$(\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE THI")
+    (ucs               . #x1322)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x29)      ; \e$(3$)\e(B
+    (ethiopic-ucs      #x13 #x22)      ; \e$(3$)\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE THAA")
+    (ucs               . #x1323)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x2A)      ; \e$(3$*\e(B
+    (ethiopic-ucs      #x13 #x23)      ; \e$(3$*\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE THEE")
+    (ucs               . #x1324)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x2B)      ; \e$(3$+\e(B
+    (ethiopic-ucs      #x13 #x24)      ; \e$(3$+\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE THE")
+    (ucs               . #x1325)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x2C)      ; \e$(3$,\e(B
+    (ethiopic-ucs      #x13 #x25)      ; \e$(3$,\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE THO")
+    (ucs               . #x1326)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x2D)      ; \e$(3$-\e(B
+    (ethiopic-ucs      #x13 #x26)      ; \e$(3$-\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE THWA")
+    (ucs               . #x1327)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x2E)      ; \e$(3$.\e(B
+    (ethiopic-ucs      #x13 #x27)      ; \e$(3$.\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE CHA")
+    (ucs               . #x1328)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x2F)      ; \e$(3$/\e(B
+    (ethiopic-ucs      #x13 #x28)      ; \e$(3$/\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE CHU")
+    (ucs               . #x1329)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x30)      ; \e$(3$0\e(B
+    (ethiopic-ucs      #x13 #x29)      ; \e$(3$0\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE CHI")
+    (ucs               . #x132A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x31)      ; \e$(3$1\e(B
+    (ethiopic-ucs      #x13 #x2A)      ; \e$(3$1\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE CHAA")
+    (ucs               . #x132B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x32)      ; \e$(3$2\e(B
+    (ethiopic-ucs      #x13 #x2B)      ; \e$(3$2\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE CHEE")
+    (ucs               . #x132C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x33)      ; \e$(3$3\e(B
+    (ethiopic-ucs      #x13 #x2C)      ; \e$(3$3\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE CHE")
+    (ucs               . #x132D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x34)      ; \e$(3$4\e(B
+    (ethiopic-ucs      #x13 #x2D)      ; \e$(3$4\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE CHO")
+    (ucs               . #x132E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x35)      ; \e$(3$5\e(B
+    (ethiopic-ucs      #x13 #x2E)      ; \e$(3$5\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE CHWA")
+    (ucs               . #x132F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x36)      ; \e$(3$6\e(B
+    (ethiopic-ucs      #x13 #x2F)      ; \e$(3$6\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE PHA")
+    (ucs               . #x1330)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x37)      ; \e$(3$7\e(B
+    (ethiopic-ucs      #x13 #x30)      ; \e$(3$7\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE PHU")
+    (ucs               . #x1331)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x38)      ; \e$(3$8\e(B
+    (ethiopic-ucs      #x13 #x31)      ; \e$(3$8\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE PHI")
+    (ucs               . #x1332)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x39)      ; \e$(3$9\e(B
+    (ethiopic-ucs      #x13 #x32)      ; \e$(3$9\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE PHAA")
+    (ucs               . #x1333)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x3A)      ; \e$(3$:\e(B
+    (ethiopic-ucs      #x13 #x33)      ; \e$(3$:\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE PHEE")
+    (ucs               . #x1334)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x3B)      ; \e$(3$;\e(B
+    (ethiopic-ucs      #x13 #x34)      ; \e$(3$;\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE PHE")
+    (ucs               . #x1335)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x3C)      ; \e$(3$<\e(B
+    (ethiopic-ucs      #x13 #x35)      ; \e$(3$<\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE PHO")
+    (ucs               . #x1336)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x3D)      ; \e$(3$=\e(B
+    (ethiopic-ucs      #x13 #x36)      ; \e$(3$=\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE PHWA")
+    (ucs               . #x1337)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x3E)      ; \e$(3$>\e(B
+    (ethiopic-ucs      #x13 #x37)      ; \e$(3$>\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE TSA")
+    (ucs               . #x1338)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x3F)      ; \e$(3$?\e(B
+    (ethiopic-ucs      #x13 #x38)      ; \e$(3$?\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE TSU")
+    (ucs               . #x1339)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x40)      ; \e$(3$@\e(B
+    (ethiopic-ucs      #x13 #x39)      ; \e$(3$@\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE TSI")
+    (ucs               . #x133A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x41)      ; \e$(3$A\e(B
+    (ethiopic-ucs      #x13 #x3A)      ; \e$(3$A\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE TSAA")
+    (ucs               . #x133B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x42)      ; \e$(3$B\e(B
+    (ethiopic-ucs      #x13 #x3B)      ; \e$(3$B\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE TSEE")
+    (ucs               . #x133C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x43)      ; \e$(3$C\e(B
+    (ethiopic-ucs      #x13 #x3C)      ; \e$(3$C\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE TSE")
+    (ucs               . #x133D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x44)      ; \e$(3$D\e(B
+    (ethiopic-ucs      #x13 #x3D)      ; \e$(3$D\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE TSO")
+    (ucs               . #x133E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x45)      ; \e$(3$E\e(B
+    (ethiopic-ucs      #x13 #x3E)      ; \e$(3$E\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE TSWA")
+    (ucs               . #x133F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x46)      ; \e$(3$F\e(B
+    (ethiopic-ucs      #x13 #x3F)      ; \e$(3$F\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE TZA")
+    (ucs               . #x1340)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x47)      ; \e$(3$G\e(B
+    (ethiopic-ucs      #x13 #x40)      ; \e$(3$G\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE TZU")
+    (ucs               . #x1341)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x48)      ; \e$(3$H\e(B
+    (ethiopic-ucs      #x13 #x41)      ; \e$(3$H\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE TZI")
+    (ucs               . #x1342)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x49)      ; \e$(3$I\e(B
+    (ethiopic-ucs      #x13 #x42)      ; \e$(3$I\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE TZAA")
+    (ucs               . #x1343)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x4A)      ; \e$(3$J\e(B
+    (ethiopic-ucs      #x13 #x43)      ; \e$(3$J\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE TZEE")
+    (ucs               . #x1344)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x4B)      ; \e$(3$K\e(B
+    (ethiopic-ucs      #x13 #x44)      ; \e$(3$K\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE TZE")
+    (ucs               . #x1345)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x4C)      ; \e$(3$L\e(B
+    (ethiopic-ucs      #x13 #x45)      ; \e$(3$L\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE TZO")
+    (ucs               . #x1346)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x4D)      ; \e$(3$M\e(B
+    (ethiopic-ucs      #x13 #x46)      ; \e$(3$M\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE FA")
+    (ucs               . #x1348)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x4F)      ; \e$(3$O\e(B
+    (ethiopic-ucs      #x13 #x48)      ; \e$(3$O\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE FU")
+    (ucs               . #x1349)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x50)      ; \e$(3$P\e(B
+    (ethiopic-ucs      #x13 #x49)      ; \e$(3$P\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE FI")
+    (ucs               . #x134A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x51)      ; \e$(3$Q\e(B
+    (ethiopic-ucs      #x13 #x4A)      ; \e$(3$Q\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE FAA")
+    (ucs               . #x134B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x52)      ; \e$(3$R\e(B
+    (ethiopic-ucs      #x13 #x4B)      ; \e$(3$R\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE FEE")
+    (ucs               . #x134C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x53)      ; \e$(3$S\e(B
+    (ethiopic-ucs      #x13 #x4C)      ; \e$(3$S\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE FE")
+    (ucs               . #x134D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x54)      ; \e$(3$T\e(B
+    (ethiopic-ucs      #x13 #x4D)      ; \e$(3$T\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE FO")
+    (ucs               . #x134E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x55)      ; \e$(3$U\e(B
+    (ethiopic-ucs      #x13 #x4E)      ; \e$(3$U\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE FWA")
+    (ucs               . #x134F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x56)      ; \e$(3$V\e(B
+    (ethiopic-ucs      #x13 #x4F)      ; \e$(3$V\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE PA")
+    (ucs               . #x1350)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x57)      ; \e$(3$W\e(B
+    (ethiopic-ucs      #x13 #x50)      ; \e$(3$W\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE PU")
+    (ucs               . #x1351)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x58)      ; \e$(3$X\e(B
+    (ethiopic-ucs      #x13 #x51)      ; \e$(3$X\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE PI")
+    (ucs               . #x1352)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x59)      ; \e$(3$Y\e(B
+    (ethiopic-ucs      #x13 #x52)      ; \e$(3$Y\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE PAA")
+    (ucs               . #x1353)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x5A)      ; \e$(3$Z\e(B
+    (ethiopic-ucs      #x13 #x53)      ; \e$(3$Z\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE PEE")
+    (ucs               . #x1354)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x5B)      ; \e$(3$[\e(B
+    (ethiopic-ucs      #x13 #x54)      ; \e$(3$[\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE PE")
+    (ucs               . #x1355)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x5C)      ; \e$(3$\\e(B
+    (ethiopic-ucs      #x13 #x55)      ; \e$(3$\\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE PO")
+    (ucs               . #x1356)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x5D)      ; \e$(3$]\e(B
+    (ethiopic-ucs      #x13 #x56)      ; \e$(3$]\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE PWA")
+    (ucs               . #x1357)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x5E)      ; \e$(3$^\e(B
+    (ethiopic-ucs      #x13 #x57)      ; \e$(3$^\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE RYA")
+    (ucs               . #x1358)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x5F)      ; \e$(3$_\e(B
+    (ethiopic-ucs      #x13 #x58)      ; \e$(3$_\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE MYA")
+    (ucs               . #x1359)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x60)      ; \e$(3$`\e(B
+    (ethiopic-ucs      #x13 #x59)      ; \e$(3$`\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SYLLABLE FYA")
+    (ucs               . #x135A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x61)      ; \e$(3$a\e(B
+    (ethiopic-ucs      #x13 #x5A)      ; \e$(3$a\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC WORDSPACE")
+    (ucs               . #x1361)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x68)      ; \e$(3$h\e(B
+    (ethiopic-ucs      #x13 #x61)      ; \e$(3$h\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC FULL STOP")
+    (ucs               . #x1362)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x69)      ; \e$(3$i\e(B
+    (ethiopic-ucs      #x13 #x62)      ; \e$(3$i\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC COMMA")
+    (ucs               . #x1363)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x6A)      ; \e$(3$j\e(B
+    (ethiopic-ucs      #x13 #x63)      ; \e$(3$j\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC SEMICOLON")
+    (ucs               . #x1364)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x6B)      ; \e$(3$k\e(B
+    (ethiopic-ucs      #x13 #x64)      ; \e$(3$k\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC COLON")
+    (ucs               . #x1365)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x6C)      ; \e$(3$l\e(B
+    (ethiopic-ucs      #x13 #x65)      ; \e$(3$l\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC PREFACE COLON")
+    (ucs               . #x1366)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x6D)      ; \e$(3$m\e(B
+    (ethiopic-ucs      #x13 #x66)      ; \e$(3$m\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC QUESTION MARK")
+    (ucs               . #x1367)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x6E)      ; \e$(3$n\e(B
+    (ethiopic-ucs      #x13 #x67)      ; \e$(3$n\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC PARAGRAPH SEPARATOR")
+    (ucs               . #x1368)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (ethiopic          #x24 #x6F)      ; \e$(3$o\e(B
+    (ethiopic-ucs      #x13 #x68)      ; \e$(3$o\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC DIGIT ONE")
+    (ucs               . #x1369)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 1)
+    (digit-value        . 1)
+    (numeric-value      . 1)
+    (ethiopic          #x24 #x70)      ; \e$(3$p\e(B
+    (ethiopic-ucs      #x13 #x69)      ; \e$(3$p\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC DIGIT TWO")
+    (ucs               . #x136A)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 2)
+    (digit-value        . 2)
+    (numeric-value      . 2)
+    (ethiopic          #x24 #x71)      ; \e$(3$q\e(B
+    (ethiopic-ucs      #x13 #x6A)      ; \e$(3$q\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC DIGIT THREE")
+    (ucs               . #x136B)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 3)
+    (digit-value        . 3)
+    (numeric-value      . 3)
+    (ethiopic          #x24 #x72)      ; \e$(3$r\e(B
+    (ethiopic-ucs      #x13 #x6B)      ; \e$(3$r\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC DIGIT FOUR")
+    (ucs               . #x136C)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 4)
+    (digit-value        . 4)
+    (numeric-value      . 4)
+    (ethiopic          #x24 #x73)      ; \e$(3$s\e(B
+    (ethiopic-ucs      #x13 #x6C)      ; \e$(3$s\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC DIGIT FIVE")
+    (ucs               . #x136D)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 5)
+    (digit-value        . 5)
+    (numeric-value      . 5)
+    (ethiopic          #x24 #x74)      ; \e$(3$t\e(B
+    (ethiopic-ucs      #x13 #x6D)      ; \e$(3$t\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC DIGIT SIX")
+    (ucs               . #x136E)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 6)
+    (digit-value        . 6)
+    (numeric-value      . 6)
+    (ethiopic          #x24 #x75)      ; \e$(3$u\e(B
+    (ethiopic-ucs      #x13 #x6E)      ; \e$(3$u\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC DIGIT SEVEN")
+    (ucs               . #x136F)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 7)
+    (digit-value        . 7)
+    (numeric-value      . 7)
+    (ethiopic          #x24 #x76)      ; \e$(3$v\e(B
+    (ethiopic-ucs      #x13 #x6F)      ; \e$(3$v\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC DIGIT EIGHT")
+    (ucs               . #x1370)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 8)
+    (digit-value        . 8)
+    (numeric-value      . 8)
+    (ethiopic          #x24 #x77)      ; \e$(3$w\e(B
+    (ethiopic-ucs      #x13 #x70)      ; \e$(3$w\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC DIGIT NINE")
+    (ucs               . #x1371)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (decimal-digit-value . 9)
+    (digit-value        . 9)
+    (numeric-value      . 9)
+    (ethiopic          #x24 #x78)      ; \e$(3$x\e(B
+    (ethiopic-ucs      #x13 #x71)      ; \e$(3$x\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC NUMBER TEN")
+    (ucs               . #x1372)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 10)
+    (ethiopic          #x24 #x79)      ; \e$(3$y\e(B
+    (ethiopic-ucs      #x13 #x72)      ; \e$(3$y\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC NUMBER TWENTY")
+    (ucs               . #x1373)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 20)
+    (ethiopic          #x24 #x7A)      ; \e$(3$z\e(B
+    (ethiopic-ucs      #x13 #x73)      ; \e$(3$z\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC NUMBER THIRTY")
+    (ucs               . #x1374)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 30)
+    (ethiopic          #x24 #x7B)      ; \e$(3${\e(B
+    (ethiopic-ucs      #x13 #x74)      ; \e$(3${\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC NUMBER FORTY")
+    (ucs               . #x1375)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 40)
+    (ethiopic          #x24 #x7C)      ; \e$(3$|\e(B
+    (ethiopic-ucs      #x13 #x75)      ; \e$(3$|\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC NUMBER FIFTY")
+    (ucs               . #x1376)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 50)
+    (ethiopic          #x24 #x7D)      ; \e$(3$}\e(B
+    (ethiopic-ucs      #x13 #x76)      ; \e$(3$}\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC NUMBER SIXTY")
+    (ucs               . #x1377)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 60)
+    (ethiopic          #x24 #x7E)      ; \e$(3$~\e(B
+    (ethiopic-ucs      #x13 #x77)      ; \e$(3$~\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC NUMBER SEVENTY")
+    (ucs               . #x1378)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 70)
+    (ethiopic          #x25 #x21)      ; \e$(3%!\e(B
+    (ethiopic-ucs      #x13 #x78)      ; \e$(3%!\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC NUMBER EIGHTY")
+    (ucs               . #x1379)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 80)
+    (ethiopic          #x25 #x22)      ; \e$(3%"\e(B
+    (ethiopic-ucs      #x13 #x79)      ; \e$(3%"\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC NUMBER NINETY")
+    (ucs               . #x137A)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 90)
+    (ethiopic          #x25 #x23)      ; \e$(3%#\e(B
+    (ethiopic-ucs      #x13 #x7A)      ; \e$(3%#\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC NUMBER HUNDRED")
+    (ucs               . #x137B)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 100)
+    (ethiopic          #x25 #x24)      ; \e$(3%$\e(B
+    (ethiopic-ucs      #x13 #x7B)      ; \e$(3%$\e(B
+    ))
+(define-char
+  '((name              . "ETHIOPIC NUMBER TEN THOUSAND")
+    (ucs               . #x137C)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 10000)
+    (ethiopic          #x25 #x25)      ; \e$(3%%\e(B
+    (ethiopic-ucs      #x13 #x7C)      ; \e$(3%%\e(B
+    ))
diff --git a/lisp/utf-2000/u013A0-Cherokee.el b/lisp/utf-2000/u013A0-Cherokee.el
new file mode 100644 (file)
index 0000000..617969c
--- /dev/null
@@ -0,0 +1,595 @@
+(define-char
+  '((name              . "CHEROKEE LETTER A")
+    (ucs               . #x13A0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER E")
+    (ucs               . #x13A1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER I")
+    (ucs               . #x13A2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER O")
+    (ucs               . #x13A3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER U")
+    (ucs               . #x13A4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER V")
+    (ucs               . #x13A5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER GA")
+    (ucs               . #x13A6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER KA")
+    (ucs               . #x13A7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER GE")
+    (ucs               . #x13A8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER GI")
+    (ucs               . #x13A9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER GO")
+    (ucs               . #x13AA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER GU")
+    (ucs               . #x13AB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER GV")
+    (ucs               . #x13AC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER HA")
+    (ucs               . #x13AD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER HE")
+    (ucs               . #x13AE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER HI")
+    (ucs               . #x13AF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER HO")
+    (ucs               . #x13B0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER HU")
+    (ucs               . #x13B1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER HV")
+    (ucs               . #x13B2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER LA")
+    (ucs               . #x13B3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER LE")
+    (ucs               . #x13B4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER LI")
+    (ucs               . #x13B5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER LO")
+    (ucs               . #x13B6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER LU")
+    (ucs               . #x13B7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER LV")
+    (ucs               . #x13B8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER MA")
+    (ucs               . #x13B9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER ME")
+    (ucs               . #x13BA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER MI")
+    (ucs               . #x13BB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER MO")
+    (ucs               . #x13BC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER MU")
+    (ucs               . #x13BD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER NA")
+    (ucs               . #x13BE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER HNA")
+    (ucs               . #x13BF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER NAH")
+    (ucs               . #x13C0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER NE")
+    (ucs               . #x13C1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER NI")
+    (ucs               . #x13C2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER NO")
+    (ucs               . #x13C3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER NU")
+    (ucs               . #x13C4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER NV")
+    (ucs               . #x13C5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER QUA")
+    (ucs               . #x13C6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER QUE")
+    (ucs               . #x13C7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER QUI")
+    (ucs               . #x13C8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER QUO")
+    (ucs               . #x13C9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER QUU")
+    (ucs               . #x13CA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER QUV")
+    (ucs               . #x13CB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER SA")
+    (ucs               . #x13CC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER S")
+    (ucs               . #x13CD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER SE")
+    (ucs               . #x13CE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER SI")
+    (ucs               . #x13CF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER SO")
+    (ucs               . #x13D0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER SU")
+    (ucs               . #x13D1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER SV")
+    (ucs               . #x13D2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER DA")
+    (ucs               . #x13D3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER TA")
+    (ucs               . #x13D4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER DE")
+    (ucs               . #x13D5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER TE")
+    (ucs               . #x13D6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER DI")
+    (ucs               . #x13D7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER TI")
+    (ucs               . #x13D8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER DO")
+    (ucs               . #x13D9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER DU")
+    (ucs               . #x13DA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER DV")
+    (ucs               . #x13DB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER DLA")
+    (ucs               . #x13DC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER TLA")
+    (ucs               . #x13DD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER TLE")
+    (ucs               . #x13DE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER TLI")
+    (ucs               . #x13DF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER TLO")
+    (ucs               . #x13E0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER TLU")
+    (ucs               . #x13E1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER TLV")
+    (ucs               . #x13E2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER TSA")
+    (ucs               . #x13E3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER TSE")
+    (ucs               . #x13E4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER TSI")
+    (ucs               . #x13E5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER TSO")
+    (ucs               . #x13E6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER TSU")
+    (ucs               . #x13E7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER TSV")
+    (ucs               . #x13E8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER WA")
+    (ucs               . #x13E9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER WE")
+    (ucs               . #x13EA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER WI")
+    (ucs               . #x13EB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER WO")
+    (ucs               . #x13EC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER WU")
+    (ucs               . #x13ED)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER WV")
+    (ucs               . #x13EE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER YA")
+    (ucs               . #x13EF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER YE")
+    (ucs               . #x13F0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER YI")
+    (ucs               . #x13F1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER YO")
+    (ucs               . #x13F2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER YU")
+    (ucs               . #x13F3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHEROKEE LETTER YV")
+    (ucs               . #x13F4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u01400-Canadian.el b/lisp/utf-2000/u01400-Canadian.el
new file mode 100644 (file)
index 0000000..9cad551
--- /dev/null
@@ -0,0 +1,4410 @@
+(define-char
+  '((name              . "CANADIAN SYLLABICS E")
+    (ucs               . #x1401)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS AAI")
+    (ucs               . #x1402)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS I")
+    (ucs               . #x1403)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS II")
+    (ucs               . #x1404)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS O")
+    (ucs               . #x1405)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS OO")
+    (ucs               . #x1406)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS Y-CREE OO")
+    (ucs               . #x1407)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER EE")
+    (ucs               . #x1408)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER I")
+    (ucs               . #x1409)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS A")
+    (ucs               . #x140A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS AA")
+    (ucs               . #x140B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WE")
+    (ucs               . #x140C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE WE")
+    (ucs               . #x140D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WI")
+    (ucs               . #x140E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE WI")
+    (ucs               . #x140F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WII")
+    (ucs               . #x1410)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE WII")
+    (ucs               . #x1411)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WO")
+    (ucs               . #x1412)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE WO")
+    (ucs               . #x1413)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WOO")
+    (ucs               . #x1414)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE WOO")
+    (ucs               . #x1415)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NASKAPI WOO")
+    (ucs               . #x1416)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WA")
+    (ucs               . #x1417)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE WA")
+    (ucs               . #x1418)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WAA")
+    (ucs               . #x1419)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE WAA")
+    (ucs               . #x141A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NASKAPI WAA")
+    (ucs               . #x141B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS AI")
+    (ucs               . #x141C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS Y-CREE W")
+    (ucs               . #x141D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS GLOTTAL STOP")
+    (ucs               . #x141E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS FINAL ACUTE")
+    (ucs               . #x141F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS FINAL GRAVE")
+    (ucs               . #x1420)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS FINAL BOTTOM HALF RING")
+    (ucs               . #x1421)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS FINAL TOP HALF RING")
+    (ucs               . #x1422)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS FINAL RIGHT HALF RING")
+    (ucs               . #x1423)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS FINAL RING")
+    (ucs               . #x1424)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS FINAL DOUBLE ACUTE")
+    (ucs               . #x1425)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "CANADIAN SYLLABICS FINAL DOUBLE SHORT VERTICAL STROKES")
+    (ucs  . #x1426)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS FINAL MIDDLE DOT")
+    (ucs               . #x1427)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "CANADIAN SYLLABICS FINAL SHORT HORIZONTAL STROKE")
+    (ucs  . #x1428)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS FINAL PLUS")
+    (ucs               . #x1429)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS FINAL DOWN TACK")
+    (ucs               . #x142A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS EN")
+    (ucs               . #x142B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS IN")
+    (ucs               . #x142C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS ON")
+    (ucs               . #x142D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS AN")
+    (ucs               . #x142E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS PE")
+    (ucs               . #x142F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS PAAI")
+    (ucs               . #x1430)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS PI")
+    (ucs               . #x1431)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS PII")
+    (ucs               . #x1432)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS PO")
+    (ucs               . #x1433)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS POO")
+    (ucs               . #x1434)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS Y-CREE POO")
+    (ucs               . #x1435)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER HEE")
+    (ucs               . #x1436)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER HI")
+    (ucs               . #x1437)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS PA")
+    (ucs               . #x1438)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS PAA")
+    (ucs               . #x1439)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS PWE")
+    (ucs               . #x143A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE PWE")
+    (ucs               . #x143B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS PWI")
+    (ucs               . #x143C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE PWI")
+    (ucs               . #x143D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS PWII")
+    (ucs               . #x143E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE PWII")
+    (ucs               . #x143F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS PWO")
+    (ucs               . #x1440)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE PWO")
+    (ucs               . #x1441)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS PWOO")
+    (ucs               . #x1442)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE PWOO")
+    (ucs               . #x1443)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS PWA")
+    (ucs               . #x1444)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE PWA")
+    (ucs               . #x1445)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS PWAA")
+    (ucs               . #x1446)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE PWAA")
+    (ucs               . #x1447)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS Y-CREE PWAA")
+    (ucs               . #x1448)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS P")
+    (ucs               . #x1449)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE P")
+    (ucs               . #x144A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER H")
+    (ucs               . #x144B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TE")
+    (ucs               . #x144C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TAAI")
+    (ucs               . #x144D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TI")
+    (ucs               . #x144E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TII")
+    (ucs               . #x144F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TO")
+    (ucs               . #x1450)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TOO")
+    (ucs               . #x1451)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS Y-CREE TOO")
+    (ucs               . #x1452)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER DEE")
+    (ucs               . #x1453)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER DI")
+    (ucs               . #x1454)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TA")
+    (ucs               . #x1455)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TAA")
+    (ucs               . #x1456)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TWE")
+    (ucs               . #x1457)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE TWE")
+    (ucs               . #x1458)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TWI")
+    (ucs               . #x1459)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE TWI")
+    (ucs               . #x145A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TWII")
+    (ucs               . #x145B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE TWII")
+    (ucs               . #x145C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TWO")
+    (ucs               . #x145D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE TWO")
+    (ucs               . #x145E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TWOO")
+    (ucs               . #x145F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE TWOO")
+    (ucs               . #x1460)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TWA")
+    (ucs               . #x1461)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE TWA")
+    (ucs               . #x1462)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TWAA")
+    (ucs               . #x1463)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE TWAA")
+    (ucs               . #x1464)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NASKAPI TWAA")
+    (ucs               . #x1465)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS T")
+    (ucs               . #x1466)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TTE")
+    (ucs               . #x1467)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TTI")
+    (ucs               . #x1468)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TTO")
+    (ucs               . #x1469)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TTA")
+    (ucs               . #x146A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS KE")
+    (ucs               . #x146B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS KAAI")
+    (ucs               . #x146C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS KI")
+    (ucs               . #x146D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS KII")
+    (ucs               . #x146E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS KO")
+    (ucs               . #x146F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS KOO")
+    (ucs               . #x1470)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS Y-CREE KOO")
+    (ucs               . #x1471)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS KA")
+    (ucs               . #x1472)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS KAA")
+    (ucs               . #x1473)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS KWE")
+    (ucs               . #x1474)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE KWE")
+    (ucs               . #x1475)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS KWI")
+    (ucs               . #x1476)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE KWI")
+    (ucs               . #x1477)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS KWII")
+    (ucs               . #x1478)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE KWII")
+    (ucs               . #x1479)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS KWO")
+    (ucs               . #x147A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE KWO")
+    (ucs               . #x147B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS KWOO")
+    (ucs               . #x147C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE KWOO")
+    (ucs               . #x147D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS KWA")
+    (ucs               . #x147E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE KWA")
+    (ucs               . #x147F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS KWAA")
+    (ucs               . #x1480)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE KWAA")
+    (ucs               . #x1481)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NASKAPI KWAA")
+    (ucs               . #x1482)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS K")
+    (ucs               . #x1483)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS KW")
+    (ucs               . #x1484)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SOUTH-SLAVEY KEH")
+    (ucs               . #x1485)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SOUTH-SLAVEY KIH")
+    (ucs               . #x1486)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SOUTH-SLAVEY KOH")
+    (ucs               . #x1487)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SOUTH-SLAVEY KAH")
+    (ucs               . #x1488)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CE")
+    (ucs               . #x1489)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CAAI")
+    (ucs               . #x148A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CI")
+    (ucs               . #x148B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CII")
+    (ucs               . #x148C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CO")
+    (ucs               . #x148D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS COO")
+    (ucs               . #x148E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS Y-CREE COO")
+    (ucs               . #x148F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CA")
+    (ucs               . #x1490)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CAA")
+    (ucs               . #x1491)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CWE")
+    (ucs               . #x1492)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE CWE")
+    (ucs               . #x1493)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CWI")
+    (ucs               . #x1494)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE CWI")
+    (ucs               . #x1495)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CWII")
+    (ucs               . #x1496)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE CWII")
+    (ucs               . #x1497)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CWO")
+    (ucs               . #x1498)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE CWO")
+    (ucs               . #x1499)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CWOO")
+    (ucs               . #x149A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE CWOO")
+    (ucs               . #x149B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CWA")
+    (ucs               . #x149C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE CWA")
+    (ucs               . #x149D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CWAA")
+    (ucs               . #x149E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE CWAA")
+    (ucs               . #x149F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NASKAPI CWAA")
+    (ucs               . #x14A0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS C")
+    (ucs               . #x14A1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SAYISI TH")
+    (ucs               . #x14A2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS ME")
+    (ucs               . #x14A3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS MAAI")
+    (ucs               . #x14A4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS MI")
+    (ucs               . #x14A5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS MII")
+    (ucs               . #x14A6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS MO")
+    (ucs               . #x14A7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS MOO")
+    (ucs               . #x14A8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS Y-CREE MOO")
+    (ucs               . #x14A9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS MA")
+    (ucs               . #x14AA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS MAA")
+    (ucs               . #x14AB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS MWE")
+    (ucs               . #x14AC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE MWE")
+    (ucs               . #x14AD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS MWI")
+    (ucs               . #x14AE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE MWI")
+    (ucs               . #x14AF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS MWII")
+    (ucs               . #x14B0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE MWII")
+    (ucs               . #x14B1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS MWO")
+    (ucs               . #x14B2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE MWO")
+    (ucs               . #x14B3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS MWOO")
+    (ucs               . #x14B4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE MWOO")
+    (ucs               . #x14B5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS MWA")
+    (ucs               . #x14B6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE MWA")
+    (ucs               . #x14B7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS MWAA")
+    (ucs               . #x14B8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE MWAA")
+    (ucs               . #x14B9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NASKAPI MWAA")
+    (ucs               . #x14BA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS M")
+    (ucs               . #x14BB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE M")
+    (ucs               . #x14BC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS MH")
+    (ucs               . #x14BD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS ATHAPASCAN M")
+    (ucs               . #x14BE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SAYISI M")
+    (ucs               . #x14BF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NE")
+    (ucs               . #x14C0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NAAI")
+    (ucs               . #x14C1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NI")
+    (ucs               . #x14C2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NII")
+    (ucs               . #x14C3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NO")
+    (ucs               . #x14C4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NOO")
+    (ucs               . #x14C5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS Y-CREE NOO")
+    (ucs               . #x14C6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NA")
+    (ucs               . #x14C7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NAA")
+    (ucs               . #x14C8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NWE")
+    (ucs               . #x14C9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE NWE")
+    (ucs               . #x14CA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NWA")
+    (ucs               . #x14CB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE NWA")
+    (ucs               . #x14CC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NWAA")
+    (ucs               . #x14CD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE NWAA")
+    (ucs               . #x14CE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NASKAPI NWAA")
+    (ucs               . #x14CF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS N")
+    (ucs               . #x14D0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER NG")
+    (ucs               . #x14D1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NH")
+    (ucs               . #x14D2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS LE")
+    (ucs               . #x14D3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS LAAI")
+    (ucs               . #x14D4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS LI")
+    (ucs               . #x14D5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS LII")
+    (ucs               . #x14D6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS LO")
+    (ucs               . #x14D7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS LOO")
+    (ucs               . #x14D8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS Y-CREE LOO")
+    (ucs               . #x14D9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS LA")
+    (ucs               . #x14DA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS LAA")
+    (ucs               . #x14DB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS LWE")
+    (ucs               . #x14DC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE LWE")
+    (ucs               . #x14DD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS LWI")
+    (ucs               . #x14DE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE LWI")
+    (ucs               . #x14DF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS LWII")
+    (ucs               . #x14E0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE LWII")
+    (ucs               . #x14E1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS LWO")
+    (ucs               . #x14E2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE LWO")
+    (ucs               . #x14E3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS LWOO")
+    (ucs               . #x14E4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE LWOO")
+    (ucs               . #x14E5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS LWA")
+    (ucs               . #x14E6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE LWA")
+    (ucs               . #x14E7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS LWAA")
+    (ucs               . #x14E8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE LWAA")
+    (ucs               . #x14E9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS L")
+    (ucs               . #x14EA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE L")
+    (ucs               . #x14EB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS MEDIAL L")
+    (ucs               . #x14EC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SE")
+    (ucs               . #x14ED)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SAAI")
+    (ucs               . #x14EE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SI")
+    (ucs               . #x14EF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SII")
+    (ucs               . #x14F0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SO")
+    (ucs               . #x14F1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SOO")
+    (ucs               . #x14F2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS Y-CREE SOO")
+    (ucs               . #x14F3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SA")
+    (ucs               . #x14F4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SAA")
+    (ucs               . #x14F5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SWE")
+    (ucs               . #x14F6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE SWE")
+    (ucs               . #x14F7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SWI")
+    (ucs               . #x14F8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE SWI")
+    (ucs               . #x14F9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SWII")
+    (ucs               . #x14FA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE SWII")
+    (ucs               . #x14FB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SWO")
+    (ucs               . #x14FC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE SWO")
+    (ucs               . #x14FD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SWOO")
+    (ucs               . #x14FE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE SWOO")
+    (ucs               . #x14FF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SWA")
+    (ucs               . #x1500)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE SWA")
+    (ucs               . #x1501)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SWAA")
+    (ucs               . #x1502)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE SWAA")
+    (ucs               . #x1503)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NASKAPI SWAA")
+    (ucs               . #x1504)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS S")
+    (ucs               . #x1505)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS ATHAPASCAN S")
+    (ucs               . #x1506)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SW")
+    (ucs               . #x1507)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS BLACKFOOT S")
+    (ucs               . #x1508)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS MOOSE-CREE SK")
+    (ucs               . #x1509)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NASKAPI SKW")
+    (ucs               . #x150A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NASKAPI S-W")
+    (ucs               . #x150B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NASKAPI SPWA")
+    (ucs               . #x150C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NASKAPI STWA")
+    (ucs               . #x150D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NASKAPI SKWA")
+    (ucs               . #x150E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NASKAPI SCWA")
+    (ucs               . #x150F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SHE")
+    (ucs               . #x1510)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SHI")
+    (ucs               . #x1511)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SHII")
+    (ucs               . #x1512)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SHO")
+    (ucs               . #x1513)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SHOO")
+    (ucs               . #x1514)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SHA")
+    (ucs               . #x1515)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SHAA")
+    (ucs               . #x1516)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SHWE")
+    (ucs               . #x1517)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE SHWE")
+    (ucs               . #x1518)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SHWI")
+    (ucs               . #x1519)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE SHWI")
+    (ucs               . #x151A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SHWII")
+    (ucs               . #x151B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE SHWII")
+    (ucs               . #x151C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SHWO")
+    (ucs               . #x151D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE SHWO")
+    (ucs               . #x151E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SHWOO")
+    (ucs               . #x151F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE SHWOO")
+    (ucs               . #x1520)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SHWA")
+    (ucs               . #x1521)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE SHWA")
+    (ucs               . #x1522)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SHWAA")
+    (ucs               . #x1523)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE SHWAA")
+    (ucs               . #x1524)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SH")
+    (ucs               . #x1525)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS YE")
+    (ucs               . #x1526)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS YAAI")
+    (ucs               . #x1527)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS YI")
+    (ucs               . #x1528)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS YII")
+    (ucs               . #x1529)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS YO")
+    (ucs               . #x152A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS YOO")
+    (ucs               . #x152B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS Y-CREE YOO")
+    (ucs               . #x152C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS YA")
+    (ucs               . #x152D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS YAA")
+    (ucs               . #x152E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS YWE")
+    (ucs               . #x152F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE YWE")
+    (ucs               . #x1530)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS YWI")
+    (ucs               . #x1531)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE YWI")
+    (ucs               . #x1532)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS YWII")
+    (ucs               . #x1533)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE YWII")
+    (ucs               . #x1534)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS YWO")
+    (ucs               . #x1535)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE YWO")
+    (ucs               . #x1536)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS YWOO")
+    (ucs               . #x1537)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE YWOO")
+    (ucs               . #x1538)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS YWA")
+    (ucs               . #x1539)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE YWA")
+    (ucs               . #x153A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS YWAA")
+    (ucs               . #x153B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE YWAA")
+    (ucs               . #x153C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NASKAPI YWAA")
+    (ucs               . #x153D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS Y")
+    (ucs               . #x153E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS BIBLE-CREE Y")
+    (ucs               . #x153F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE Y")
+    (ucs               . #x1540)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SAYISI YI")
+    (ucs               . #x1541)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS RE")
+    (ucs               . #x1542)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS R-CREE RE")
+    (ucs               . #x1543)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE LE")
+    (ucs               . #x1544)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS RAAI")
+    (ucs               . #x1545)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS RI")
+    (ucs               . #x1546)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS RII")
+    (ucs               . #x1547)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS RO")
+    (ucs               . #x1548)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS ROO")
+    (ucs               . #x1549)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE LO")
+    (ucs               . #x154A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS RA")
+    (ucs               . #x154B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS RAA")
+    (ucs               . #x154C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE LA")
+    (ucs               . #x154D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS RWAA")
+    (ucs               . #x154E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE RWAA")
+    (ucs               . #x154F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS R")
+    (ucs               . #x1550)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE R")
+    (ucs               . #x1551)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS MEDIAL R")
+    (ucs               . #x1552)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS FE")
+    (ucs               . #x1553)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS FAAI")
+    (ucs               . #x1554)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS FI")
+    (ucs               . #x1555)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS FII")
+    (ucs               . #x1556)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS FO")
+    (ucs               . #x1557)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS FOO")
+    (ucs               . #x1558)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS FA")
+    (ucs               . #x1559)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS FAA")
+    (ucs               . #x155A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS FWAA")
+    (ucs               . #x155B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE FWAA")
+    (ucs               . #x155C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS F")
+    (ucs               . #x155D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS THE")
+    (ucs               . #x155E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS N-CREE THE")
+    (ucs               . #x155F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS THI")
+    (ucs               . #x1560)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS N-CREE THI")
+    (ucs               . #x1561)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS THII")
+    (ucs               . #x1562)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS N-CREE THII")
+    (ucs               . #x1563)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS THO")
+    (ucs               . #x1564)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS THOO")
+    (ucs               . #x1565)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS THA")
+    (ucs               . #x1566)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS THAA")
+    (ucs               . #x1567)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS THWAA")
+    (ucs               . #x1568)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE THWAA")
+    (ucs               . #x1569)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TH")
+    (ucs               . #x156A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TTHE")
+    (ucs               . #x156B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TTHI")
+    (ucs               . #x156C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TTHO")
+    (ucs               . #x156D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TTHA")
+    (ucs               . #x156E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TTH")
+    (ucs               . #x156F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TYE")
+    (ucs               . #x1570)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TYI")
+    (ucs               . #x1571)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TYO")
+    (ucs               . #x1572)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TYA")
+    (ucs               . #x1573)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NUNAVIK HE")
+    (ucs               . #x1574)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NUNAVIK HI")
+    (ucs               . #x1575)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NUNAVIK HII")
+    (ucs               . #x1576)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NUNAVIK HO")
+    (ucs               . #x1577)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NUNAVIK HOO")
+    (ucs               . #x1578)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NUNAVIK HA")
+    (ucs               . #x1579)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NUNAVIK HAA")
+    (ucs               . #x157A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NUNAVIK H")
+    (ucs               . #x157B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NUNAVUT H")
+    (ucs               . #x157C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS HK")
+    (ucs               . #x157D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS QAAI")
+    (ucs               . #x157E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS QI")
+    (ucs               . #x157F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS QII")
+    (ucs               . #x1580)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS QO")
+    (ucs               . #x1581)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS QOO")
+    (ucs               . #x1582)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS QA")
+    (ucs               . #x1583)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS QAA")
+    (ucs               . #x1584)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS Q")
+    (ucs               . #x1585)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TLHE")
+    (ucs               . #x1586)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TLHI")
+    (ucs               . #x1587)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TLHO")
+    (ucs               . #x1588)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TLHA")
+    (ucs               . #x1589)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE RE")
+    (ucs               . #x158A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE RI")
+    (ucs               . #x158B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE RO")
+    (ucs               . #x158C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WEST-CREE RA")
+    (ucs               . #x158D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NGAAI")
+    (ucs               . #x158E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NGI")
+    (ucs               . #x158F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NGII")
+    (ucs               . #x1590)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NGO")
+    (ucs               . #x1591)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NGOO")
+    (ucs               . #x1592)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NGA")
+    (ucs               . #x1593)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NGAA")
+    (ucs               . #x1594)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NG")
+    (ucs               . #x1595)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NNG")
+    (ucs               . #x1596)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SAYISI SHE")
+    (ucs               . #x1597)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SAYISI SHI")
+    (ucs               . #x1598)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SAYISI SHO")
+    (ucs               . #x1599)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SAYISI SHA")
+    (ucs               . #x159A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WOODS-CREE THE")
+    (ucs               . #x159B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WOODS-CREE THI")
+    (ucs               . #x159C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WOODS-CREE THO")
+    (ucs               . #x159D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WOODS-CREE THA")
+    (ucs               . #x159E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS WOODS-CREE TH")
+    (ucs               . #x159F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS LHI")
+    (ucs               . #x15A0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS LHII")
+    (ucs               . #x15A1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS LHO")
+    (ucs               . #x15A2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS LHOO")
+    (ucs               . #x15A3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS LHA")
+    (ucs               . #x15A4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS LHAA")
+    (ucs               . #x15A5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS LH")
+    (ucs               . #x15A6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TH-CREE THE")
+    (ucs               . #x15A7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TH-CREE THI")
+    (ucs               . #x15A8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TH-CREE THII")
+    (ucs               . #x15A9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TH-CREE THO")
+    (ucs               . #x15AA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TH-CREE THOO")
+    (ucs               . #x15AB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TH-CREE THA")
+    (ucs               . #x15AC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TH-CREE THAA")
+    (ucs               . #x15AD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS TH-CREE TH")
+    (ucs               . #x15AE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS AIVILIK B")
+    (ucs               . #x15AF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS BLACKFOOT E")
+    (ucs               . #x15B0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS BLACKFOOT I")
+    (ucs               . #x15B1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS BLACKFOOT O")
+    (ucs               . #x15B2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS BLACKFOOT A")
+    (ucs               . #x15B3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS BLACKFOOT WE")
+    (ucs               . #x15B4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS BLACKFOOT WI")
+    (ucs               . #x15B5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS BLACKFOOT WO")
+    (ucs               . #x15B6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS BLACKFOOT WA")
+    (ucs               . #x15B7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS BLACKFOOT NE")
+    (ucs               . #x15B8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS BLACKFOOT NI")
+    (ucs               . #x15B9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS BLACKFOOT NO")
+    (ucs               . #x15BA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS BLACKFOOT NA")
+    (ucs               . #x15BB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS BLACKFOOT KE")
+    (ucs               . #x15BC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS BLACKFOOT KI")
+    (ucs               . #x15BD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS BLACKFOOT KO")
+    (ucs               . #x15BE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS BLACKFOOT KA")
+    (ucs               . #x15BF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SAYISI HE")
+    (ucs               . #x15C0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SAYISI HI")
+    (ucs               . #x15C1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SAYISI HO")
+    (ucs               . #x15C2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SAYISI HA")
+    (ucs               . #x15C3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER GHU")
+    (ucs               . #x15C4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER GHO")
+    (ucs               . #x15C5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER GHE")
+    (ucs               . #x15C6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER GHEE")
+    (ucs               . #x15C7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER GHI")
+    (ucs               . #x15C8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER GHA")
+    (ucs               . #x15C9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER RU")
+    (ucs               . #x15CA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER RO")
+    (ucs               . #x15CB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER RE")
+    (ucs               . #x15CC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER REE")
+    (ucs               . #x15CD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER RI")
+    (ucs               . #x15CE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER RA")
+    (ucs               . #x15CF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER WU")
+    (ucs               . #x15D0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER WO")
+    (ucs               . #x15D1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER WE")
+    (ucs               . #x15D2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER WEE")
+    (ucs               . #x15D3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER WI")
+    (ucs               . #x15D4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER WA")
+    (ucs               . #x15D5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER HWU")
+    (ucs               . #x15D6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER HWO")
+    (ucs               . #x15D7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER HWE")
+    (ucs               . #x15D8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER HWEE")
+    (ucs               . #x15D9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER HWI")
+    (ucs               . #x15DA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER HWA")
+    (ucs               . #x15DB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER THU")
+    (ucs               . #x15DC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER THO")
+    (ucs               . #x15DD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER THE")
+    (ucs               . #x15DE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER THEE")
+    (ucs               . #x15DF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER THI")
+    (ucs               . #x15E0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER THA")
+    (ucs               . #x15E1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TTU")
+    (ucs               . #x15E2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TTO")
+    (ucs               . #x15E3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TTE")
+    (ucs               . #x15E4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TTEE")
+    (ucs               . #x15E5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TTI")
+    (ucs               . #x15E6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TTA")
+    (ucs               . #x15E7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER PU")
+    (ucs               . #x15E8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER PO")
+    (ucs               . #x15E9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER PE")
+    (ucs               . #x15EA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER PEE")
+    (ucs               . #x15EB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER PI")
+    (ucs               . #x15EC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER PA")
+    (ucs               . #x15ED)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER P")
+    (ucs               . #x15EE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER GU")
+    (ucs               . #x15EF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER GO")
+    (ucs               . #x15F0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER GE")
+    (ucs               . #x15F1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER GEE")
+    (ucs               . #x15F2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER GI")
+    (ucs               . #x15F3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER GA")
+    (ucs               . #x15F4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER KHU")
+    (ucs               . #x15F5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER KHO")
+    (ucs               . #x15F6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER KHE")
+    (ucs               . #x15F7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER KHEE")
+    (ucs               . #x15F8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER KHI")
+    (ucs               . #x15F9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER KHA")
+    (ucs               . #x15FA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER KKU")
+    (ucs               . #x15FB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER KKO")
+    (ucs               . #x15FC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER KKE")
+    (ucs               . #x15FD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER KKEE")
+    (ucs               . #x15FE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER KKI")
+    (ucs               . #x15FF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER KKA")
+    (ucs               . #x1600)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER KK")
+    (ucs               . #x1601)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER NU")
+    (ucs               . #x1602)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER NO")
+    (ucs               . #x1603)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER NE")
+    (ucs               . #x1604)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER NEE")
+    (ucs               . #x1605)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER NI")
+    (ucs               . #x1606)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER NA")
+    (ucs               . #x1607)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER MU")
+    (ucs               . #x1608)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER MO")
+    (ucs               . #x1609)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER ME")
+    (ucs               . #x160A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER MEE")
+    (ucs               . #x160B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER MI")
+    (ucs               . #x160C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER MA")
+    (ucs               . #x160D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER YU")
+    (ucs               . #x160E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER YO")
+    (ucs               . #x160F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER YE")
+    (ucs               . #x1610)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER YEE")
+    (ucs               . #x1611)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER YI")
+    (ucs               . #x1612)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER YA")
+    (ucs               . #x1613)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER JU")
+    (ucs               . #x1614)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SAYISI JU")
+    (ucs               . #x1615)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER JO")
+    (ucs               . #x1616)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER JE")
+    (ucs               . #x1617)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER JEE")
+    (ucs               . #x1618)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER JI")
+    (ucs               . #x1619)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS SAYISI JI")
+    (ucs               . #x161A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER JA")
+    (ucs               . #x161B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER JJU")
+    (ucs               . #x161C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER JJO")
+    (ucs               . #x161D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER JJE")
+    (ucs               . #x161E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER JJEE")
+    (ucs               . #x161F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER JJI")
+    (ucs               . #x1620)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER JJA")
+    (ucs               . #x1621)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER LU")
+    (ucs               . #x1622)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER LO")
+    (ucs               . #x1623)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER LE")
+    (ucs               . #x1624)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER LEE")
+    (ucs               . #x1625)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER LI")
+    (ucs               . #x1626)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER LA")
+    (ucs               . #x1627)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER DLU")
+    (ucs               . #x1628)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER DLO")
+    (ucs               . #x1629)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER DLE")
+    (ucs               . #x162A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER DLEE")
+    (ucs               . #x162B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER DLI")
+    (ucs               . #x162C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER DLA")
+    (ucs               . #x162D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER LHU")
+    (ucs               . #x162E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER LHO")
+    (ucs               . #x162F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER LHE")
+    (ucs               . #x1630)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER LHEE")
+    (ucs               . #x1631)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER LHI")
+    (ucs               . #x1632)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER LHA")
+    (ucs               . #x1633)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TLHU")
+    (ucs               . #x1634)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TLHO")
+    (ucs               . #x1635)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TLHE")
+    (ucs               . #x1636)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TLHEE")
+    (ucs               . #x1637)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TLHI")
+    (ucs               . #x1638)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TLHA")
+    (ucs               . #x1639)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TLU")
+    (ucs               . #x163A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TLO")
+    (ucs               . #x163B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TLE")
+    (ucs               . #x163C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TLEE")
+    (ucs               . #x163D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TLI")
+    (ucs               . #x163E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TLA")
+    (ucs               . #x163F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER ZU")
+    (ucs               . #x1640)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER ZO")
+    (ucs               . #x1641)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER ZE")
+    (ucs               . #x1642)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER ZEE")
+    (ucs               . #x1643)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER ZI")
+    (ucs               . #x1644)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER ZA")
+    (ucs               . #x1645)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER Z")
+    (ucs               . #x1646)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER INITIAL Z")
+    (ucs               . #x1647)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER DZU")
+    (ucs               . #x1648)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER DZO")
+    (ucs               . #x1649)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER DZE")
+    (ucs               . #x164A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER DZEE")
+    (ucs               . #x164B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER DZI")
+    (ucs               . #x164C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER DZA")
+    (ucs               . #x164D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER SU")
+    (ucs               . #x164E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER SO")
+    (ucs               . #x164F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER SE")
+    (ucs               . #x1650)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER SEE")
+    (ucs               . #x1651)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER SI")
+    (ucs               . #x1652)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER SA")
+    (ucs               . #x1653)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER SHU")
+    (ucs               . #x1654)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER SHO")
+    (ucs               . #x1655)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER SHE")
+    (ucs               . #x1656)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER SHEE")
+    (ucs               . #x1657)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER SHI")
+    (ucs               . #x1658)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER SHA")
+    (ucs               . #x1659)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER SH")
+    (ucs               . #x165A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TSU")
+    (ucs               . #x165B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TSO")
+    (ucs               . #x165C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TSE")
+    (ucs               . #x165D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TSEE")
+    (ucs               . #x165E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TSI")
+    (ucs               . #x165F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TSA")
+    (ucs               . #x1660)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER CHU")
+    (ucs               . #x1661)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER CHO")
+    (ucs               . #x1662)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER CHE")
+    (ucs               . #x1663)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER CHEE")
+    (ucs               . #x1664)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER CHI")
+    (ucs               . #x1665)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER CHA")
+    (ucs               . #x1666)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TTSU")
+    (ucs               . #x1667)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TTSO")
+    (ucs               . #x1668)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TTSE")
+    (ucs               . #x1669)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TTSEE")
+    (ucs               . #x166A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TTSI")
+    (ucs               . #x166B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CARRIER TTSA")
+    (ucs               . #x166C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS CHI SIGN")
+    (ucs               . #x166D)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS FULL STOP")
+    (ucs               . #x166E)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS QAI")
+    (ucs               . #x166F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NGAI")
+    (ucs               . #x1670)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NNGI")
+    (ucs               . #x1671)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NNGII")
+    (ucs               . #x1672)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NNGO")
+    (ucs               . #x1673)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NNGOO")
+    (ucs               . #x1674)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NNGA")
+    (ucs               . #x1675)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANADIAN SYLLABICS NNGAA")
+    (ucs               . #x1676)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u01680-Ogham.el b/lisp/utf-2000/u01680-Ogham.el
new file mode 100644 (file)
index 0000000..1f3203f
--- /dev/null
@@ -0,0 +1,203 @@
+(define-char
+  '((name              . "OGHAM SPACE MARK")
+    (ucs               . #x1680)
+    (general-category  separator space) ; Normative Category
+    (bidi-category     . "WS")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER BEITH")
+    (ucs               . #x1681)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER LUIS")
+    (ucs               . #x1682)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER FEARN")
+    (ucs               . #x1683)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER SAIL")
+    (ucs               . #x1684)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER NION")
+    (ucs               . #x1685)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER UATH")
+    (ucs               . #x1686)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER DAIR")
+    (ucs               . #x1687)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER TINNE")
+    (ucs               . #x1688)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER COLL")
+    (ucs               . #x1689)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER CEIRT")
+    (ucs               . #x168A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER MUIN")
+    (ucs               . #x168B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER GORT")
+    (ucs               . #x168C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER NGEADAL")
+    (ucs               . #x168D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER STRAIF")
+    (ucs               . #x168E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER RUIS")
+    (ucs               . #x168F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER AILM")
+    (ucs               . #x1690)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER ONN")
+    (ucs               . #x1691)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER UR")
+    (ucs               . #x1692)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER EADHADH")
+    (ucs               . #x1693)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER IODHADH")
+    (ucs               . #x1694)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER EABHADH")
+    (ucs               . #x1695)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER OR")
+    (ucs               . #x1696)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER UILLEANN")
+    (ucs               . #x1697)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER IFIN")
+    (ucs               . #x1698)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER EAMHANCHOLL")
+    (ucs               . #x1699)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM LETTER PEITH")
+    (ucs               . #x169A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM FEATHER MARK")
+    (ucs               . #x169B)
+    (general-category  punctuation open) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OGHAM REVERSED FEATHER MARK")
+    (ucs               . #x169C)
+    (general-category  punctuation close) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u016A0-Runic.el b/lisp/utf-2000/u016A0-Runic.el
new file mode 100644 (file)
index 0000000..9392bc7
--- /dev/null
@@ -0,0 +1,573 @@
+(define-char
+  '((name              . "RUNIC LETTER FEHU FEOH FE F")
+    (ucs               . #x16A0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER V")
+    (ucs               . #x16A1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER URUZ UR U")
+    (ucs               . #x16A2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER YR")
+    (ucs               . #x16A3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER Y")
+    (ucs               . #x16A4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER W")
+    (ucs               . #x16A5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER THURISAZ THURS THORN")
+    (ucs               . #x16A6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER ETH")
+    (ucs               . #x16A7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER ANSUZ A")
+    (ucs               . #x16A8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER OS O")
+    (ucs               . #x16A9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER AC A")
+    (ucs               . #x16AA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER AESC")
+    (ucs               . #x16AB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER LONG-BRANCH-OSS O")
+    (ucs               . #x16AC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER SHORT-TWIG-OSS O")
+    (ucs               . #x16AD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER O")
+    (ucs               . #x16AE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER OE")
+    (ucs               . #x16AF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER ON")
+    (ucs               . #x16B0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER RAIDO RAD REID R")
+    (ucs               . #x16B1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER KAUNA")
+    (ucs               . #x16B2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER CEN")
+    (ucs               . #x16B3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER KAUN K")
+    (ucs               . #x16B4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER G")
+    (ucs               . #x16B5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER ENG")
+    (ucs               . #x16B6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER GEBO GYFU G")
+    (ucs               . #x16B7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER GAR")
+    (ucs               . #x16B8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER WUNJO WYNN W")
+    (ucs               . #x16B9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER HAGLAZ H")
+    (ucs               . #x16BA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER HAEGL H")
+    (ucs               . #x16BB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER LONG-BRANCH-HAGALL H")
+    (ucs               . #x16BC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER SHORT-TWIG-HAGALL H")
+    (ucs               . #x16BD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER NAUDIZ NYD NAUD N")
+    (ucs               . #x16BE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER SHORT-TWIG-NAUD N")
+    (ucs               . #x16BF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER DOTTED-N")
+    (ucs               . #x16C0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER ISAZ IS ISS I")
+    (ucs               . #x16C1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER E")
+    (ucs               . #x16C2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER JERAN J")
+    (ucs               . #x16C3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER GER")
+    (ucs               . #x16C4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER LONG-BRANCH-AR AE")
+    (ucs               . #x16C5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER SHORT-TWIG-AR A")
+    (ucs               . #x16C6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER IWAZ EOH")
+    (ucs               . #x16C7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER PERTHO PEORTH P")
+    (ucs               . #x16C8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER ALGIZ EOLHX")
+    (ucs               . #x16C9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER SOWILO S")
+    (ucs               . #x16CA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER SIGEL LONG-BRANCH-SOL S")
+    (ucs               . #x16CB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER SHORT-TWIG-SOL S")
+    (ucs               . #x16CC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER C")
+    (ucs               . #x16CD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER Z")
+    (ucs               . #x16CE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER TIWAZ TIR TYR T")
+    (ucs               . #x16CF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER SHORT-TWIG-TYR T")
+    (ucs               . #x16D0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER D")
+    (ucs               . #x16D1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER BERKANAN BEORC BJARKAN B")
+    (ucs               . #x16D2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER SHORT-TWIG-BJARKAN B")
+    (ucs               . #x16D3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER DOTTED-P")
+    (ucs               . #x16D4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER OPEN-P")
+    (ucs               . #x16D5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER EHWAZ EH E")
+    (ucs               . #x16D6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER MANNAZ MAN M")
+    (ucs               . #x16D7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER LONG-BRANCH-MADR M")
+    (ucs               . #x16D8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER SHORT-TWIG-MADR M")
+    (ucs               . #x16D9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER LAUKAZ LAGU LOGR L")
+    (ucs               . #x16DA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER DOTTED-L")
+    (ucs               . #x16DB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER INGWAZ")
+    (ucs               . #x16DC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER ING")
+    (ucs               . #x16DD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER DAGAZ DAEG D")
+    (ucs               . #x16DE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER OTHALAN ETHEL O")
+    (ucs               . #x16DF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER EAR")
+    (ucs               . #x16E0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER IOR")
+    (ucs               . #x16E1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER CWEORTH")
+    (ucs               . #x16E2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER CALC")
+    (ucs               . #x16E3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER CEALC")
+    (ucs               . #x16E4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER STAN")
+    (ucs               . #x16E5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER LONG-BRANCH-YR")
+    (ucs               . #x16E6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER SHORT-TWIG-YR")
+    (ucs               . #x16E7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER ICELANDIC-YR")
+    (ucs               . #x16E8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER Q")
+    (ucs               . #x16E9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC LETTER X")
+    (ucs               . #x16EA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC SINGLE PUNCTUATION")
+    (ucs               . #x16EB)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC MULTIPLE PUNCTUATION")
+    (ucs               . #x16EC)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC CROSS PUNCTUATION")
+    (ucs               . #x16ED)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUNIC ARLAUG SYMBOL")
+    (ucs               . #x16EE)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (numeric-value     . 17)
+    (mirrored          . nil)
+    (iso-10646-comment . "golden number 17")
+    ))
+(define-char
+  '((name              . "RUNIC TVIMADUR SYMBOL")
+    (ucs               . #x16EF)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (numeric-value     . 18)
+    (mirrored          . nil)
+    (iso-10646-comment . "golden number 18")
+    ))
+(define-char
+  '((name              . "RUNIC BELGTHOR SYMBOL")
+    (ucs               . #x16F0)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (numeric-value     . 19)
+    (mirrored          . nil)
+    (iso-10646-comment . "golden number 19")
+    ))
diff --git a/lisp/utf-2000/u01780-Khmer.el b/lisp/utf-2000/u01780-Khmer.el
new file mode 100644 (file)
index 0000000..5bbd101
--- /dev/null
@@ -0,0 +1,751 @@
+(define-char
+  '((name              . "KHMER LETTER KA")
+    (ucs               . #x1780)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER KHA")
+    (ucs               . #x1781)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER KO")
+    (ucs               . #x1782)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER KHO")
+    (ucs               . #x1783)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER NGO")
+    (ucs               . #x1784)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER CA")
+    (ucs               . #x1785)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER CHA")
+    (ucs               . #x1786)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER CO")
+    (ucs               . #x1787)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER CHO")
+    (ucs               . #x1788)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER NYO")
+    (ucs               . #x1789)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER DA")
+    (ucs               . #x178A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER TTHA")
+    (ucs               . #x178B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER DO")
+    (ucs               . #x178C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER TTHO")
+    (ucs               . #x178D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER NNO")
+    (ucs               . #x178E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER TA")
+    (ucs               . #x178F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER THA")
+    (ucs               . #x1790)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER TO")
+    (ucs               . #x1791)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER THO")
+    (ucs               . #x1792)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER NO")
+    (ucs               . #x1793)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER BA")
+    (ucs               . #x1794)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER PHA")
+    (ucs               . #x1795)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER PO")
+    (ucs               . #x1796)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER PHO")
+    (ucs               . #x1797)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER MO")
+    (ucs               . #x1798)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER YO")
+    (ucs               . #x1799)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER RO")
+    (ucs               . #x179A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER LO")
+    (ucs               . #x179B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER VO")
+    (ucs               . #x179C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER SHA")
+    (ucs               . #x179D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER SSO")
+    (ucs               . #x179E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER SA")
+    (ucs               . #x179F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER HA")
+    (ucs               . #x17A0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER LA")
+    (ucs               . #x17A1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER LETTER QA")
+    (ucs               . #x17A2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER INDEPENDENT VOWEL QAQ")
+    (ucs               . #x17A3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER INDEPENDENT VOWEL QAA")
+    (ucs               . #x17A4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER INDEPENDENT VOWEL QI")
+    (ucs               . #x17A5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER INDEPENDENT VOWEL QII")
+    (ucs               . #x17A6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER INDEPENDENT VOWEL QU")
+    (ucs               . #x17A7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER INDEPENDENT VOWEL QUK")
+    (ucs               . #x17A8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER INDEPENDENT VOWEL QUU")
+    (ucs               . #x17A9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER INDEPENDENT VOWEL QUUV")
+    (ucs               . #x17AA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER INDEPENDENT VOWEL RY")
+    (ucs               . #x17AB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER INDEPENDENT VOWEL RYY")
+    (ucs               . #x17AC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER INDEPENDENT VOWEL LY")
+    (ucs               . #x17AD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER INDEPENDENT VOWEL LYY")
+    (ucs               . #x17AE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER INDEPENDENT VOWEL QE")
+    (ucs               . #x17AF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER INDEPENDENT VOWEL QAI")
+    (ucs               . #x17B0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER INDEPENDENT VOWEL QOO TYPE ONE")
+    (ucs               . #x17B1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER INDEPENDENT VOWEL QOO TYPE TWO")
+    (ucs               . #x17B2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER INDEPENDENT VOWEL QAU")
+    (ucs               . #x17B3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER VOWEL INHERENT AQ")
+    (ucs               . #x17B4)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER VOWEL INHERENT AA")
+    (ucs               . #x17B5)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER VOWEL SIGN AA")
+    (ucs               . #x17B6)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER VOWEL SIGN I")
+    (ucs               . #x17B7)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER VOWEL SIGN II")
+    (ucs               . #x17B8)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER VOWEL SIGN Y")
+    (ucs               . #x17B9)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER VOWEL SIGN YY")
+    (ucs               . #x17BA)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER VOWEL SIGN U")
+    (ucs               . #x17BB)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER VOWEL SIGN UU")
+    (ucs               . #x17BC)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER VOWEL SIGN UA")
+    (ucs               . #x17BD)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER VOWEL SIGN OE")
+    (ucs               . #x17BE)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER VOWEL SIGN YA")
+    (ucs               . #x17BF)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER VOWEL SIGN IE")
+    (ucs               . #x17C0)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER VOWEL SIGN E")
+    (ucs               . #x17C1)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER VOWEL SIGN AE")
+    (ucs               . #x17C2)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER VOWEL SIGN AI")
+    (ucs               . #x17C3)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER VOWEL SIGN OO")
+    (ucs               . #x17C4)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER VOWEL SIGN AU")
+    (ucs               . #x17C5)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER SIGN NIKAHIT")
+    (ucs               . #x17C6)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER SIGN REAHMUK")
+    (ucs               . #x17C7)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER SIGN YUUKALEAPINTU")
+    (ucs               . #x17C8)
+    (general-category  mark spacing-combining) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER SIGN MUUSIKATOAN")
+    (ucs               . #x17C9)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER SIGN TRIISAP")
+    (ucs               . #x17CA)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER SIGN BANTOC")
+    (ucs               . #x17CB)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER SIGN ROBAT")
+    (ucs               . #x17CC)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER SIGN TOANDAKHIAT")
+    (ucs               . #x17CD)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER SIGN KAKABAT")
+    (ucs               . #x17CE)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER SIGN AHSDA")
+    (ucs               . #x17CF)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER SIGN SAMYOK SANNYA")
+    (ucs               . #x17D0)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER SIGN VIRIAM")
+    (ucs               . #x17D1)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER SIGN COENG")
+    (ucs               . #x17D2)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER SIGN BATHAMASAT")
+    (ucs               . #x17D3)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER SIGN KHAN")
+    (ucs               . #x17D4)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER SIGN BARIYOOSAN")
+    (ucs               . #x17D5)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER SIGN CAMNUC PII KUUH")
+    (ucs               . #x17D6)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER SIGN LEK TOO")
+    (ucs               . #x17D7)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER SIGN BEYYAL")
+    (ucs               . #x17D8)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER SIGN PHNAEK MUAN")
+    (ucs               . #x17D9)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER SIGN KOOMUUT")
+    (ucs               . #x17DA)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER CURRENCY SYMBOL RIEL")
+    (ucs               . #x17DB)
+    (general-category  symbol currency) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER SIGN AVAKRAHASANYA")
+    (ucs               . #x17DC)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER DIGIT ZERO")
+    (ucs               . #x17E0)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 0)
+    (digit-value       . 0)
+    (numeric-value     . 0)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER DIGIT ONE")
+    (ucs               . #x17E1)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 1)
+    (digit-value       . 1)
+    (numeric-value     . 1)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER DIGIT TWO")
+    (ucs               . #x17E2)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 2)
+    (digit-value       . 2)
+    (numeric-value     . 2)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER DIGIT THREE")
+    (ucs               . #x17E3)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 3)
+    (digit-value       . 3)
+    (numeric-value     . 3)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER DIGIT FOUR")
+    (ucs               . #x17E4)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 4)
+    (digit-value       . 4)
+    (numeric-value     . 4)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER DIGIT FIVE")
+    (ucs               . #x17E5)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 5)
+    (digit-value       . 5)
+    (numeric-value     . 5)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER DIGIT SIX")
+    (ucs               . #x17E6)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 6)
+    (digit-value       . 6)
+    (numeric-value     . 6)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER DIGIT SEVEN")
+    (ucs               . #x17E7)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 7)
+    (digit-value       . 7)
+    (numeric-value     . 7)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER DIGIT EIGHT")
+    (ucs               . #x17E8)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 8)
+    (digit-value       . 8)
+    (numeric-value     . 8)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KHMER DIGIT NINE")
+    (ucs               . #x17E9)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 9)
+    (digit-value       . 9)
+    (numeric-value     . 9)
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u01800-Mongolian.el b/lisp/utf-2000/u01800-Mongolian.el
new file mode 100644 (file)
index 0000000..3865dd6
--- /dev/null
@@ -0,0 +1,1115 @@
+(define-char
+  '((name              . "MONGOLIAN BIRGA")
+    (ucs               . #x1800)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN ELLIPSIS")
+    (ucs               . #x1801)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN COMMA")
+    (ucs               . #x1802)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN FULL STOP")
+    (ucs               . #x1803)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN COLON")
+    (ucs               . #x1804)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN FOUR DOTS")
+    (ucs               . #x1805)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN TODO SOFT HYPHEN")
+    (ucs               . #x1806)
+    (general-category  punctuation dash) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN SIBE SYLLABLE BOUNDARY MARKER")
+    (ucs               . #x1807)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN MANCHU COMMA")
+    (ucs               . #x1808)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN MANCHU FULL STOP")
+    (ucs               . #x1809)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN NIRUGU")
+    (ucs               . #x180A)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN FREE VARIATION SELECTOR ONE")
+    (ucs               . #x180B)
+    (general-category  other format) ; Normative Category
+    (bidi-category     . "BN")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN FREE VARIATION SELECTOR TWO")
+    (ucs               . #x180C)
+    (general-category  other format) ; Normative Category
+    (bidi-category     . "BN")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN FREE VARIATION SELECTOR THREE")
+    (ucs               . #x180D)
+    (general-category  other format) ; Normative Category
+    (bidi-category     . "BN")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN VOWEL SEPARATOR")
+    (ucs               . #x180E)
+    (general-category  other format) ; Normative Category
+    (bidi-category     . "BN")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN DIGIT ZERO")
+    (ucs               . #x1810)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 0)
+    (digit-value       . 0)
+    (numeric-value     . 0)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN DIGIT ONE")
+    (ucs               . #x1811)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 1)
+    (digit-value       . 1)
+    (numeric-value     . 1)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN DIGIT TWO")
+    (ucs               . #x1812)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 2)
+    (digit-value       . 2)
+    (numeric-value     . 2)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN DIGIT THREE")
+    (ucs               . #x1813)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 3)
+    (digit-value       . 3)
+    (numeric-value     . 3)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN DIGIT FOUR")
+    (ucs               . #x1814)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 4)
+    (digit-value       . 4)
+    (numeric-value     . 4)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN DIGIT FIVE")
+    (ucs               . #x1815)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 5)
+    (digit-value       . 5)
+    (numeric-value     . 5)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN DIGIT SIX")
+    (ucs               . #x1816)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 6)
+    (digit-value       . 6)
+    (numeric-value     . 6)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN DIGIT SEVEN")
+    (ucs               . #x1817)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 7)
+    (digit-value       . 7)
+    (numeric-value     . 7)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN DIGIT EIGHT")
+    (ucs               . #x1818)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 8)
+    (digit-value       . 8)
+    (numeric-value     . 8)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN DIGIT NINE")
+    (ucs               . #x1819)
+    (general-category  number decimal-digit) ; Normative Category
+    (bidi-category     . "L")
+    (decimal-digit-value . 9)
+    (digit-value       . 9)
+    (numeric-value     . 9)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER A")
+    (ucs               . #x1820)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER E")
+    (ucs               . #x1821)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER I")
+    (ucs               . #x1822)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER O")
+    (ucs               . #x1823)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER U")
+    (ucs               . #x1824)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER OE")
+    (ucs               . #x1825)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER UE")
+    (ucs               . #x1826)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER EE")
+    (ucs               . #x1827)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER NA")
+    (ucs               . #x1828)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ANG")
+    (ucs               . #x1829)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER BA")
+    (ucs               . #x182A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER PA")
+    (ucs               . #x182B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER QA")
+    (ucs               . #x182C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER GA")
+    (ucs               . #x182D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER MA")
+    (ucs               . #x182E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER LA")
+    (ucs               . #x182F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SA")
+    (ucs               . #x1830)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SHA")
+    (ucs               . #x1831)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TA")
+    (ucs               . #x1832)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER DA")
+    (ucs               . #x1833)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER CHA")
+    (ucs               . #x1834)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER JA")
+    (ucs               . #x1835)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER YA")
+    (ucs               . #x1836)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER RA")
+    (ucs               . #x1837)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER WA")
+    (ucs               . #x1838)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER FA")
+    (ucs               . #x1839)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER KA")
+    (ucs               . #x183A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER KHA")
+    (ucs               . #x183B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TSA")
+    (ucs               . #x183C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ZA")
+    (ucs               . #x183D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER HAA")
+    (ucs               . #x183E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ZRA")
+    (ucs               . #x183F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER LHA")
+    (ucs               . #x1840)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ZHI")
+    (ucs               . #x1841)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER CHI")
+    (ucs               . #x1842)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO LONG VOWEL SIGN")
+    (ucs               . #x1843)
+    (general-category  letter modifier) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO E")
+    (ucs               . #x1844)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO I")
+    (ucs               . #x1845)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO O")
+    (ucs               . #x1846)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO U")
+    (ucs               . #x1847)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO OE")
+    (ucs               . #x1848)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO UE")
+    (ucs               . #x1849)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO ANG")
+    (ucs               . #x184A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO BA")
+    (ucs               . #x184B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO PA")
+    (ucs               . #x184C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO QA")
+    (ucs               . #x184D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO GA")
+    (ucs               . #x184E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO MA")
+    (ucs               . #x184F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO TA")
+    (ucs               . #x1850)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO DA")
+    (ucs               . #x1851)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO CHA")
+    (ucs               . #x1852)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO JA")
+    (ucs               . #x1853)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO TSA")
+    (ucs               . #x1854)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO YA")
+    (ucs               . #x1855)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO WA")
+    (ucs               . #x1856)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO KA")
+    (ucs               . #x1857)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO GAA")
+    (ucs               . #x1858)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO HAA")
+    (ucs               . #x1859)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO JIA")
+    (ucs               . #x185A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO NIA")
+    (ucs               . #x185B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO DZA")
+    (ucs               . #x185C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SIBE E")
+    (ucs               . #x185D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SIBE I")
+    (ucs               . #x185E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SIBE IY")
+    (ucs               . #x185F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SIBE UE")
+    (ucs               . #x1860)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SIBE U")
+    (ucs               . #x1861)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SIBE ANG")
+    (ucs               . #x1862)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SIBE KA")
+    (ucs               . #x1863)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SIBE GA")
+    (ucs               . #x1864)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SIBE HA")
+    (ucs               . #x1865)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SIBE PA")
+    (ucs               . #x1866)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SIBE SHA")
+    (ucs               . #x1867)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SIBE TA")
+    (ucs               . #x1868)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SIBE DA")
+    (ucs               . #x1869)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SIBE JA")
+    (ucs               . #x186A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SIBE FA")
+    (ucs               . #x186B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SIBE GAA")
+    (ucs               . #x186C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SIBE HAA")
+    (ucs               . #x186D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SIBE TSA")
+    (ucs               . #x186E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SIBE ZA")
+    (ucs               . #x186F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SIBE RAA")
+    (ucs               . #x1870)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SIBE CHA")
+    (ucs               . #x1871)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER SIBE ZHA")
+    (ucs               . #x1872)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER MANCHU I")
+    (ucs               . #x1873)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER MANCHU KA")
+    (ucs               . #x1874)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER MANCHU RA")
+    (ucs               . #x1875)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER MANCHU FA")
+    (ucs               . #x1876)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER MANCHU ZHA")
+    (ucs               . #x1877)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI ANUSVARA ONE")
+    (ucs               . #x1880)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI VISARGA ONE")
+    (ucs               . #x1881)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI DAMARU")
+    (ucs               . #x1882)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI UBADAMA")
+    (ucs               . #x1883)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI INVERTED UBADAMA")
+    (ucs               . #x1884)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI BALUDA")
+    (ucs               . #x1885)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI THREE BALUDA")
+    (ucs               . #x1886)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI A")
+    (ucs               . #x1887)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI I")
+    (ucs               . #x1888)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI KA")
+    (ucs               . #x1889)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI NGA")
+    (ucs               . #x188A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI CA")
+    (ucs               . #x188B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI TTA")
+    (ucs               . #x188C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI TTHA")
+    (ucs               . #x188D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI DDA")
+    (ucs               . #x188E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI NNA")
+    (ucs               . #x188F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI TA")
+    (ucs               . #x1890)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI DA")
+    (ucs               . #x1891)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI PA")
+    (ucs               . #x1892)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI PHA")
+    (ucs               . #x1893)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI SSA")
+    (ucs               . #x1894)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI ZHA")
+    (ucs               . #x1895)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI ZA")
+    (ucs               . #x1896)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI AH")
+    (ucs               . #x1897)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO ALI GALI TA")
+    (ucs               . #x1898)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER TODO ALI GALI ZHA")
+    (ucs               . #x1899)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER MANCHU ALI GALI GHA")
+    (ucs               . #x189A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER MANCHU ALI GALI NGA")
+    (ucs               . #x189B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER MANCHU ALI GALI CA")
+    (ucs               . #x189C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER MANCHU ALI GALI JHA")
+    (ucs               . #x189D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER MANCHU ALI GALI TTA")
+    (ucs               . #x189E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER MANCHU ALI GALI DDHA")
+    (ucs               . #x189F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER MANCHU ALI GALI TA")
+    (ucs               . #x18A0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER MANCHU ALI GALI DHA")
+    (ucs               . #x18A1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER MANCHU ALI GALI SSA")
+    (ucs               . #x18A2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER MANCHU ALI GALI CYA")
+    (ucs               . #x18A3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER MANCHU ALI GALI ZHA")
+    (ucs               . #x18A4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER MANCHU ALI GALI ZA")
+    (ucs               . #x18A5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI HALF U")
+    (ucs               . #x18A6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI HALF YA")
+    (ucs               . #x18A7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER MANCHU ALI GALI BHA")
+    (ucs               . #x18A8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONGOLIAN LETTER ALI GALI DAGALGA")
+    (ucs               . #x18A9)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u01E00-Latin-Extended-Additional.el b/lisp/utf-2000/u01E00-Latin-Extended-Additional.el
new file mode 100644 (file)
index 0000000..475a87c
--- /dev/null
@@ -0,0 +1,2510 @@
+(define-char
+  '((name              . "LATIN CAPITAL LETTER A WITH RING BELOW")
+    (ucs               . #x1E00)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0041 #x0325)
+    (->lowercase       #x1E01)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER A WITH RING BELOW")
+    (ucs               . #x1E01)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0061 #x0325)
+    (->uppercase       #x1E00)
+    (->titlecase       #x1E00)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER B WITH DOT ABOVE")
+    (ucs               . #x1E02)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0042 #x0307)
+    (->lowercase       #x1E03)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER B WITH DOT ABOVE")
+    (ucs               . #x1E03)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0062 #x0307)
+    (->uppercase       #x1E02)
+    (->titlecase       #x1E02)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER B WITH DOT BELOW")
+    (ucs               . #x1E04)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0042 #x0323)
+    (->lowercase       #x1E05)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER B WITH DOT BELOW")
+    (ucs               . #x1E05)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0062 #x0323)
+    (->uppercase       #x1E04)
+    (->titlecase       #x1E04)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER B WITH LINE BELOW")
+    (ucs               . #x1E06)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0042 #x0331)
+    (->lowercase       #x1E07)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER B WITH LINE BELOW")
+    (ucs               . #x1E07)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0062 #x0331)
+    (->uppercase       #x1E06)
+    (->titlecase       #x1E06)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER C WITH CEDILLA AND ACUTE")
+    (ucs               . #x1E08)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00C7 #x0301)
+    (->lowercase       #x1E09)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER C WITH CEDILLA AND ACUTE")
+    (ucs               . #x1E09)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00E7 #x0301)
+    (->uppercase       #x1E08)
+    (->titlecase       #x1E08)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER D WITH DOT ABOVE")
+    (ucs               . #x1E0A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0044 #x0307)
+    (->lowercase       #x1E0B)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER D WITH DOT ABOVE")
+    (ucs               . #x1E0B)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0064 #x0307)
+    (->uppercase       #x1E0A)
+    (->titlecase       #x1E0A)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER D WITH DOT BELOW")
+    (ucs               . #x1E0C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0044 #x0323)
+    (->lowercase       #x1E0D)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER D WITH DOT BELOW")
+    (ucs               . #x1E0D)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0064 #x0323)
+    (->uppercase       #x1E0C)
+    (->titlecase       #x1E0C)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER D WITH LINE BELOW")
+    (ucs               . #x1E0E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0044 #x0331)
+    (->lowercase       #x1E0F)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER D WITH LINE BELOW")
+    (ucs               . #x1E0F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0064 #x0331)
+    (->uppercase       #x1E0E)
+    (->titlecase       #x1E0E)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER D WITH CEDILLA")
+    (ucs               . #x1E10)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0044 #x0327)
+    (->lowercase       #x1E11)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER D WITH CEDILLA")
+    (ucs               . #x1E11)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0064 #x0327)
+    (->uppercase       #x1E10)
+    (->titlecase       #x1E10)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER D WITH CIRCUMFLEX BELOW")
+    (ucs               . #x1E12)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0044 #x032D)
+    (->lowercase       #x1E13)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER D WITH CIRCUMFLEX BELOW")
+    (ucs               . #x1E13)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0064 #x032D)
+    (->uppercase       #x1E12)
+    (->titlecase       #x1E12)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER E WITH MACRON AND GRAVE")
+    (ucs               . #x1E14)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0112 #x0300)
+    (->lowercase       #x1E15)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER E WITH MACRON AND GRAVE")
+    (ucs               . #x1E15)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0113 #x0300)
+    (->uppercase       #x1E14)
+    (->titlecase       #x1E14)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER E WITH MACRON AND ACUTE")
+    (ucs               . #x1E16)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0112 #x0301)
+    (->lowercase       #x1E17)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER E WITH MACRON AND ACUTE")
+    (ucs               . #x1E17)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0113 #x0301)
+    (->uppercase       #x1E16)
+    (->titlecase       #x1E16)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER E WITH CIRCUMFLEX BELOW")
+    (ucs               . #x1E18)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0045 #x032D)
+    (->lowercase       #x1E19)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER E WITH CIRCUMFLEX BELOW")
+    (ucs               . #x1E19)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0065 #x032D)
+    (->uppercase       #x1E18)
+    (->titlecase       #x1E18)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER E WITH TILDE BELOW")
+    (ucs               . #x1E1A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0045 #x0330)
+    (->lowercase       #x1E1B)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER E WITH TILDE BELOW")
+    (ucs               . #x1E1B)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0065 #x0330)
+    (->uppercase       #x1E1A)
+    (->titlecase       #x1E1A)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER E WITH CEDILLA AND BREVE")
+    (ucs               . #x1E1C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0228 #x0306)
+    (->lowercase       #x1E1D)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER E WITH CEDILLA AND BREVE")
+    (ucs               . #x1E1D)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0229 #x0306)
+    (->uppercase       #x1E1C)
+    (->titlecase       #x1E1C)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER F WITH DOT ABOVE")
+    (ucs               . #x1E1E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0046 #x0307)
+    (->lowercase       #x1E1F)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER F WITH DOT ABOVE")
+    (ucs               . #x1E1F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0066 #x0307)
+    (->uppercase       #x1E1E)
+    (->titlecase       #x1E1E)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER G WITH MACRON")
+    (ucs               . #x1E20)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0047 #x0304)
+    (->lowercase       #x1E21)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER G WITH MACRON")
+    (ucs               . #x1E21)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0067 #x0304)
+    (->uppercase       #x1E20)
+    (->titlecase       #x1E20)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER H WITH DOT ABOVE")
+    (ucs               . #x1E22)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0048 #x0307)
+    (->lowercase       #x1E23)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER H WITH DOT ABOVE")
+    (ucs               . #x1E23)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0068 #x0307)
+    (->uppercase       #x1E22)
+    (->titlecase       #x1E22)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER H WITH DOT BELOW")
+    (ucs               . #x1E24)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0048 #x0323)
+    (->lowercase       #x1E25)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER H WITH DOT BELOW")
+    (ucs               . #x1E25)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0068 #x0323)
+    (->uppercase       #x1E24)
+    (->titlecase       #x1E24)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER H WITH DIAERESIS")
+    (ucs               . #x1E26)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0048 #x0308)
+    (->lowercase       #x1E27)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER H WITH DIAERESIS")
+    (ucs               . #x1E27)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0068 #x0308)
+    (->uppercase       #x1E26)
+    (->titlecase       #x1E26)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER H WITH CEDILLA")
+    (ucs               . #x1E28)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0048 #x0327)
+    (->lowercase       #x1E29)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER H WITH CEDILLA")
+    (ucs               . #x1E29)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0068 #x0327)
+    (->uppercase       #x1E28)
+    (->titlecase       #x1E28)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER H WITH BREVE BELOW")
+    (ucs               . #x1E2A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0048 #x032E)
+    (->lowercase       #x1E2B)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER H WITH BREVE BELOW")
+    (ucs               . #x1E2B)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0068 #x032E)
+    (->uppercase       #x1E2A)
+    (->titlecase       #x1E2A)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER I WITH TILDE BELOW")
+    (ucs               . #x1E2C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0049 #x0330)
+    (->lowercase       #x1E2D)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER I WITH TILDE BELOW")
+    (ucs               . #x1E2D)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0069 #x0330)
+    (->uppercase       #x1E2C)
+    (->titlecase       #x1E2C)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER I WITH DIAERESIS AND ACUTE")
+    (ucs               . #x1E2E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00CF #x0301)
+    (->lowercase       #x1E2F)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER I WITH DIAERESIS AND ACUTE")
+    (ucs               . #x1E2F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00EF #x0301)
+    (->uppercase       #x1E2E)
+    (->titlecase       #x1E2E)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER K WITH ACUTE")
+    (ucs               . #x1E30)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x004B #x0301)
+    (->lowercase       #x1E31)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER K WITH ACUTE")
+    (ucs               . #x1E31)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x006B #x0301)
+    (->uppercase       #x1E30)
+    (->titlecase       #x1E30)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER K WITH DOT BELOW")
+    (ucs               . #x1E32)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x004B #x0323)
+    (->lowercase       #x1E33)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER K WITH DOT BELOW")
+    (ucs               . #x1E33)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x006B #x0323)
+    (->uppercase       #x1E32)
+    (->titlecase       #x1E32)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER K WITH LINE BELOW")
+    (ucs               . #x1E34)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x004B #x0331)
+    (->lowercase       #x1E35)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER K WITH LINE BELOW")
+    (ucs               . #x1E35)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x006B #x0331)
+    (->uppercase       #x1E34)
+    (->titlecase       #x1E34)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER L WITH DOT BELOW")
+    (ucs               . #x1E36)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x004C #x0323)
+    (->lowercase       #x1E37)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER L WITH DOT BELOW")
+    (ucs               . #x1E37)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x006C #x0323)
+    (->uppercase       #x1E36)
+    (->titlecase       #x1E36)
+    ))
+(define-char
+  '((name . "LATIN CAPITAL LETTER L WITH DOT BELOW AND MACRON")
+    (ucs               . #x1E38)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x1E36 #x0304)
+    (->lowercase       #x1E39)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER L WITH DOT BELOW AND MACRON")
+    (ucs               . #x1E39)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x1E37 #x0304)
+    (->uppercase       #x1E38)
+    (->titlecase       #x1E38)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER L WITH LINE BELOW")
+    (ucs               . #x1E3A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x004C #x0331)
+    (->lowercase       #x1E3B)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER L WITH LINE BELOW")
+    (ucs               . #x1E3B)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x006C #x0331)
+    (->uppercase       #x1E3A)
+    (->titlecase       #x1E3A)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER L WITH CIRCUMFLEX BELOW")
+    (ucs               . #x1E3C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x004C #x032D)
+    (->lowercase       #x1E3D)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER L WITH CIRCUMFLEX BELOW")
+    (ucs               . #x1E3D)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x006C #x032D)
+    (->uppercase       #x1E3C)
+    (->titlecase       #x1E3C)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER M WITH ACUTE")
+    (ucs               . #x1E3E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x004D #x0301)
+    (->lowercase       #x1E3F)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER M WITH ACUTE")
+    (ucs               . #x1E3F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x006D #x0301)
+    (->uppercase       #x1E3E)
+    (->titlecase       #x1E3E)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER M WITH DOT ABOVE")
+    (ucs               . #x1E40)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x004D #x0307)
+    (->lowercase       #x1E41)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER M WITH DOT ABOVE")
+    (ucs               . #x1E41)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x006D #x0307)
+    (->uppercase       #x1E40)
+    (->titlecase       #x1E40)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER M WITH DOT BELOW")
+    (ucs               . #x1E42)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x004D #x0323)
+    (->lowercase       #x1E43)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER M WITH DOT BELOW")
+    (ucs               . #x1E43)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x006D #x0323)
+    (->uppercase       #x1E42)
+    (->titlecase       #x1E42)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER N WITH DOT ABOVE")
+    (ucs               . #x1E44)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x004E #x0307)
+    (->lowercase       #x1E45)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER N WITH DOT ABOVE")
+    (ucs               . #x1E45)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x006E #x0307)
+    (->uppercase       #x1E44)
+    (->titlecase       #x1E44)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER N WITH DOT BELOW")
+    (ucs               . #x1E46)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x004E #x0323)
+    (->lowercase       #x1E47)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER N WITH DOT BELOW")
+    (ucs               . #x1E47)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x006E #x0323)
+    (->uppercase       #x1E46)
+    (->titlecase       #x1E46)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER N WITH LINE BELOW")
+    (ucs               . #x1E48)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x004E #x0331)
+    (->lowercase       #x1E49)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER N WITH LINE BELOW")
+    (ucs               . #x1E49)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x006E #x0331)
+    (->uppercase       #x1E48)
+    (->titlecase       #x1E48)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER N WITH CIRCUMFLEX BELOW")
+    (ucs               . #x1E4A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x004E #x032D)
+    (->lowercase       #x1E4B)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER N WITH CIRCUMFLEX BELOW")
+    (ucs               . #x1E4B)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x006E #x032D)
+    (->uppercase       #x1E4A)
+    (->titlecase       #x1E4A)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER O WITH TILDE AND ACUTE")
+    (ucs               . #x1E4C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00D5 #x0301)
+    (->lowercase       #x1E4D)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER O WITH TILDE AND ACUTE")
+    (ucs               . #x1E4D)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00F5 #x0301)
+    (->uppercase       #x1E4C)
+    (->titlecase       #x1E4C)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER O WITH TILDE AND DIAERESIS")
+    (ucs               . #x1E4E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00D5 #x0308)
+    (->lowercase       #x1E4F)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER O WITH TILDE AND DIAERESIS")
+    (ucs               . #x1E4F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00F5 #x0308)
+    (->uppercase       #x1E4E)
+    (->titlecase       #x1E4E)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER O WITH MACRON AND GRAVE")
+    (ucs               . #x1E50)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x014C #x0300)
+    (->lowercase       #x1E51)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER O WITH MACRON AND GRAVE")
+    (ucs               . #x1E51)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x014D #x0300)
+    (->uppercase       #x1E50)
+    (->titlecase       #x1E50)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER O WITH MACRON AND ACUTE")
+    (ucs               . #x1E52)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x014C #x0301)
+    (->lowercase       #x1E53)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER O WITH MACRON AND ACUTE")
+    (ucs               . #x1E53)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x014D #x0301)
+    (->uppercase       #x1E52)
+    (->titlecase       #x1E52)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER P WITH ACUTE")
+    (ucs               . #x1E54)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0050 #x0301)
+    (->lowercase       #x1E55)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER P WITH ACUTE")
+    (ucs               . #x1E55)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0070 #x0301)
+    (->uppercase       #x1E54)
+    (->titlecase       #x1E54)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER P WITH DOT ABOVE")
+    (ucs               . #x1E56)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0050 #x0307)
+    (->lowercase       #x1E57)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER P WITH DOT ABOVE")
+    (ucs               . #x1E57)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0070 #x0307)
+    (->uppercase       #x1E56)
+    (->titlecase       #x1E56)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER R WITH DOT ABOVE")
+    (ucs               . #x1E58)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0052 #x0307)
+    (->lowercase       #x1E59)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER R WITH DOT ABOVE")
+    (ucs               . #x1E59)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0072 #x0307)
+    (->uppercase       #x1E58)
+    (->titlecase       #x1E58)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER R WITH DOT BELOW")
+    (ucs               . #x1E5A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0052 #x0323)
+    (->lowercase       #x1E5B)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER R WITH DOT BELOW")
+    (ucs               . #x1E5B)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0072 #x0323)
+    (->uppercase       #x1E5A)
+    (->titlecase       #x1E5A)
+    ))
+(define-char
+  '((name . "LATIN CAPITAL LETTER R WITH DOT BELOW AND MACRON")
+    (ucs               . #x1E5C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x1E5A #x0304)
+    (->lowercase       #x1E5D)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER R WITH DOT BELOW AND MACRON")
+    (ucs               . #x1E5D)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x1E5B #x0304)
+    (->uppercase       #x1E5C)
+    (->titlecase       #x1E5C)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER R WITH LINE BELOW")
+    (ucs               . #x1E5E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0052 #x0331)
+    (->lowercase       #x1E5F)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER R WITH LINE BELOW")
+    (ucs               . #x1E5F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0072 #x0331)
+    (->uppercase       #x1E5E)
+    (->titlecase       #x1E5E)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER S WITH DOT ABOVE")
+    (ucs               . #x1E60)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0053 #x0307)
+    (->lowercase       #x1E61)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER S WITH DOT ABOVE")
+    (ucs               . #x1E61)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0073 #x0307)
+    (->uppercase       #x1E60)
+    (->titlecase       #x1E60)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER S WITH DOT BELOW")
+    (ucs               . #x1E62)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0053 #x0323)
+    (->lowercase       #x1E63)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER S WITH DOT BELOW")
+    (ucs               . #x1E63)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0073 #x0323)
+    (->uppercase       #x1E62)
+    (->titlecase       #x1E62)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER S WITH ACUTE AND DOT ABOVE")
+    (ucs               . #x1E64)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x015A #x0307)
+    (->lowercase       #x1E65)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER S WITH ACUTE AND DOT ABOVE")
+    (ucs               . #x1E65)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x015B #x0307)
+    (->uppercase       #x1E64)
+    (->titlecase       #x1E64)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER S WITH CARON AND DOT ABOVE")
+    (ucs               . #x1E66)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0160 #x0307)
+    (->lowercase       #x1E67)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER S WITH CARON AND DOT ABOVE")
+    (ucs               . #x1E67)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0161 #x0307)
+    (->uppercase       #x1E66)
+    (->titlecase       #x1E66)
+    ))
+(define-char
+  '((name . "LATIN CAPITAL LETTER S WITH DOT BELOW AND DOT ABOVE")
+    (ucs               . #x1E68)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x1E62 #x0307)
+    (->lowercase       #x1E69)
+    ))
+(define-char
+  '((name . "LATIN SMALL LETTER S WITH DOT BELOW AND DOT ABOVE")
+    (ucs               . #x1E69)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x1E63 #x0307)
+    (->uppercase       #x1E68)
+    (->titlecase       #x1E68)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER T WITH DOT ABOVE")
+    (ucs               . #x1E6A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0054 #x0307)
+    (->lowercase       #x1E6B)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER T WITH DOT ABOVE")
+    (ucs               . #x1E6B)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0074 #x0307)
+    (->uppercase       #x1E6A)
+    (->titlecase       #x1E6A)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER T WITH DOT BELOW")
+    (ucs               . #x1E6C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0054 #x0323)
+    (->lowercase       #x1E6D)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER T WITH DOT BELOW")
+    (ucs               . #x1E6D)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0074 #x0323)
+    (->uppercase       #x1E6C)
+    (->titlecase       #x1E6C)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER T WITH LINE BELOW")
+    (ucs               . #x1E6E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0054 #x0331)
+    (->lowercase       #x1E6F)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER T WITH LINE BELOW")
+    (ucs               . #x1E6F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0074 #x0331)
+    (->uppercase       #x1E6E)
+    (->titlecase       #x1E6E)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER T WITH CIRCUMFLEX BELOW")
+    (ucs               . #x1E70)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0054 #x032D)
+    (->lowercase       #x1E71)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER T WITH CIRCUMFLEX BELOW")
+    (ucs               . #x1E71)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0074 #x032D)
+    (->uppercase       #x1E70)
+    (->titlecase       #x1E70)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER U WITH DIAERESIS BELOW")
+    (ucs               . #x1E72)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0055 #x0324)
+    (->lowercase       #x1E73)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER U WITH DIAERESIS BELOW")
+    (ucs               . #x1E73)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0075 #x0324)
+    (->uppercase       #x1E72)
+    (->titlecase       #x1E72)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER U WITH TILDE BELOW")
+    (ucs               . #x1E74)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0055 #x0330)
+    (->lowercase       #x1E75)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER U WITH TILDE BELOW")
+    (ucs               . #x1E75)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0075 #x0330)
+    (->uppercase       #x1E74)
+    (->titlecase       #x1E74)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER U WITH CIRCUMFLEX BELOW")
+    (ucs               . #x1E76)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0055 #x032D)
+    (->lowercase       #x1E77)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER U WITH CIRCUMFLEX BELOW")
+    (ucs               . #x1E77)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0075 #x032D)
+    (->uppercase       #x1E76)
+    (->titlecase       #x1E76)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER U WITH TILDE AND ACUTE")
+    (ucs               . #x1E78)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0168 #x0301)
+    (->lowercase       #x1E79)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER U WITH TILDE AND ACUTE")
+    (ucs               . #x1E79)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0169 #x0301)
+    (->uppercase       #x1E78)
+    (->titlecase       #x1E78)
+    ))
+(define-char
+  '((name . "LATIN CAPITAL LETTER U WITH MACRON AND DIAERESIS")
+    (ucs               . #x1E7A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x016A #x0308)
+    (->lowercase       #x1E7B)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER U WITH MACRON AND DIAERESIS")
+    (ucs               . #x1E7B)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x016B #x0308)
+    (->uppercase       #x1E7A)
+    (->titlecase       #x1E7A)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER V WITH TILDE")
+    (ucs               . #x1E7C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0056 #x0303)
+    (->lowercase       #x1E7D)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER V WITH TILDE")
+    (ucs               . #x1E7D)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0076 #x0303)
+    (->uppercase       #x1E7C)
+    (->titlecase       #x1E7C)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER V WITH DOT BELOW")
+    (ucs               . #x1E7E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0056 #x0323)
+    (->lowercase       #x1E7F)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER V WITH DOT BELOW")
+    (ucs               . #x1E7F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0076 #x0323)
+    (->uppercase       #x1E7E)
+    (->titlecase       #x1E7E)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER W WITH GRAVE")
+    (ucs               . #x1E80)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0057 #x0300)
+    (->lowercase       #x1E81)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER W WITH GRAVE")
+    (ucs               . #x1E81)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0077 #x0300)
+    (->uppercase       #x1E80)
+    (->titlecase       #x1E80)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER W WITH ACUTE")
+    (ucs               . #x1E82)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0057 #x0301)
+    (->lowercase       #x1E83)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER W WITH ACUTE")
+    (ucs               . #x1E83)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0077 #x0301)
+    (->uppercase       #x1E82)
+    (->titlecase       #x1E82)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER W WITH DIAERESIS")
+    (ucs               . #x1E84)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0057 #x0308)
+    (->lowercase       #x1E85)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER W WITH DIAERESIS")
+    (ucs               . #x1E85)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0077 #x0308)
+    (->uppercase       #x1E84)
+    (->titlecase       #x1E84)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER W WITH DOT ABOVE")
+    (ucs               . #x1E86)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0057 #x0307)
+    (->lowercase       #x1E87)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER W WITH DOT ABOVE")
+    (ucs               . #x1E87)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0077 #x0307)
+    (->uppercase       #x1E86)
+    (->titlecase       #x1E86)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER W WITH DOT BELOW")
+    (ucs               . #x1E88)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0057 #x0323)
+    (->lowercase       #x1E89)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER W WITH DOT BELOW")
+    (ucs               . #x1E89)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0077 #x0323)
+    (->uppercase       #x1E88)
+    (->titlecase       #x1E88)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER X WITH DOT ABOVE")
+    (ucs               . #x1E8A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0058 #x0307)
+    (->lowercase       #x1E8B)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER X WITH DOT ABOVE")
+    (ucs               . #x1E8B)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0078 #x0307)
+    (->uppercase       #x1E8A)
+    (->titlecase       #x1E8A)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER X WITH DIAERESIS")
+    (ucs               . #x1E8C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0058 #x0308)
+    (->lowercase       #x1E8D)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER X WITH DIAERESIS")
+    (ucs               . #x1E8D)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0078 #x0308)
+    (->uppercase       #x1E8C)
+    (->titlecase       #x1E8C)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER Y WITH DOT ABOVE")
+    (ucs               . #x1E8E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0059 #x0307)
+    (->lowercase       #x1E8F)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER Y WITH DOT ABOVE")
+    (ucs               . #x1E8F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0079 #x0307)
+    (->uppercase       #x1E8E)
+    (->titlecase       #x1E8E)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER Z WITH CIRCUMFLEX")
+    (ucs               . #x1E90)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x005A #x0302)
+    (->lowercase       #x1E91)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER Z WITH CIRCUMFLEX")
+    (ucs               . #x1E91)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x007A #x0302)
+    (->uppercase       #x1E90)
+    (->titlecase       #x1E90)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER Z WITH DOT BELOW")
+    (ucs               . #x1E92)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x005A #x0323)
+    (->lowercase       #x1E93)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER Z WITH DOT BELOW")
+    (ucs               . #x1E93)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x007A #x0323)
+    (->uppercase       #x1E92)
+    (->titlecase       #x1E92)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER Z WITH LINE BELOW")
+    (ucs               . #x1E94)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x005A #x0331)
+    (->lowercase       #x1E95)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER Z WITH LINE BELOW")
+    (ucs               . #x1E95)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x007A #x0331)
+    (->uppercase       #x1E94)
+    (->titlecase       #x1E94)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER H WITH LINE BELOW")
+    (ucs               . #x1E96)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0068 #x0331)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER T WITH DIAERESIS")
+    (ucs               . #x1E97)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0074 #x0308)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER W WITH RING ABOVE")
+    (ucs               . #x1E98)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0077 #x030A)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER Y WITH RING ABOVE")
+    (ucs               . #x1E99)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0079 #x030A)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER A WITH RIGHT HALF RING")
+    (ucs               . #x1E9A)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0061 #x02BE)
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER LONG S WITH DOT ABOVE")
+    (ucs               . #x1E9B)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x017F #x0307)
+    (->uppercase       #x1E60)
+    (->titlecase       #x1E60)
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER A WITH DOT BELOW")
+    (ucs               . #x1EA0)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0041 #x0323)
+    (->lowercase       #x1EA1)
+    (latin-viscii-upper #xD5)  ; \e-2Õ\e-A
+    (latin-viscii      #x80)   ; \e-2Õ\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER A WITH DOT BELOW")
+    (ucs               . #x1EA1)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0061 #x0323)
+    (->uppercase       #x1EA0)
+    (->titlecase       #x1EA0)
+    (latin-viscii-lower #xD5)  ; \e-1Õ\e-A
+    (latin-viscii      #xD5)   ; \e-1Õ\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER A WITH HOOK ABOVE")
+    (ucs               . #x1EA2)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0041 #x0309)
+    (->lowercase       #x1EA3)
+    (latin-viscii-upper #xE4)  ; \e-2ä\e-A
+    (latin-viscii      #xC4)   ; \e-2ä\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER A WITH HOOK ABOVE")
+    (ucs               . #x1EA3)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0061 #x0309)
+    (->uppercase       #x1EA2)
+    (->titlecase       #x1EA2)
+    (latin-viscii-lower #xE4)  ; \e-1ä\e-A
+    (latin-viscii      #xE4)   ; \e-1ä\e-A
+    ))
+(define-char
+  '((name . "LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND ACUTE")
+    (ucs               . #x1EA4)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00C2 #x0301)
+    (->lowercase       #x1EA5)
+    (latin-viscii-upper #xA4)  ; \e-2¤\e-A
+    (latin-viscii      #x84)   ; \e-2¤\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER A WITH CIRCUMFLEX AND ACUTE")
+    (ucs               . #x1EA5)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00E2 #x0301)
+    (->uppercase       #x1EA4)
+    (->titlecase       #x1EA4)
+    (latin-viscii-lower #xA4)  ; \e-1¤\e-A
+    (latin-viscii      #xA4)   ; \e-1¤\e-A
+    ))
+(define-char
+  '((name . "LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND GRAVE")
+    (ucs               . #x1EA6)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00C2 #x0300)
+    (->lowercase       #x1EA7)
+    (latin-viscii-upper #xA5)  ; \e-2¥\e-A
+    (latin-viscii      #x85)   ; \e-2¥\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER A WITH CIRCUMFLEX AND GRAVE")
+    (ucs               . #x1EA7)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00E2 #x0300)
+    (->uppercase       #x1EA6)
+    (->titlecase       #x1EA6)
+    (latin-viscii-lower #xA5)  ; \e-1¥\e-A
+    (latin-viscii      #xA5)   ; \e-1¥\e-A
+    ))
+(define-char
+  '((name . "LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE")
+    (ucs               . #x1EA8)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00C2 #x0309)
+    (->lowercase       #x1EA9)
+    (latin-viscii-upper #xA6)  ; \e-2¦\e-A
+    (latin-viscii      #x86)   ; \e-2¦\e-A
+    ))
+(define-char
+  '((name . "LATIN SMALL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE")
+    (ucs               . #x1EA9)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00E2 #x0309)
+    (->uppercase       #x1EA8)
+    (->titlecase       #x1EA8)
+    (latin-viscii-lower #xA6)  ; \e-1¦\e-A
+    (latin-viscii      #xA6)   ; \e-1¦\e-A
+    ))
+(define-char
+  '((name . "LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND TILDE")
+    (ucs               . #x1EAA)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00C2 #x0303)
+    (->lowercase       #x1EAB)
+    (latin-viscii-upper #xE7)  ; \e-2ç\e-A
+    (latin-viscii      #x06)   ; \e-2ç\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE")
+    (ucs               . #x1EAB)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00E2 #x0303)
+    (->uppercase       #x1EAA)
+    (->titlecase       #x1EAA)
+    (latin-viscii-lower #xE7)  ; \e-1ç\e-A
+    (latin-viscii      #xE7)   ; \e-1ç\e-A
+    ))
+(define-char
+  '((name . "LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND DOT BELOW")
+    (ucs               . #x1EAC)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x1EA0 #x0302)
+    (->lowercase       #x1EAD)
+    (latin-viscii-upper #xA7)  ; \e-2§\e-A
+    (latin-viscii      #x87)   ; \e-2§\e-A
+    ))
+(define-char
+  '((name . "LATIN SMALL LETTER A WITH CIRCUMFLEX AND DOT BELOW")
+    (ucs               . #x1EAD)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x1EA1 #x0302)
+    (->uppercase       #x1EAC)
+    (->titlecase       #x1EAC)
+    (latin-viscii-lower #xA7)  ; \e-1§\e-A
+    (latin-viscii      #xA7)   ; \e-1§\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER A WITH BREVE AND ACUTE")
+    (ucs               . #x1EAE)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0102 #x0301)
+    (->lowercase       #x1EAF)
+    (latin-viscii-upper #xA1)  ; \e-2¡\e-A
+    (latin-viscii      #x81)   ; \e-2¡\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER A WITH BREVE AND ACUTE")
+    (ucs               . #x1EAF)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0103 #x0301)
+    (->uppercase       #x1EAE)
+    (->titlecase       #x1EAE)
+    (latin-viscii-lower #xA1)  ; \e-1¡\e-A
+    (latin-viscii      #xA1)   ; \e-1¡\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER A WITH BREVE AND GRAVE")
+    (ucs               . #x1EB0)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0102 #x0300)
+    (->lowercase       #x1EB1)
+    (latin-viscii-upper #xA2)  ; \e-2¢\e-A
+    (latin-viscii      #x82)   ; \e-2¢\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER A WITH BREVE AND GRAVE")
+    (ucs               . #x1EB1)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0103 #x0300)
+    (->uppercase       #x1EB0)
+    (->titlecase       #x1EB0)
+    (latin-viscii-lower #xA2)  ; \e-1¢\e-A
+    (latin-viscii      #xA2)   ; \e-1¢\e-A
+    ))
+(define-char
+  '((name . "LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE")
+    (ucs               . #x1EB2)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0102 #x0309)
+    (->lowercase       #x1EB3)
+    (latin-viscii-upper #xC6)  ; \e-2Æ\e-A
+    (latin-viscii      #x02)   ; \e-2Æ\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE")
+    (ucs               . #x1EB3)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0103 #x0309)
+    (->uppercase       #x1EB2)
+    (->titlecase       #x1EB2)
+    (latin-viscii-lower #xC6)  ; \e-1Æ\e-A
+    (latin-viscii      #xC6)   ; \e-1Æ\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER A WITH BREVE AND TILDE")
+    (ucs               . #x1EB4)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0102 #x0303)
+    (->lowercase       #x1EB5)
+    (latin-viscii-upper #xC7)  ; \e-2Ç\e-A
+    (latin-viscii      #x05)   ; \e-2Ç\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER A WITH BREVE AND TILDE")
+    (ucs               . #x1EB5)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0103 #x0303)
+    (->uppercase       #x1EB4)
+    (->titlecase       #x1EB4)
+    (latin-viscii-lower #xC7)  ; \e-1Ç\e-A
+    (latin-viscii      #xC7)   ; \e-1Ç\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW")
+    (ucs               . #x1EB6)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x1EA0 #x0306)
+    (->lowercase       #x1EB7)
+    (latin-viscii-upper #xA3)  ; \e-2£\e-A
+    (latin-viscii      #x83)   ; \e-2£\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER A WITH BREVE AND DOT BELOW")
+    (ucs               . #x1EB7)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x1EA1 #x0306)
+    (->uppercase       #x1EB6)
+    (->titlecase       #x1EB6)
+    (latin-viscii-lower #xA3)  ; \e-1£\e-A
+    (latin-viscii      #xA3)   ; \e-1£\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER E WITH DOT BELOW")
+    (ucs               . #x1EB8)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0045 #x0323)
+    (->lowercase       #x1EB9)
+    (latin-viscii-upper #xA9)  ; \e-2©\e-A
+    (latin-viscii      #x89)   ; \e-2©\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER E WITH DOT BELOW")
+    (ucs               . #x1EB9)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0065 #x0323)
+    (->uppercase       #x1EB8)
+    (->titlecase       #x1EB8)
+    (latin-viscii-lower #xA9)  ; \e-1©\e-A
+    (latin-viscii      #xA9)   ; \e-1©\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER E WITH HOOK ABOVE")
+    (ucs               . #x1EBA)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0045 #x0309)
+    (->lowercase       #x1EBB)
+    (latin-viscii-upper #xEB)  ; \e-2ë\e-A
+    (latin-viscii      #xCB)   ; \e-2ë\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER E WITH HOOK ABOVE")
+    (ucs               . #x1EBB)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0065 #x0309)
+    (->uppercase       #x1EBA)
+    (->titlecase       #x1EBA)
+    (latin-viscii-lower #xEB)  ; \e-1ë\e-A
+    (latin-viscii      #xEB)   ; \e-1ë\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER E WITH TILDE")
+    (ucs               . #x1EBC)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0045 #x0303)
+    (->lowercase       #x1EBD)
+    (latin-viscii-upper #xA8)  ; \e-2¨\e-A
+    (latin-viscii      #x88)   ; \e-2¨\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER E WITH TILDE")
+    (ucs               . #x1EBD)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0065 #x0303)
+    (->uppercase       #x1EBC)
+    (->titlecase       #x1EBC)
+    (latin-viscii-lower #xA8)  ; \e-1¨\e-A
+    (latin-viscii      #xA8)   ; \e-1¨\e-A
+    ))
+(define-char
+  '((name . "LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND ACUTE")
+    (ucs               . #x1EBE)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00CA #x0301)
+    (->lowercase       #x1EBF)
+    (latin-viscii-upper #xAA)  ; \e-2ª\e-A
+    (latin-viscii      #x8A)   ; \e-2ª\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE")
+    (ucs               . #x1EBF)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00EA #x0301)
+    (->uppercase       #x1EBE)
+    (->titlecase       #x1EBE)
+    (latin-viscii-lower #xAA)  ; \e-1ª\e-A
+    (latin-viscii      #xAA)   ; \e-1ª\e-A
+    ))
+(define-char
+  '((name . "LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND GRAVE")
+    (ucs               . #x1EC0)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00CA #x0300)
+    (->lowercase       #x1EC1)
+    (latin-viscii-upper #xAB)  ; \e-2«\e-A
+    (latin-viscii      #x8B)   ; \e-2«\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE")
+    (ucs               . #x1EC1)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00EA #x0300)
+    (->uppercase       #x1EC0)
+    (->titlecase       #x1EC0)
+    (latin-viscii-lower #xAB)  ; \e-1«\e-A
+    (latin-viscii      #xAB)   ; \e-1«\e-A
+    ))
+(define-char
+  '((name . "LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE")
+    (ucs               . #x1EC2)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00CA #x0309)
+    (->lowercase       #x1EC3)
+    (latin-viscii-upper #xAC)  ; \e-2¬\e-A
+    (latin-viscii      #x8C)   ; \e-2¬\e-A
+    ))
+(define-char
+  '((name . "LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE")
+    (ucs               . #x1EC3)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00EA #x0309)
+    (->uppercase       #x1EC2)
+    (->titlecase       #x1EC2)
+    (latin-viscii-lower #xAC)  ; \e-1¬\e-A
+    (latin-viscii      #xAC)   ; \e-1¬\e-A
+    ))
+(define-char
+  '((name . "LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND TILDE")
+    (ucs               . #x1EC4)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00CA #x0303)
+    (->lowercase       #x1EC5)
+    (latin-viscii-upper #xAD)  ; \e-2­\e-A
+    (latin-viscii      #x8D)   ; \e-2­\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE")
+    (ucs               . #x1EC5)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00EA #x0303)
+    (->uppercase       #x1EC4)
+    (->titlecase       #x1EC4)
+    (latin-viscii-lower #xAD)  ; \e-1­\e-A
+    (latin-viscii      #xAD)   ; \e-1­\e-A
+    ))
+(define-char
+  '((name . "LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND DOT BELOW")
+    (ucs               . #x1EC6)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x1EB8 #x0302)
+    (->lowercase       #x1EC7)
+    (latin-viscii-upper #xAE)  ; \e-2®\e-A
+    (latin-viscii      #x8E)   ; \e-2®\e-A
+    ))
+(define-char
+  '((name . "LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW")
+    (ucs               . #x1EC7)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x1EB9 #x0302)
+    (->uppercase       #x1EC6)
+    (->titlecase       #x1EC6)
+    (latin-viscii-lower #xAE)  ; \e-1®\e-A
+    (latin-viscii      #xAE)   ; \e-1®\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER I WITH HOOK ABOVE")
+    (ucs               . #x1EC8)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0049 #x0309)
+    (->lowercase       #x1EC9)
+    (latin-viscii-upper #xEF)  ; \e-2ï\e-A
+    (latin-viscii      #x9B)   ; \e-2ï\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER I WITH HOOK ABOVE")
+    (ucs               . #x1EC9)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0069 #x0309)
+    (->uppercase       #x1EC8)
+    (->titlecase       #x1EC8)
+    (latin-viscii-lower #xEF)  ; \e-1ï\e-A
+    (latin-viscii      #xEF)   ; \e-1ï\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER I WITH DOT BELOW")
+    (ucs               . #x1ECA)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0049 #x0323)
+    (->lowercase       #x1ECB)
+    (latin-viscii-upper #xB8)  ; \e-2¸\e-A
+    (latin-viscii      #x98)   ; \e-2¸\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER I WITH DOT BELOW")
+    (ucs               . #x1ECB)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0069 #x0323)
+    (->uppercase       #x1ECA)
+    (->titlecase       #x1ECA)
+    (latin-viscii-lower #xB8)  ; \e-1¸\e-A
+    (latin-viscii      #xB8)   ; \e-1¸\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER O WITH DOT BELOW")
+    (ucs               . #x1ECC)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x004F #x0323)
+    (->lowercase       #x1ECD)
+    (latin-viscii-upper #xF7)  ; \e-2÷\e-A
+    (latin-viscii      #x9A)   ; \e-2÷\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER O WITH DOT BELOW")
+    (ucs               . #x1ECD)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x006F #x0323)
+    (->uppercase       #x1ECC)
+    (->titlecase       #x1ECC)
+    (latin-viscii-lower #xF7)  ; \e-1÷\e-A
+    (latin-viscii      #xF7)   ; \e-1÷\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER O WITH HOOK ABOVE")
+    (ucs               . #x1ECE)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x004F #x0309)
+    (->lowercase       #x1ECF)
+    (latin-viscii-upper #xF6)  ; \e-2ö\e-A
+    (latin-viscii      #x99)   ; \e-2ö\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER O WITH HOOK ABOVE")
+    (ucs               . #x1ECF)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x006F #x0309)
+    (->uppercase       #x1ECE)
+    (->titlecase       #x1ECE)
+    (latin-viscii-lower #xF6)  ; \e-1ö\e-A
+    (latin-viscii      #xF6)   ; \e-1ö\e-A
+    ))
+(define-char
+  '((name . "LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND ACUTE")
+    (ucs               . #x1ED0)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00D4 #x0301)
+    (->lowercase       #x1ED1)
+    (latin-viscii-upper #xAF)  ; \e-2¯\e-A
+    (latin-viscii      #x8F)   ; \e-2¯\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER O WITH CIRCUMFLEX AND ACUTE")
+    (ucs               . #x1ED1)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00F4 #x0301)
+    (->uppercase       #x1ED0)
+    (->titlecase       #x1ED0)
+    (latin-viscii-lower #xAF)  ; \e-1¯\e-A
+    (latin-viscii      #xAF)   ; \e-1¯\e-A
+    ))
+(define-char
+  '((name . "LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND GRAVE")
+    (ucs               . #x1ED2)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00D4 #x0300)
+    (->lowercase       #x1ED3)
+    (latin-viscii-upper #xB0)  ; \e-2°\e-A
+    (latin-viscii      #x90)   ; \e-2°\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER O WITH CIRCUMFLEX AND GRAVE")
+    (ucs               . #x1ED3)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00F4 #x0300)
+    (->uppercase       #x1ED2)
+    (->titlecase       #x1ED2)
+    (latin-viscii-lower #xB0)  ; \e-1°\e-A
+    (latin-viscii      #xB0)   ; \e-1°\e-A
+    ))
+(define-char
+  '((name . "LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE")
+    (ucs               . #x1ED4)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00D4 #x0309)
+    (->lowercase       #x1ED5)
+    (latin-viscii-upper #xB1)  ; \e-2±\e-A
+    (latin-viscii      #x91)   ; \e-2±\e-A
+    ))
+(define-char
+  '((name . "LATIN SMALL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE")
+    (ucs               . #x1ED5)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00F4 #x0309)
+    (->uppercase       #x1ED4)
+    (->titlecase       #x1ED4)
+    (latin-viscii-lower #xB1)  ; \e-1±\e-A
+    (latin-viscii      #xB1)   ; \e-1±\e-A
+    ))
+(define-char
+  '((name . "LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND TILDE")
+    (ucs               . #x1ED6)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00D4 #x0303)
+    (->lowercase       #x1ED7)
+    (latin-viscii-upper #xB2)  ; \e-2²\e-A
+    (latin-viscii      #x92)   ; \e-2²\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER O WITH CIRCUMFLEX AND TILDE")
+    (ucs               . #x1ED7)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00F4 #x0303)
+    (->uppercase       #x1ED6)
+    (->titlecase       #x1ED6)
+    (latin-viscii-lower #xB2)  ; \e-1²\e-A
+    (latin-viscii      #xB2)   ; \e-1²\e-A
+    ))
+(define-char
+  '((name . "LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND DOT BELOW")
+    (ucs               . #x1ED8)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x1ECC #x0302)
+    (->lowercase       #x1ED9)
+    (latin-viscii-upper #xB5)  ; \e-2µ\e-A
+    (latin-viscii      #x93)   ; \e-2µ\e-A
+    ))
+(define-char
+  '((name . "LATIN SMALL LETTER O WITH CIRCUMFLEX AND DOT BELOW")
+    (ucs               . #x1ED9)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x1ECD #x0302)
+    (->uppercase       #x1ED8)
+    (->titlecase       #x1ED8)
+    (latin-viscii-lower #xB5)  ; \e-1µ\e-A
+    (latin-viscii      #xB5)   ; \e-1µ\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER O WITH HORN AND ACUTE")
+    (ucs               . #x1EDA)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x01A0 #x0301)
+    (->lowercase       #x1EDB)
+    (latin-viscii-upper #xBE)  ; \e-2¾\e-A
+    (latin-viscii      #x95)   ; \e-2¾\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER O WITH HORN AND ACUTE")
+    (ucs               . #x1EDB)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x01A1 #x0301)
+    (->uppercase       #x1EDA)
+    (->titlecase       #x1EDA)
+    (latin-viscii-lower #xBE)  ; \e-1¾\e-A
+    (latin-viscii      #xBE)   ; \e-1¾\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER O WITH HORN AND GRAVE")
+    (ucs               . #x1EDC)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x01A0 #x0300)
+    (->lowercase       #x1EDD)
+    (latin-viscii-upper #xB6)  ; \e-2¶\e-A
+    (latin-viscii      #x96)   ; \e-2¶\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER O WITH HORN AND GRAVE")
+    (ucs               . #x1EDD)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x01A1 #x0300)
+    (->uppercase       #x1EDC)
+    (->titlecase       #x1EDC)
+    (latin-viscii-lower #xB6)  ; \e-1¶\e-A
+    (latin-viscii      #xB6)   ; \e-1¶\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER O WITH HORN AND HOOK ABOVE")
+    (ucs               . #x1EDE)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x01A0 #x0309)
+    (->lowercase       #x1EDF)
+    (latin-viscii-upper #xB7)  ; \e-2·\e-A
+    (latin-viscii      #x97)   ; \e-2·\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER O WITH HORN AND HOOK ABOVE")
+    (ucs               . #x1EDF)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x01A1 #x0309)
+    (->uppercase       #x1EDE)
+    (->titlecase       #x1EDE)
+    (latin-viscii-lower #xB7)  ; \e-1·\e-A
+    (latin-viscii      #xB7)   ; \e-1·\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER O WITH HORN AND TILDE")
+    (ucs               . #x1EE0)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x01A0 #x0303)
+    (->lowercase       #x1EE1)
+    (latin-viscii-upper #xDE)  ; \e-2Þ\e-A
+    (latin-viscii      #xB3)   ; \e-2Þ\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER O WITH HORN AND TILDE")
+    (ucs               . #x1EE1)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x01A1 #x0303)
+    (->uppercase       #x1EE0)
+    (->titlecase       #x1EE0)
+    (latin-viscii-lower #xDE)  ; \e-1Þ\e-A
+    (latin-viscii      #xDE)   ; \e-1Þ\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER O WITH HORN AND DOT BELOW")
+    (ucs               . #x1EE2)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x01A0 #x0323)
+    (->lowercase       #x1EE3)
+    (latin-viscii-upper #xFE)  ; \e-2þ\e-A
+    (latin-viscii      #x94)   ; \e-2þ\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER O WITH HORN AND DOT BELOW")
+    (ucs               . #x1EE3)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x01A1 #x0323)
+    (->uppercase       #x1EE2)
+    (->titlecase       #x1EE2)
+    (latin-viscii-lower #xFE)  ; \e-1þ\e-A
+    (latin-viscii      #xFE)   ; \e-1þ\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER U WITH DOT BELOW")
+    (ucs               . #x1EE4)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0055 #x0323)
+    (->lowercase       #x1EE5)
+    (latin-viscii-upper #xF8)  ; \e-2ø\e-A
+    (latin-viscii      #x9E)   ; \e-2ø\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER U WITH DOT BELOW")
+    (ucs               . #x1EE5)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0075 #x0323)
+    (->uppercase       #x1EE4)
+    (->titlecase       #x1EE4)
+    (latin-viscii-lower #xF8)  ; \e-1ø\e-A
+    (latin-viscii      #xF8)   ; \e-1ø\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER U WITH HOOK ABOVE")
+    (ucs               . #x1EE6)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0055 #x0309)
+    (->lowercase       #x1EE7)
+    (latin-viscii-upper #xFC)  ; \e-2ü\e-A
+    (latin-viscii      #x9C)   ; \e-2ü\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER U WITH HOOK ABOVE")
+    (ucs               . #x1EE7)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0075 #x0309)
+    (->uppercase       #x1EE6)
+    (->titlecase       #x1EE6)
+    (latin-viscii-lower #xFC)  ; \e-1ü\e-A
+    (latin-viscii      #xFC)   ; \e-1ü\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER U WITH HORN AND ACUTE")
+    (ucs               . #x1EE8)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x01AF #x0301)
+    (->lowercase       #x1EE9)
+    (latin-viscii-upper #xD1)  ; \e-2Ñ\e-A
+    (latin-viscii      #xBA)   ; \e-2Ñ\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER U WITH HORN AND ACUTE")
+    (ucs               . #x1EE9)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x01B0 #x0301)
+    (->uppercase       #x1EE8)
+    (->titlecase       #x1EE8)
+    (latin-viscii-lower #xD1)  ; \e-1Ñ\e-A
+    (latin-viscii      #xD1)   ; \e-1Ñ\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER U WITH HORN AND GRAVE")
+    (ucs               . #x1EEA)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x01AF #x0300)
+    (->lowercase       #x1EEB)
+    (latin-viscii-upper #xD7)  ; \e-2×\e-A
+    (latin-viscii      #xBB)   ; \e-2×\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER U WITH HORN AND GRAVE")
+    (ucs               . #x1EEB)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x01B0 #x0300)
+    (->uppercase       #x1EEA)
+    (->titlecase       #x1EEA)
+    (latin-viscii-lower #xD7)  ; \e-1×\e-A
+    (latin-viscii      #xD7)   ; \e-1×\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER U WITH HORN AND HOOK ABOVE")
+    (ucs               . #x1EEC)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x01AF #x0309)
+    (->lowercase       #x1EED)
+    (latin-viscii-upper #xD8)  ; \e-2Ø\e-A
+    (latin-viscii      #xBC)   ; \e-2Ø\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER U WITH HORN AND HOOK ABOVE")
+    (ucs               . #x1EED)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x01B0 #x0309)
+    (->uppercase       #x1EEC)
+    (->titlecase       #x1EEC)
+    (latin-viscii-lower #xD8)  ; \e-1Ø\e-A
+    (latin-viscii      #xD8)   ; \e-1Ø\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER U WITH HORN AND TILDE")
+    (ucs               . #x1EEE)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x01AF #x0303)
+    (->lowercase       #x1EEF)
+    (latin-viscii-upper #xE6)  ; \e-2æ\e-A
+    (latin-viscii      #xFF)   ; \e-2æ\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER U WITH HORN AND TILDE")
+    (ucs               . #x1EEF)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x01B0 #x0303)
+    (->uppercase       #x1EEE)
+    (->titlecase       #x1EEE)
+    (latin-viscii-lower #xE6)  ; \e-1æ\e-A
+    (latin-viscii      #xE6)   ; \e-1æ\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER U WITH HORN AND DOT BELOW")
+    (ucs               . #x1EF0)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x01AF #x0323)
+    (->lowercase       #x1EF1)
+    (latin-viscii-upper #xF1)  ; \e-2ñ\e-A
+    (latin-viscii      #xB9)   ; \e-2ñ\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER U WITH HORN AND DOT BELOW")
+    (ucs               . #x1EF1)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x01B0 #x0323)
+    (->uppercase       #x1EF0)
+    (->titlecase       #x1EF0)
+    (latin-viscii-lower #xF1)  ; \e-1ñ\e-A
+    (latin-viscii      #xF1)   ; \e-1ñ\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER Y WITH GRAVE")
+    (ucs               . #x1EF2)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0059 #x0300)
+    (->lowercase       #x1EF3)
+    (latin-viscii-upper #xCF)  ; \e-2Ï\e-A
+    (latin-viscii      #x9F)   ; \e-2Ï\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER Y WITH GRAVE")
+    (ucs               . #x1EF3)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0079 #x0300)
+    (->uppercase       #x1EF2)
+    (->titlecase       #x1EF2)
+    (latin-viscii-lower #xCF)  ; \e-1Ï\e-A
+    (latin-viscii      #xCF)   ; \e-1Ï\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER Y WITH DOT BELOW")
+    (ucs               . #x1EF4)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0059 #x0323)
+    (->lowercase       #x1EF5)
+    (latin-viscii-upper #xDC)  ; \e-2Ü\e-A
+    (latin-viscii      #x1E)   ; \e-2Ü\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER Y WITH DOT BELOW")
+    (ucs               . #x1EF5)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0079 #x0323)
+    (->uppercase       #x1EF4)
+    (->titlecase       #x1EF4)
+    (latin-viscii-lower #xDC)  ; \e-1Ü\e-A
+    (latin-viscii      #xDC)   ; \e-1Ü\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER Y WITH HOOK ABOVE")
+    (ucs               . #x1EF6)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0059 #x0309)
+    (->lowercase       #x1EF7)
+    (latin-viscii-upper #xD6)  ; \e-2Ö\e-A
+    (latin-viscii      #x14)   ; \e-2Ö\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER Y WITH HOOK ABOVE")
+    (ucs               . #x1EF7)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0079 #x0309)
+    (->uppercase       #x1EF6)
+    (->titlecase       #x1EF6)
+    (latin-viscii-lower #xD6)  ; \e-1Ö\e-A
+    (latin-viscii      #xD6)   ; \e-1Ö\e-A
+    ))
+(define-char
+  '((name              . "LATIN CAPITAL LETTER Y WITH TILDE")
+    (ucs               . #x1EF8)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0059 #x0303)
+    (->lowercase       #x1EF9)
+    (latin-viscii-upper #xDB)  ; \e-2Û\e-A
+    (latin-viscii      #x19)   ; \e-2Û\e-A
+    ))
+(define-char
+  '((name              . "LATIN SMALL LETTER Y WITH TILDE")
+    (ucs               . #x1EF9)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x0079 #x0303)
+    (->uppercase       #x1EF8)
+    (->titlecase       #x1EF8)
+    (latin-viscii-lower #xDB)  ; \e-1Û\e-A
+    (latin-viscii      #xDB)   ; \e-1Û\e-A
+    ))
diff --git a/lisp/utf-2000/u01F00-Greek-Extended.el b/lisp/utf-2000/u01F00-Greek-Extended.el
new file mode 100644 (file)
index 0000000..bc3bf41
--- /dev/null
@@ -0,0 +1,2154 @@
+(define-char
+  '((name              . "GREEK SMALL LETTER ALPHA WITH PSILI")
+    (ucs               . #x1F00)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03B1 #x0313)
+    (mirrored          . nil)
+    (->uppercase       #x1F08)
+    (->titlecase       #x1F08)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER ALPHA WITH DASIA")
+    (ucs               . #x1F01)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03B1 #x0314)
+    (mirrored          . nil)
+    (->uppercase       #x1F09)
+    (->titlecase       #x1F09)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA")
+    (ucs               . #x1F02)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F00 #x0300)
+    (mirrored          . nil)
+    (->uppercase       #x1F0A)
+    (->titlecase       #x1F0A)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA")
+    (ucs               . #x1F03)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F01 #x0300)
+    (mirrored          . nil)
+    (->uppercase       #x1F0B)
+    (->titlecase       #x1F0B)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA")
+    (ucs               . #x1F04)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F00 #x0301)
+    (mirrored          . nil)
+    (->uppercase       #x1F0C)
+    (->titlecase       #x1F0C)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA")
+    (ucs               . #x1F05)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F01 #x0301)
+    (mirrored          . nil)
+    (->uppercase       #x1F0D)
+    (->titlecase       #x1F0D)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI")
+    (ucs  . #x1F06)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F00 #x0342)
+    (mirrored          . nil)
+    (->uppercase       #x1F0E)
+    (->titlecase       #x1F0E)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI")
+    (ucs  . #x1F07)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F01 #x0342)
+    (mirrored          . nil)
+    (->uppercase       #x1F0F)
+    (->titlecase       #x1F0F)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER ALPHA WITH PSILI")
+    (ucs               . #x1F08)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0391 #x0313)
+    (mirrored          . nil)
+    (->lowercase       #x1F00)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER ALPHA WITH DASIA")
+    (ucs               . #x1F09)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0391 #x0314)
+    (mirrored          . nil)
+    (->lowercase       #x1F01)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA")
+    (ucs               . #x1F0A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F08 #x0300)
+    (mirrored          . nil)
+    (->lowercase       #x1F02)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA")
+    (ucs               . #x1F0B)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F09 #x0300)
+    (mirrored          . nil)
+    (->lowercase       #x1F03)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA")
+    (ucs               . #x1F0C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F08 #x0301)
+    (mirrored          . nil)
+    (->lowercase       #x1F04)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA")
+    (ucs               . #x1F0D)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F09 #x0301)
+    (mirrored          . nil)
+    (->lowercase       #x1F05)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI")
+    (ucs  . #x1F0E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F08 #x0342)
+    (mirrored          . nil)
+    (->lowercase       #x1F06)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI")
+    (ucs  . #x1F0F)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F09 #x0342)
+    (mirrored          . nil)
+    (->lowercase       #x1F07)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER EPSILON WITH PSILI")
+    (ucs               . #x1F10)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03B5 #x0313)
+    (mirrored          . nil)
+    (->uppercase       #x1F18)
+    (->titlecase       #x1F18)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER EPSILON WITH DASIA")
+    (ucs               . #x1F11)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03B5 #x0314)
+    (mirrored          . nil)
+    (->uppercase       #x1F19)
+    (->titlecase       #x1F19)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER EPSILON WITH PSILI AND VARIA")
+    (ucs               . #x1F12)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F10 #x0300)
+    (mirrored          . nil)
+    (->uppercase       #x1F1A)
+    (->titlecase       #x1F1A)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER EPSILON WITH DASIA AND VARIA")
+    (ucs               . #x1F13)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F11 #x0300)
+    (mirrored          . nil)
+    (->uppercase       #x1F1B)
+    (->titlecase       #x1F1B)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER EPSILON WITH PSILI AND OXIA")
+    (ucs               . #x1F14)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F10 #x0301)
+    (mirrored          . nil)
+    (->uppercase       #x1F1C)
+    (->titlecase       #x1F1C)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER EPSILON WITH DASIA AND OXIA")
+    (ucs               . #x1F15)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F11 #x0301)
+    (mirrored          . nil)
+    (->uppercase       #x1F1D)
+    (->titlecase       #x1F1D)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER EPSILON WITH PSILI")
+    (ucs               . #x1F18)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0395 #x0313)
+    (mirrored          . nil)
+    (->lowercase       #x1F10)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER EPSILON WITH DASIA")
+    (ucs               . #x1F19)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0395 #x0314)
+    (mirrored          . nil)
+    (->lowercase       #x1F11)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER EPSILON WITH PSILI AND VARIA")
+    (ucs  . #x1F1A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F18 #x0300)
+    (mirrored          . nil)
+    (->lowercase       #x1F12)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER EPSILON WITH DASIA AND VARIA")
+    (ucs  . #x1F1B)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F19 #x0300)
+    (mirrored          . nil)
+    (->lowercase       #x1F13)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER EPSILON WITH PSILI AND OXIA")
+    (ucs  . #x1F1C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F18 #x0301)
+    (mirrored          . nil)
+    (->lowercase       #x1F14)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER EPSILON WITH DASIA AND OXIA")
+    (ucs  . #x1F1D)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F19 #x0301)
+    (mirrored          . nil)
+    (->lowercase       #x1F15)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER ETA WITH PSILI")
+    (ucs               . #x1F20)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03B7 #x0313)
+    (mirrored          . nil)
+    (->uppercase       #x1F28)
+    (->titlecase       #x1F28)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER ETA WITH DASIA")
+    (ucs               . #x1F21)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03B7 #x0314)
+    (mirrored          . nil)
+    (->uppercase       #x1F29)
+    (->titlecase       #x1F29)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER ETA WITH PSILI AND VARIA")
+    (ucs               . #x1F22)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F20 #x0300)
+    (mirrored          . nil)
+    (->uppercase       #x1F2A)
+    (->titlecase       #x1F2A)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER ETA WITH DASIA AND VARIA")
+    (ucs               . #x1F23)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F21 #x0300)
+    (mirrored          . nil)
+    (->uppercase       #x1F2B)
+    (->titlecase       #x1F2B)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER ETA WITH PSILI AND OXIA")
+    (ucs               . #x1F24)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F20 #x0301)
+    (mirrored          . nil)
+    (->uppercase       #x1F2C)
+    (->titlecase       #x1F2C)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER ETA WITH DASIA AND OXIA")
+    (ucs               . #x1F25)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F21 #x0301)
+    (mirrored          . nil)
+    (->uppercase       #x1F2D)
+    (->titlecase       #x1F2D)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI")
+    (ucs  . #x1F26)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F20 #x0342)
+    (mirrored          . nil)
+    (->uppercase       #x1F2E)
+    (->titlecase       #x1F2E)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI")
+    (ucs  . #x1F27)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F21 #x0342)
+    (mirrored          . nil)
+    (->uppercase       #x1F2F)
+    (->titlecase       #x1F2F)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER ETA WITH PSILI")
+    (ucs               . #x1F28)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0397 #x0313)
+    (mirrored          . nil)
+    (->lowercase       #x1F20)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER ETA WITH DASIA")
+    (ucs               . #x1F29)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0397 #x0314)
+    (mirrored          . nil)
+    (->lowercase       #x1F21)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA")
+    (ucs               . #x1F2A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F28 #x0300)
+    (mirrored          . nil)
+    (->lowercase       #x1F22)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA")
+    (ucs               . #x1F2B)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F29 #x0300)
+    (mirrored          . nil)
+    (->lowercase       #x1F23)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA")
+    (ucs               . #x1F2C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F28 #x0301)
+    (mirrored          . nil)
+    (->lowercase       #x1F24)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA")
+    (ucs               . #x1F2D)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F29 #x0301)
+    (mirrored          . nil)
+    (->lowercase       #x1F25)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI")
+    (ucs  . #x1F2E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F28 #x0342)
+    (mirrored          . nil)
+    (->lowercase       #x1F26)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI")
+    (ucs  . #x1F2F)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F29 #x0342)
+    (mirrored          . nil)
+    (->lowercase       #x1F27)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER IOTA WITH PSILI")
+    (ucs               . #x1F30)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03B9 #x0313)
+    (mirrored          . nil)
+    (->uppercase       #x1F38)
+    (->titlecase       #x1F38)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER IOTA WITH DASIA")
+    (ucs               . #x1F31)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03B9 #x0314)
+    (mirrored          . nil)
+    (->uppercase       #x1F39)
+    (->titlecase       #x1F39)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER IOTA WITH PSILI AND VARIA")
+    (ucs               . #x1F32)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F30 #x0300)
+    (mirrored          . nil)
+    (->uppercase       #x1F3A)
+    (->titlecase       #x1F3A)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER IOTA WITH DASIA AND VARIA")
+    (ucs               . #x1F33)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F31 #x0300)
+    (mirrored          . nil)
+    (->uppercase       #x1F3B)
+    (->titlecase       #x1F3B)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER IOTA WITH PSILI AND OXIA")
+    (ucs               . #x1F34)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F30 #x0301)
+    (mirrored          . nil)
+    (->uppercase       #x1F3C)
+    (->titlecase       #x1F3C)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER IOTA WITH DASIA AND OXIA")
+    (ucs               . #x1F35)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F31 #x0301)
+    (mirrored          . nil)
+    (->uppercase       #x1F3D)
+    (->titlecase       #x1F3D)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER IOTA WITH PSILI AND PERISPOMENI")
+    (ucs  . #x1F36)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F30 #x0342)
+    (mirrored          . nil)
+    (->uppercase       #x1F3E)
+    (->titlecase       #x1F3E)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER IOTA WITH DASIA AND PERISPOMENI")
+    (ucs  . #x1F37)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F31 #x0342)
+    (mirrored          . nil)
+    (->uppercase       #x1F3F)
+    (->titlecase       #x1F3F)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER IOTA WITH PSILI")
+    (ucs               . #x1F38)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0399 #x0313)
+    (mirrored          . nil)
+    (->lowercase       #x1F30)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER IOTA WITH DASIA")
+    (ucs               . #x1F39)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0399 #x0314)
+    (mirrored          . nil)
+    (->lowercase       #x1F31)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER IOTA WITH PSILI AND VARIA")
+    (ucs               . #x1F3A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F38 #x0300)
+    (mirrored          . nil)
+    (->lowercase       #x1F32)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER IOTA WITH DASIA AND VARIA")
+    (ucs               . #x1F3B)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F39 #x0300)
+    (mirrored          . nil)
+    (->lowercase       #x1F33)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER IOTA WITH PSILI AND OXIA")
+    (ucs               . #x1F3C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F38 #x0301)
+    (mirrored          . nil)
+    (->lowercase       #x1F34)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER IOTA WITH DASIA AND OXIA")
+    (ucs               . #x1F3D)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F39 #x0301)
+    (mirrored          . nil)
+    (->lowercase       #x1F35)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER IOTA WITH PSILI AND PERISPOMENI")
+    (ucs  . #x1F3E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F38 #x0342)
+    (mirrored          . nil)
+    (->lowercase       #x1F36)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER IOTA WITH DASIA AND PERISPOMENI")
+    (ucs  . #x1F3F)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F39 #x0342)
+    (mirrored          . nil)
+    (->lowercase       #x1F37)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER OMICRON WITH PSILI")
+    (ucs               . #x1F40)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03BF #x0313)
+    (mirrored          . nil)
+    (->uppercase       #x1F48)
+    (->titlecase       #x1F48)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER OMICRON WITH DASIA")
+    (ucs               . #x1F41)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03BF #x0314)
+    (mirrored          . nil)
+    (->uppercase       #x1F49)
+    (->titlecase       #x1F49)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER OMICRON WITH PSILI AND VARIA")
+    (ucs               . #x1F42)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F40 #x0300)
+    (mirrored          . nil)
+    (->uppercase       #x1F4A)
+    (->titlecase       #x1F4A)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER OMICRON WITH DASIA AND VARIA")
+    (ucs               . #x1F43)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F41 #x0300)
+    (mirrored          . nil)
+    (->uppercase       #x1F4B)
+    (->titlecase       #x1F4B)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER OMICRON WITH PSILI AND OXIA")
+    (ucs               . #x1F44)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F40 #x0301)
+    (mirrored          . nil)
+    (->uppercase       #x1F4C)
+    (->titlecase       #x1F4C)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER OMICRON WITH DASIA AND OXIA")
+    (ucs               . #x1F45)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F41 #x0301)
+    (mirrored          . nil)
+    (->uppercase       #x1F4D)
+    (->titlecase       #x1F4D)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER OMICRON WITH PSILI")
+    (ucs               . #x1F48)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x039F #x0313)
+    (mirrored          . nil)
+    (->lowercase       #x1F40)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER OMICRON WITH DASIA")
+    (ucs               . #x1F49)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x039F #x0314)
+    (mirrored          . nil)
+    (->lowercase       #x1F41)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER OMICRON WITH PSILI AND VARIA")
+    (ucs  . #x1F4A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F48 #x0300)
+    (mirrored          . nil)
+    (->lowercase       #x1F42)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER OMICRON WITH DASIA AND VARIA")
+    (ucs  . #x1F4B)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F49 #x0300)
+    (mirrored          . nil)
+    (->lowercase       #x1F43)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER OMICRON WITH PSILI AND OXIA")
+    (ucs  . #x1F4C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F48 #x0301)
+    (mirrored          . nil)
+    (->lowercase       #x1F44)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER OMICRON WITH DASIA AND OXIA")
+    (ucs  . #x1F4D)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F49 #x0301)
+    (mirrored          . nil)
+    (->lowercase       #x1F45)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER UPSILON WITH PSILI")
+    (ucs               . #x1F50)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03C5 #x0313)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER UPSILON WITH DASIA")
+    (ucs               . #x1F51)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03C5 #x0314)
+    (mirrored          . nil)
+    (->uppercase       #x1F59)
+    (->titlecase       #x1F59)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER UPSILON WITH PSILI AND VARIA")
+    (ucs               . #x1F52)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F50 #x0300)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER UPSILON WITH DASIA AND VARIA")
+    (ucs               . #x1F53)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F51 #x0300)
+    (mirrored          . nil)
+    (->uppercase       #x1F5B)
+    (->titlecase       #x1F5B)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER UPSILON WITH PSILI AND OXIA")
+    (ucs               . #x1F54)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F50 #x0301)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER UPSILON WITH DASIA AND OXIA")
+    (ucs               . #x1F55)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F51 #x0301)
+    (mirrored          . nil)
+    (->uppercase       #x1F5D)
+    (->titlecase       #x1F5D)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER UPSILON WITH PSILI AND PERISPOMENI")
+    (ucs  . #x1F56)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F50 #x0342)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER UPSILON WITH DASIA AND PERISPOMENI")
+    (ucs  . #x1F57)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F51 #x0342)
+    (mirrored          . nil)
+    (->uppercase       #x1F5F)
+    (->titlecase       #x1F5F)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER UPSILON WITH DASIA")
+    (ucs               . #x1F59)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03A5 #x0314)
+    (mirrored          . nil)
+    (->lowercase       #x1F51)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER UPSILON WITH DASIA AND VARIA")
+    (ucs  . #x1F5B)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F59 #x0300)
+    (mirrored          . nil)
+    (->lowercase       #x1F53)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER UPSILON WITH DASIA AND OXIA")
+    (ucs  . #x1F5D)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F59 #x0301)
+    (mirrored          . nil)
+    (->lowercase       #x1F55)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER UPSILON WITH DASIA AND PERISPOMENI")
+    (ucs  . #x1F5F)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F59 #x0342)
+    (mirrored          . nil)
+    (->lowercase       #x1F57)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER OMEGA WITH PSILI")
+    (ucs               . #x1F60)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03C9 #x0313)
+    (mirrored          . nil)
+    (->uppercase       #x1F68)
+    (->titlecase       #x1F68)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER OMEGA WITH DASIA")
+    (ucs               . #x1F61)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03C9 #x0314)
+    (mirrored          . nil)
+    (->uppercase       #x1F69)
+    (->titlecase       #x1F69)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA")
+    (ucs               . #x1F62)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F60 #x0300)
+    (mirrored          . nil)
+    (->uppercase       #x1F6A)
+    (->titlecase       #x1F6A)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA")
+    (ucs               . #x1F63)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F61 #x0300)
+    (mirrored          . nil)
+    (->uppercase       #x1F6B)
+    (->titlecase       #x1F6B)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA")
+    (ucs               . #x1F64)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F60 #x0301)
+    (mirrored          . nil)
+    (->uppercase       #x1F6C)
+    (->titlecase       #x1F6C)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA")
+    (ucs               . #x1F65)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F61 #x0301)
+    (mirrored          . nil)
+    (->uppercase       #x1F6D)
+    (->titlecase       #x1F6D)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI")
+    (ucs  . #x1F66)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F60 #x0342)
+    (mirrored          . nil)
+    (->uppercase       #x1F6E)
+    (->titlecase       #x1F6E)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI")
+    (ucs  . #x1F67)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F61 #x0342)
+    (mirrored          . nil)
+    (->uppercase       #x1F6F)
+    (->titlecase       #x1F6F)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER OMEGA WITH PSILI")
+    (ucs               . #x1F68)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03A9 #x0313)
+    (mirrored          . nil)
+    (->lowercase       #x1F60)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER OMEGA WITH DASIA")
+    (ucs               . #x1F69)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03A9 #x0314)
+    (mirrored          . nil)
+    (->lowercase       #x1F61)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA")
+    (ucs               . #x1F6A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F68 #x0300)
+    (mirrored          . nil)
+    (->lowercase       #x1F62)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA")
+    (ucs               . #x1F6B)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F69 #x0300)
+    (mirrored          . nil)
+    (->lowercase       #x1F63)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA")
+    (ucs               . #x1F6C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F68 #x0301)
+    (mirrored          . nil)
+    (->lowercase       #x1F64)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA")
+    (ucs               . #x1F6D)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F69 #x0301)
+    (mirrored          . nil)
+    (->lowercase       #x1F65)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI")
+    (ucs  . #x1F6E)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F68 #x0342)
+    (mirrored          . nil)
+    (->lowercase       #x1F66)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI")
+    (ucs  . #x1F6F)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F69 #x0342)
+    (mirrored          . nil)
+    (->lowercase       #x1F67)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER ALPHA WITH VARIA")
+    (ucs               . #x1F70)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03B1 #x0300)
+    (mirrored          . nil)
+    (->uppercase       #x1FBA)
+    (->titlecase       #x1FBA)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER ALPHA WITH OXIA")
+    (ucs               . #x1F71)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03AC)
+    (mirrored          . nil)
+    (->uppercase       #x1FBB)
+    (->titlecase       #x1FBB)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER EPSILON WITH VARIA")
+    (ucs               . #x1F72)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03B5 #x0300)
+    (mirrored          . nil)
+    (->uppercase       #x1FC8)
+    (->titlecase       #x1FC8)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER EPSILON WITH OXIA")
+    (ucs               . #x1F73)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03AD)
+    (mirrored          . nil)
+    (->uppercase       #x1FC9)
+    (->titlecase       #x1FC9)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER ETA WITH VARIA")
+    (ucs               . #x1F74)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03B7 #x0300)
+    (mirrored          . nil)
+    (->uppercase       #x1FCA)
+    (->titlecase       #x1FCA)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER ETA WITH OXIA")
+    (ucs               . #x1F75)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03AE)
+    (mirrored          . nil)
+    (->uppercase       #x1FCB)
+    (->titlecase       #x1FCB)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER IOTA WITH VARIA")
+    (ucs               . #x1F76)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03B9 #x0300)
+    (mirrored          . nil)
+    (->uppercase       #x1FDA)
+    (->titlecase       #x1FDA)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER IOTA WITH OXIA")
+    (ucs               . #x1F77)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03AF)
+    (mirrored          . nil)
+    (->uppercase       #x1FDB)
+    (->titlecase       #x1FDB)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER OMICRON WITH VARIA")
+    (ucs               . #x1F78)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03BF #x0300)
+    (mirrored          . nil)
+    (->uppercase       #x1FF8)
+    (->titlecase       #x1FF8)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER OMICRON WITH OXIA")
+    (ucs               . #x1F79)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03CC)
+    (mirrored          . nil)
+    (->uppercase       #x1FF9)
+    (->titlecase       #x1FF9)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER UPSILON WITH VARIA")
+    (ucs               . #x1F7A)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03C5 #x0300)
+    (mirrored          . nil)
+    (->uppercase       #x1FEA)
+    (->titlecase       #x1FEA)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER UPSILON WITH OXIA")
+    (ucs               . #x1F7B)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03CD)
+    (mirrored          . nil)
+    (->uppercase       #x1FEB)
+    (->titlecase       #x1FEB)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER OMEGA WITH VARIA")
+    (ucs               . #x1F7C)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03C9 #x0300)
+    (mirrored          . nil)
+    (->uppercase       #x1FFA)
+    (->titlecase       #x1FFA)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER OMEGA WITH OXIA")
+    (ucs               . #x1F7D)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03CE)
+    (mirrored          . nil)
+    (->uppercase       #x1FFB)
+    (->titlecase       #x1FFB)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ALPHA WITH PSILI AND YPOGEGRAMMENI")
+    (ucs  . #x1F80)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F00 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1F88)
+    (->titlecase       #x1F88)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ALPHA WITH DASIA AND YPOGEGRAMMENI")
+    (ucs  . #x1F81)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F01 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1F89)
+    (->titlecase       #x1F89)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA AND YPOGEGRAMMENI")
+    (ucs  . #x1F82)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F02 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1F8A)
+    (->titlecase       #x1F8A)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA AND YPOGEGRAMMENI")
+    (ucs  . #x1F83)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F03 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1F8B)
+    (->titlecase       #x1F8B)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA AND YPOGEGRAMMENI")
+    (ucs  . #x1F84)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F04 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1F8C)
+    (->titlecase       #x1F8C)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA AND YPOGEGRAMMENI")
+    (ucs  . #x1F85)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F05 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1F8D)
+    (->titlecase       #x1F8D)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI")
+    (ucs  . #x1F86)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F06 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1F8E)
+    (->titlecase       #x1F8E)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI")
+    (ucs  . #x1F87)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F07 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1F8F)
+    (->titlecase       #x1F8F)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER ALPHA WITH PSILI AND PROSGEGRAMMENI")
+    (ucs  . #x1F88)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F08 #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1F80)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER ALPHA WITH DASIA AND PROSGEGRAMMENI")
+    (ucs  . #x1F89)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F09 #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1F81)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA AND PROSGEGRAMMENI")
+    (ucs  . #x1F8A)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F0A #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1F82)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA AND PROSGEGRAMMENI")
+    (ucs  . #x1F8B)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F0B #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1F83)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA AND PROSGEGRAMMENI")
+    (ucs  . #x1F8C)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F0C #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1F84)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA AND PROSGEGRAMMENI")
+    (ucs  . #x1F8D)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F0D #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1F85)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI")
+    (ucs  . #x1F8E)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F0E #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1F86)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI")
+    (ucs  . #x1F8F)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F0F #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1F87)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ETA WITH PSILI AND YPOGEGRAMMENI")
+    (ucs  . #x1F90)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F20 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1F98)
+    (->titlecase       #x1F98)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ETA WITH DASIA AND YPOGEGRAMMENI")
+    (ucs  . #x1F91)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F21 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1F99)
+    (->titlecase       #x1F99)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ETA WITH PSILI AND VARIA AND YPOGEGRAMMENI")
+    (ucs  . #x1F92)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F22 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1F9A)
+    (->titlecase       #x1F9A)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ETA WITH DASIA AND VARIA AND YPOGEGRAMMENI")
+    (ucs  . #x1F93)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F23 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1F9B)
+    (->titlecase       #x1F9B)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ETA WITH PSILI AND OXIA AND YPOGEGRAMMENI")
+    (ucs  . #x1F94)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F24 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1F9C)
+    (->titlecase       #x1F9C)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ETA WITH DASIA AND OXIA AND YPOGEGRAMMENI")
+    (ucs  . #x1F95)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F25 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1F9D)
+    (->titlecase       #x1F9D)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI")
+    (ucs  . #x1F96)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F26 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1F9E)
+    (->titlecase       #x1F9E)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI")
+    (ucs  . #x1F97)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F27 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1F9F)
+    (->titlecase       #x1F9F)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER ETA WITH PSILI AND PROSGEGRAMMENI")
+    (ucs  . #x1F98)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F28 #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1F90)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER ETA WITH DASIA AND PROSGEGRAMMENI")
+    (ucs  . #x1F99)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F29 #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1F91)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA AND PROSGEGRAMMENI")
+    (ucs  . #x1F9A)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F2A #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1F92)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA AND PROSGEGRAMMENI")
+    (ucs  . #x1F9B)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F2B #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1F93)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA AND PROSGEGRAMMENI")
+    (ucs  . #x1F9C)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F2C #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1F94)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA AND PROSGEGRAMMENI")
+    (ucs  . #x1F9D)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F2D #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1F95)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI")
+    (ucs  . #x1F9E)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F2E #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1F96)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI")
+    (ucs  . #x1F9F)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F2F #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1F97)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER OMEGA WITH PSILI AND YPOGEGRAMMENI")
+    (ucs  . #x1FA0)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F60 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1FA8)
+    (->titlecase       #x1FA8)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER OMEGA WITH DASIA AND YPOGEGRAMMENI")
+    (ucs  . #x1FA1)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F61 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1FA9)
+    (->titlecase       #x1FA9)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA AND YPOGEGRAMMENI")
+    (ucs  . #x1FA2)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F62 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1FAA)
+    (->titlecase       #x1FAA)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA AND YPOGEGRAMMENI")
+    (ucs  . #x1FA3)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F63 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1FAB)
+    (->titlecase       #x1FAB)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA AND YPOGEGRAMMENI")
+    (ucs  . #x1FA4)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F64 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1FAC)
+    (->titlecase       #x1FAC)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA AND YPOGEGRAMMENI")
+    (ucs  . #x1FA5)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F65 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1FAD)
+    (->titlecase       #x1FAD)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI")
+    (ucs  . #x1FA6)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F66 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1FAE)
+    (->titlecase       #x1FAE)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI")
+    (ucs  . #x1FA7)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F67 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1FAF)
+    (->titlecase       #x1FAF)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER OMEGA WITH PSILI AND PROSGEGRAMMENI")
+    (ucs  . #x1FA8)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F68 #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1FA0)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER OMEGA WITH DASIA AND PROSGEGRAMMENI")
+    (ucs  . #x1FA9)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F69 #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1FA1)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA AND PROSGEGRAMMENI")
+    (ucs  . #x1FAA)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F6A #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1FA2)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA AND PROSGEGRAMMENI")
+    (ucs  . #x1FAB)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F6B #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1FA3)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA AND PROSGEGRAMMENI")
+    (ucs  . #x1FAC)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F6C #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1FA4)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA AND PROSGEGRAMMENI")
+    (ucs  . #x1FAD)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F6D #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1FA5)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI")
+    (ucs  . #x1FAE)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F6E #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1FA6)
+    ))
+(define-char
+  '((name . "GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI")
+    (ucs  . #x1FAF)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F6F #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1FA7)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER ALPHA WITH VRACHY")
+    (ucs               . #x1FB0)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03B1 #x0306)
+    (mirrored          . nil)
+    (->uppercase       #x1FB8)
+    (->titlecase       #x1FB8)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER ALPHA WITH MACRON")
+    (ucs               . #x1FB1)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03B1 #x0304)
+    (mirrored          . nil)
+    (->uppercase       #x1FB9)
+    (->titlecase       #x1FB9)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI")
+    (ucs  . #x1FB2)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F70 #x0345)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER ALPHA WITH YPOGEGRAMMENI")
+    (ucs               . #x1FB3)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03B1 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1FBC)
+    (->titlecase       #x1FBC)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ALPHA WITH OXIA AND YPOGEGRAMMENI")
+    (ucs  . #x1FB4)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03AC #x0345)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER ALPHA WITH PERISPOMENI")
+    (ucs               . #x1FB6)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03B1 #x0342)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ALPHA WITH PERISPOMENI AND YPOGEGRAMMENI")
+    (ucs  . #x1FB7)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1FB6 #x0345)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER ALPHA WITH VRACHY")
+    (ucs               . #x1FB8)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0391 #x0306)
+    (mirrored          . nil)
+    (->lowercase       #x1FB0)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER ALPHA WITH MACRON")
+    (ucs               . #x1FB9)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0391 #x0304)
+    (mirrored          . nil)
+    (->lowercase       #x1FB1)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER ALPHA WITH VARIA")
+    (ucs               . #x1FBA)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0391 #x0300)
+    (mirrored          . nil)
+    (->lowercase       #x1F70)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER ALPHA WITH OXIA")
+    (ucs               . #x1FBB)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0386)
+    (mirrored          . nil)
+    (->lowercase       #x1F71)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER ALPHA WITH PROSGEGRAMMENI")
+    (ucs               . #x1FBC)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0391 #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1FB3)
+    ))
+(define-char
+  '((name              . "GREEK KORONIS")
+    (ucs               . #x1FBD)
+    (general-category  symbol modifier) ; Informative Category
+    (bidi-category     . "ON")
+    (->decomposition   compat #x0020 #x0313)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK PROSGEGRAMMENI")
+    (ucs               . #x1FBE)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03B9)
+    (mirrored          . nil)
+    (->uppercase       #x0399)
+    (->titlecase       #x0399)
+    ))
+(define-char
+  '((name              . "GREEK PSILI")
+    (ucs               . #x1FBF)
+    (general-category  symbol modifier) ; Informative Category
+    (bidi-category     . "ON")
+    (->decomposition   compat #x0020 #x0313)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK PERISPOMENI")
+    (ucs               . #x1FC0)
+    (general-category  symbol modifier) ; Informative Category
+    (bidi-category     . "ON")
+    (->decomposition   compat #x0020 #x0342)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK DIALYTIKA AND PERISPOMENI")
+    (ucs               . #x1FC1)
+    (general-category  symbol modifier) ; Informative Category
+    (bidi-category     . "ON")
+    (->decomposition   #x00A8 #x0342)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ETA WITH VARIA AND YPOGEGRAMMENI")
+    (ucs  . #x1FC2)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F74 #x0345)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER ETA WITH YPOGEGRAMMENI")
+    (ucs               . #x1FC3)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03B7 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1FCC)
+    (->titlecase       #x1FCC)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ETA WITH OXIA AND YPOGEGRAMMENI")
+    (ucs  . #x1FC4)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03AE #x0345)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER ETA WITH PERISPOMENI")
+    (ucs               . #x1FC6)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03B7 #x0342)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER ETA WITH PERISPOMENI AND YPOGEGRAMMENI")
+    (ucs  . #x1FC7)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1FC6 #x0345)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER EPSILON WITH VARIA")
+    (ucs               . #x1FC8)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0395 #x0300)
+    (mirrored          . nil)
+    (->lowercase       #x1F72)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER EPSILON WITH OXIA")
+    (ucs               . #x1FC9)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0388)
+    (mirrored          . nil)
+    (->lowercase       #x1F73)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER ETA WITH VARIA")
+    (ucs               . #x1FCA)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0397 #x0300)
+    (mirrored          . nil)
+    (->lowercase       #x1F74)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER ETA WITH OXIA")
+    (ucs               . #x1FCB)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0389)
+    (mirrored          . nil)
+    (->lowercase       #x1F75)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER ETA WITH PROSGEGRAMMENI")
+    (ucs               . #x1FCC)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0397 #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1FC3)
+    ))
+(define-char
+  '((name              . "GREEK PSILI AND VARIA")
+    (ucs               . #x1FCD)
+    (general-category  symbol modifier) ; Informative Category
+    (bidi-category     . "ON")
+    (->decomposition   #x1FBF #x0300)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK PSILI AND OXIA")
+    (ucs               . #x1FCE)
+    (general-category  symbol modifier) ; Informative Category
+    (bidi-category     . "ON")
+    (->decomposition   #x1FBF #x0301)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK PSILI AND PERISPOMENI")
+    (ucs               . #x1FCF)
+    (general-category  symbol modifier) ; Informative Category
+    (bidi-category     . "ON")
+    (->decomposition   #x1FBF #x0342)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER IOTA WITH VRACHY")
+    (ucs               . #x1FD0)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03B9 #x0306)
+    (mirrored          . nil)
+    (->uppercase       #x1FD8)
+    (->titlecase       #x1FD8)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER IOTA WITH MACRON")
+    (ucs               . #x1FD1)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03B9 #x0304)
+    (mirrored          . nil)
+    (->uppercase       #x1FD9)
+    (->titlecase       #x1FD9)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER IOTA WITH DIALYTIKA AND VARIA")
+    (ucs  . #x1FD2)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03CA #x0300)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER IOTA WITH DIALYTIKA AND OXIA")
+    (ucs               . #x1FD3)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0390)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER IOTA WITH PERISPOMENI")
+    (ucs               . #x1FD6)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03B9 #x0342)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER IOTA WITH DIALYTIKA AND PERISPOMENI")
+    (ucs  . #x1FD7)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03CA #x0342)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER IOTA WITH VRACHY")
+    (ucs               . #x1FD8)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0399 #x0306)
+    (mirrored          . nil)
+    (->lowercase       #x1FD0)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER IOTA WITH MACRON")
+    (ucs               . #x1FD9)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0399 #x0304)
+    (mirrored          . nil)
+    (->lowercase       #x1FD1)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER IOTA WITH VARIA")
+    (ucs               . #x1FDA)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x0399 #x0300)
+    (mirrored          . nil)
+    (->lowercase       #x1F76)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER IOTA WITH OXIA")
+    (ucs               . #x1FDB)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x038A)
+    (mirrored          . nil)
+    (->lowercase       #x1F77)
+    ))
+(define-char
+  '((name              . "GREEK DASIA AND VARIA")
+    (ucs               . #x1FDD)
+    (general-category  symbol modifier) ; Informative Category
+    (bidi-category     . "ON")
+    (->decomposition   #x1FFE #x0300)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK DASIA AND OXIA")
+    (ucs               . #x1FDE)
+    (general-category  symbol modifier) ; Informative Category
+    (bidi-category     . "ON")
+    (->decomposition   #x1FFE #x0301)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK DASIA AND PERISPOMENI")
+    (ucs               . #x1FDF)
+    (general-category  symbol modifier) ; Informative Category
+    (bidi-category     . "ON")
+    (->decomposition   #x1FFE #x0342)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER UPSILON WITH VRACHY")
+    (ucs               . #x1FE0)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03C5 #x0306)
+    (mirrored          . nil)
+    (->uppercase       #x1FE8)
+    (->titlecase       #x1FE8)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER UPSILON WITH MACRON")
+    (ucs               . #x1FE1)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03C5 #x0304)
+    (mirrored          . nil)
+    (->uppercase       #x1FE9)
+    (->titlecase       #x1FE9)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND VARIA")
+    (ucs  . #x1FE2)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03CB #x0300)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND OXIA")
+    (ucs  . #x1FE3)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03B0)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER RHO WITH PSILI")
+    (ucs               . #x1FE4)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03C1 #x0313)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER RHO WITH DASIA")
+    (ucs               . #x1FE5)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03C1 #x0314)
+    (mirrored          . nil)
+    (->uppercase       #x1FEC)
+    (->titlecase       #x1FEC)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER UPSILON WITH PERISPOMENI")
+    (ucs               . #x1FE6)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03C5 #x0342)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND PERISPOMENI")
+    (ucs  . #x1FE7)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03CB #x0342)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER UPSILON WITH VRACHY")
+    (ucs               . #x1FE8)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03A5 #x0306)
+    (mirrored          . nil)
+    (->lowercase       #x1FE0)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER UPSILON WITH MACRON")
+    (ucs               . #x1FE9)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03A5 #x0304)
+    (mirrored          . nil)
+    (->lowercase       #x1FE1)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER UPSILON WITH VARIA")
+    (ucs               . #x1FEA)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03A5 #x0300)
+    (mirrored          . nil)
+    (->lowercase       #x1F7A)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER UPSILON WITH OXIA")
+    (ucs               . #x1FEB)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x038E)
+    (mirrored          . nil)
+    (->lowercase       #x1F7B)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER RHO WITH DASIA")
+    (ucs               . #x1FEC)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03A1 #x0314)
+    (mirrored          . nil)
+    (->lowercase       #x1FE5)
+    ))
+(define-char
+  '((name              . "GREEK DIALYTIKA AND VARIA")
+    (ucs               . #x1FED)
+    (general-category  symbol modifier) ; Informative Category
+    (bidi-category     . "ON")
+    (->decomposition   #x00A8 #x0300)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK DIALYTIKA AND OXIA")
+    (ucs               . #x1FEE)
+    (general-category  symbol modifier) ; Informative Category
+    (bidi-category     . "ON")
+    (->decomposition   #x0385)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK VARIA")
+    (ucs               . #x1FEF)
+    (general-category  symbol modifier) ; Informative Category
+    (bidi-category     . "ON")
+    (->decomposition   #x0060)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER OMEGA WITH VARIA AND YPOGEGRAMMENI")
+    (ucs  . #x1FF2)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1F7C #x0345)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER OMEGA WITH YPOGEGRAMMENI")
+    (ucs               . #x1FF3)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03C9 #x0345)
+    (mirrored          . nil)
+    (->uppercase       #x1FFC)
+    (->titlecase       #x1FFC)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER OMEGA WITH OXIA AND YPOGEGRAMMENI")
+    (ucs  . #x1FF4)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03CE #x0345)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK SMALL LETTER OMEGA WITH PERISPOMENI")
+    (ucs               . #x1FF6)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03C9 #x0342)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "GREEK SMALL LETTER OMEGA WITH PERISPOMENI AND YPOGEGRAMMENI")
+    (ucs  . #x1FF7)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x1FF6 #x0345)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER OMICRON WITH VARIA")
+    (ucs               . #x1FF8)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x039F #x0300)
+    (mirrored          . nil)
+    (->lowercase       #x1F78)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER OMICRON WITH OXIA")
+    (ucs               . #x1FF9)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x038C)
+    (mirrored          . nil)
+    (->lowercase       #x1F79)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER OMEGA WITH VARIA")
+    (ucs               . #x1FFA)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03A9 #x0300)
+    (mirrored          . nil)
+    (->lowercase       #x1F7C)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER OMEGA WITH OXIA")
+    (ucs               . #x1FFB)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x038F)
+    (mirrored          . nil)
+    (->lowercase       #x1F7D)
+    ))
+(define-char
+  '((name              . "GREEK CAPITAL LETTER OMEGA WITH PROSGEGRAMMENI")
+    (ucs               . #x1FFC)
+    (general-category  letter titlecase) ; Normative Category
+    (bidi-category     . "L")
+    (->decomposition   #x03A9 #x0345)
+    (mirrored          . nil)
+    (->lowercase       #x1FF3)
+    ))
+(define-char
+  '((name              . "GREEK OXIA")
+    (ucs               . #x1FFD)
+    (general-category  symbol modifier) ; Informative Category
+    (bidi-category     . "ON")
+    (->decomposition   #x00B4)
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GREEK DASIA")
+    (ucs               . #x1FFE)
+    (general-category  symbol modifier) ; Informative Category
+    (bidi-category     . "ON")
+    (->decomposition   compat #x0020 #x0314)
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u02000-General-Punctuation.el b/lisp/utf-2000/u02000-General-Punctuation.el
new file mode 100644 (file)
index 0000000..3524625
--- /dev/null
@@ -0,0 +1,697 @@
+(define-char
+  '((name              . "EN QUAD")
+    (ucs               . #x2000)
+    (general-category  separator space) ; Normative Category
+    (bidi-category     . "WS")
+    (mirrored          . nil)
+    (->decomposition   #x2002)
+    ))
+(define-char
+  '((name              . "EM QUAD")
+    (ucs               . #x2001)
+    (general-category  separator space) ; Normative Category
+    (bidi-category     . "WS")
+    (mirrored          . nil)
+    (->decomposition   #x2003)
+    ))
+(define-char
+  '((name              . "EN SPACE")
+    (ucs               . #x2002)
+    (general-category  separator space) ; Normative Category
+    (bidi-category     . "WS")
+    (mirrored          . nil)
+    (->decomposition   compat #x0020)
+    ))
+(define-char
+  '((name              . "EM SPACE")
+    (ucs               . #x2003)
+    (general-category  separator space) ; Normative Category
+    (bidi-category     . "WS")
+    (mirrored          . nil)
+    (->decomposition   compat #x0020)
+    (chinese-cns11643-1 #x25 #x6D)     ; \e$(G%m\e(B
+    ))
+(define-char
+  '((name              . "THREE-PER-EM SPACE")
+    (ucs               . #x2004)
+    (general-category  separator space) ; Normative Category
+    (bidi-category     . "WS")
+    (mirrored          . nil)
+    (->decomposition   compat #x0020)
+    ))
+(define-char
+  '((name              . "FOUR-PER-EM SPACE")
+    (ucs               . #x2005)
+    (general-category  separator space) ; Normative Category
+    (bidi-category     . "WS")
+    (mirrored          . nil)
+    (->decomposition   compat #x0020)
+    ))
+(define-char
+  '((name              . "SIX-PER-EM SPACE")
+    (ucs               . #x2006)
+    (general-category  separator space) ; Normative Category
+    (bidi-category     . "WS")
+    (mirrored          . nil)
+    (->decomposition   compat #x0020)
+    ))
+(define-char
+  '((name              . "FIGURE SPACE")
+    (ucs               . #x2007)
+    (general-category  separator space) ; Normative Category
+    (bidi-category     . "WS")
+    (mirrored          . nil)
+    (->decomposition   noBreak #x0020)
+    ))
+(define-char
+  '((name              . "PUNCTUATION SPACE")
+    (ucs               . #x2008)
+    (general-category  separator space) ; Normative Category
+    (bidi-category     . "WS")
+    (mirrored          . nil)
+    (->decomposition   compat #x0020)
+    ))
+(define-char
+  '((name              . "THIN SPACE")
+    (ucs               . #x2009)
+    (general-category  separator space) ; Normative Category
+    (bidi-category     . "WS")
+    (mirrored          . nil)
+    (->decomposition   compat #x0020)
+    ))
+(define-char
+  '((name              . "HAIR SPACE")
+    (ucs               . #x200A)
+    (general-category  separator space) ; Normative Category
+    (bidi-category     . "WS")
+    (mirrored          . nil)
+    (->decomposition   compat #x0020)
+    ))
+(define-char
+  '((name              . "ZERO WIDTH SPACE")
+    (ucs               . #x200B)
+    (general-category  separator space) ; Normative Category
+    (bidi-category     . "BN")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ZERO WIDTH NON-JOINER")
+    (ucs               . #x200C)
+    (general-category  other format) ; Normative Category
+    (bidi-category     . "BN")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ZERO WIDTH JOINER")
+    (ucs               . #x200D)
+    (general-category  other format) ; Normative Category
+    (bidi-category     . "BN")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFT-TO-RIGHT MARK")
+    (ucs               . #x200E)
+    (general-category  other format) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHT-TO-LEFT MARK")
+    (ucs               . #x200F)
+    (general-category  other format) ; Normative Category
+    (bidi-category     . "R")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HYPHEN")
+    (ucs               . #x2010)
+    (general-category  punctuation dash) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x3E)      ; \e$(@!>\e(B
+    (japanese-jisx0208         #x21 #x3E)      ; \e$(B!>\e(B
+    ))
+(define-char
+  '((name              . "NON-BREAKING HYPHEN")
+    (ucs               . #x2011)
+    (general-category  punctuation dash) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   noBreak #x2010)
+    ))
+(define-char
+  '((name              . "FIGURE DASH")
+    (ucs               . #x2012)
+    (general-category  punctuation dash) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "EN DASH")
+    (ucs               . #x2013)
+    (general-category  punctuation dash) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x21 #x39)     ; \e$(G!9\e(B
+    ))
+(define-char
+  '((name              . "EM DASH")
+    (ucs               . #x2014)
+    (general-category  punctuation dash) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x3D)      ; \e$(@!=\e(B
+    (japanese-jisx0208         #x21 #x3D)      ; \e$(B!=\e(B
+    (chinese-cns11643-1                #x21 #x37)      ; \e$(G!7\e(B
+    ))
+(define-char
+  '((name              . "HORIZONTAL BAR")
+    (ucs               . #x2015)
+    (general-category  punctuation dash) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x21 #x2A)      ; \e$(A!*\e(B
+    (korean-ksc5601    #x21 #x2A)      ; \e$(C!*\e(B
+    ))
+(define-char
+  '((name              . "HALFWIDTH HORIZONTAL BAR")
+    (->ucs             . #x2015)
+    (general-category  punctuation dash) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   narrow #x2015)
+    (greek-iso8859-7   #xAF)   ; \e-F¯\e-A
+    ))
+(define-char
+  '((name              . "DOUBLE VERTICAL LINE")
+    (ucs               . #x2016)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x42)      ; \e$(@!B\e(B
+    (chinese-gb2312            #x21 #x2C)      ; \e$(A!,\e(B
+    (japanese-jisx0208         #x21 #x42)      ; \e$(B!B\e(B
+    (chinese-cns11643-1                #x22 #x5D)      ; \e$(G"]\e(B
+    ))
+(define-char
+  '((name              . "DOUBLE LOW LINE")
+    (ucs               . #x2017)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x0020 #x0333)
+    (hebrew-iso8859-8  #xDF)   ; \9b2]\e-Hß\9b0]\e-A
+    ))
+(define-char
+  '((name              . "LEFT SINGLE QUOTATION MARK")
+    (ucs               . #x2018)
+    (general-category  punctuation initial-quote) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x46)      ; \e$(@!F\e(B
+    (chinese-gb2312            #x21 #x2E)      ; \e$(A!.\e(B
+    (japanese-jisx0208         #x21 #x46)      ; \e$(B!F\e(B
+    (korean-ksc5601            #x21 #x2E)      ; \e$(C!.\e(B
+    (chinese-cns11643-1                #x21 #x64)      ; \e$(G!d\e(B
+    ))
+(define-char
+  '((name              . "RIGHT SINGLE QUOTATION MARK")
+    (ucs               . #x2019)
+    (general-category  punctuation final-quote) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x47)      ; \e$(@!G\e(B
+    (chinese-gb2312            #x21 #x2F)      ; \e$(A!/\e(B
+    (japanese-jisx0208         #x21 #x47)      ; \e$(B!G\e(B
+    (korean-ksc5601            #x21 #x2F)      ; \e$(C!/\e(B
+    (chinese-cns11643-1                #x21 #x65)      ; \e$(G!e\e(B
+    ))
+(define-char
+  '((name              . "SINGLE LOW-9 QUOTATION MARK")
+    (ucs               . #x201A)
+    (general-category  punctuation open) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINGLE HIGH-REVERSED-9 QUOTATION MARK")
+    (ucs               . #x201B)
+    (general-category  punctuation initial-quote) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFT DOUBLE QUOTATION MARK")
+    (ucs               . #x201C)
+    (general-category  punctuation initial-quote) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x48)      ; \e$(@!H\e(B
+    (chinese-gb2312            #x21 #x30)      ; \e$(A!0\e(B
+    (japanese-jisx0208         #x21 #x48)      ; \e$(B!H\e(B
+    (korean-ksc5601            #x21 #x30)      ; \e$(C!0\e(B
+    (chinese-cns11643-1                #x21 #x66)      ; \e$(G!f\e(B
+    ))
+(define-char
+  '((name              . "RIGHT DOUBLE QUOTATION MARK")
+    (ucs               . #x201D)
+    (general-category  punctuation final-quote) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x49)      ; \e$(@!I\e(B
+    (chinese-gb2312            #x21 #x31)      ; \e$(A!1\e(B
+    (japanese-jisx0208         #x21 #x49)      ; \e$(B!I\e(B
+    (korean-ksc5601            #x21 #x31)      ; \e$(C!1\e(B
+    (chinese-cns11643-1                #x21 #x67)      ; \e$(G!g\e(B
+    ))
+(define-char
+  '((name              . "DOUBLE LOW-9 QUOTATION MARK")
+    (ucs               . #x201E)
+    (general-category  punctuation open) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DOUBLE HIGH-REVERSED-9 QUOTATION MARK")
+    (ucs               . #x201F)
+    (general-category  punctuation initial-quote) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DAGGER")
+    (ucs               . #x2020)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208 #x22 #x77)      ; \e$(B"w\e(B
+    (korean-ksc5601    #x22 #x53)      ; \e$(C"S\e(B
+    ))
+(define-char
+  '((name              . "DOUBLE DAGGER")
+    (ucs               . #x2021)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208 #x22 #x78)      ; \e$(B"x\e(B
+    (korean-ksc5601    #x22 #x54)      ; \e$(C"T\e(B
+    ))
+(define-char
+  '((name              . "BULLET")
+    (ucs               . #x2022)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TRIANGULAR BULLET")
+    (ucs               . #x2023)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ONE DOT LEADER")
+    (ucs               . #x2024)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x002E)
+    ))
+(define-char
+  '((name              . "TWO DOT LEADER")
+    (ucs               . #x2025)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x002E #x002E)
+    (japanese-jisx0208-1978    #x21 #x45)      ; \e$(@!E\e(B
+    (japanese-jisx0208         #x21 #x45)      ; \e$(B!E\e(B
+    (korean-ksc5601            #x21 #x25)      ; \e$(C!%\e(B
+    (chinese-cns11643-1                #x21 #x2D)      ; \e$(G!-\e(B
+    ))
+(define-char
+  '((name              . "HORIZONTAL ELLIPSIS")
+    (ucs               . #x2026)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x002E #x002E #x002E)
+    (japanese-jisx0208-1978    #x21 #x44)      ; \e$(@!D\e(B
+    (chinese-gb2312            #x21 #x2D)      ; \e$(A!-\e(B
+    (japanese-jisx0208         #x21 #x44)      ; \e$(B!D\e(B
+    (korean-ksc5601            #x21 #x26)      ; \e$(C!&\e(B
+    (chinese-cns11643-1                #x21 #x2C)      ; \e$(G!,\e(B
+    ))
+(define-char
+  '((name              . "HYPHENATION POINT")
+    (ucs               . #x2027)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x21 #x31)     ; \e$(G!1\e(B
+    ))
+(define-char
+  '((name              . "LINE SEPARATOR")
+    (ucs               . #x2028)
+    (general-category  separator line) ; Normative Category
+    (bidi-category     . "WS")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "PARAGRAPH SEPARATOR")
+    (ucs               . #x2029)
+    (general-category  separator paragraph) ; Normative Category
+    (bidi-category     . "B")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFT-TO-RIGHT EMBEDDING")
+    (ucs               . #x202A)
+    (general-category  other format) ; Normative Category
+    (bidi-category     . "LRE")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHT-TO-LEFT EMBEDDING")
+    (ucs               . #x202B)
+    (general-category  other format) ; Normative Category
+    (bidi-category     . "RLE")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "POP DIRECTIONAL FORMATTING")
+    (ucs               . #x202C)
+    (general-category  other format) ; Normative Category
+    (bidi-category     . "PDF")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFT-TO-RIGHT OVERRIDE")
+    (ucs               . #x202D)
+    (general-category  other format) ; Normative Category
+    (bidi-category     . "LRO")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHT-TO-LEFT OVERRIDE")
+    (ucs               . #x202E)
+    (general-category  other format) ; Normative Category
+    (bidi-category     . "RLO")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "NARROW NO-BREAK SPACE")
+    (ucs               . #x202F)
+    (general-category  separator space) ; Normative Category
+    (bidi-category     . "WS")
+    (mirrored          . nil)
+    (->decomposition   noBreak #x0020)
+    ))
+(define-char
+  '((name              . "PER MILLE SIGN")
+    (ucs               . #x2030)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    (chinese-gb2312    #x21 #x6B)      ; \e$(A!k\e(B
+    (japanese-jisx0208 #x22 #x73)      ; \e$(B"s\e(B
+    (korean-ksc5601    #x22 #x36)      ; \e$(C"6\e(B
+    ))
+(define-char
+  '((name              . "PER TEN THOUSAND SIGN")
+    (ucs               . #x2031)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "PRIME")
+    (ucs               . #x2032)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x6C)      ; \e$(@!l\e(B
+    (chinese-gb2312            #x21 #x64)      ; \e$(A!d\e(B
+    (japanese-jisx0208         #x21 #x6C)      ; \e$(B!l\e(B
+    (korean-ksc5601            #x21 #x47)      ; \e$(C!G\e(B
+    (chinese-cns11643-1                #x21 #x6B)      ; \e$(G!k\e(B
+    ))
+(define-char
+  '((name              . "DOUBLE PRIME")
+    (ucs               . #x2033)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    (->decomposition   compat #x2032 #x2032)
+    (japanese-jisx0208-1978    #x21 #x6D)      ; \e$(@!m\e(B
+    (chinese-gb2312            #x21 #x65)      ; \e$(A!e\e(B
+    (japanese-jisx0208         #x21 #x6D)      ; \e$(B!m\e(B
+    (korean-ksc5601            #x21 #x48)      ; \e$(C!H\e(B
+    ))
+(define-char
+  '((name              . "TRIPLE PRIME")
+    (ucs               . #x2034)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    (->decomposition   compat #x2032 #x2032 #x2032)
+    ))
+(define-char
+  '((name              . "REVERSED PRIME")
+    (ucs               . #x2035)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x21 #x6A)     ; \e$(G!j\e(B
+    ))
+(define-char
+  '((name              . "REVERSED DOUBLE PRIME")
+    (ucs               . #x2036)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x2035 #x2035)
+    ))
+(define-char
+  '((name              . "REVERSED TRIPLE PRIME")
+    (ucs               . #x2037)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x2035 #x2035 #x2035)
+    ))
+(define-char
+  '((name              . "CARET")
+    (ucs               . #x2038)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SINGLE LEFT-POINTING ANGLE QUOTATION MARK")
+    (ucs               . #x2039)
+    (general-category  punctuation initial-quote) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "SINGLE RIGHT-POINTING ANGLE QUOTATION MARK")
+    (ucs               . #x203A)
+    (general-category  punctuation final-quote) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "REFERENCE MARK")
+    (ucs               . #x203B)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x22 #x28)      ; \e$(@"(\e(B
+    (chinese-gb2312            #x21 #x79)      ; \e$(A!y\e(B
+    (japanese-jisx0208         #x22 #x28)      ; \e$(B"(\e(B
+    (korean-ksc5601            #x21 #x58)      ; \e$(C!X\e(B
+    (chinese-cns11643-1                #x21 #x6F)      ; \e$(G!o\e(B
+    ))
+(define-char
+  '((name              . "DOUBLE EXCLAMATION MARK")
+    (ucs               . #x203C)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x0021 #x0021)
+    ))
+(define-char
+  '((name              . "INTERROBANG")
+    (ucs               . #x203D)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OVERLINE")
+    (ucs               . #x203E)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x0020 #x0305)
+    (latin-jisx0201    #x7E)   ; \e(J~\e(B
+    (hebrew-iso8859-8  #xAF)   ; \9b2]\e-H¯\9b0]\e-A
+    (japanese-jisx0208 #x21 #x31)      ; \e$(B!1\e(B
+    ))
+(define-char
+  '((name              . "FULLWIDTH OVERLINE")
+    (->ucs             . #x203E)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   wide #x203E)
+    (japanese-jisx0208-1978    #x21 #x31)      ; \e$(B!1\e(B
+    (japanese-jisx0208         #x21 #x31)      ; \e$(B!1\e(B
+    (chinese-cns11643-1                #x22 #x23)      ; \e$(G"#\e(B
+    ))
+(define-char
+  '((name              . "UNDERTIE")
+    (ucs               . #x203F)
+    (general-category  punctuation connector) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (iso-10646-comment . "Enotikon")
+    ))
+(define-char
+  '((name              . "CHARACTER TIE")
+    (ucs               . #x2040)
+    (general-category  punctuation connector) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CARET INSERTION POINT")
+    (ucs               . #x2041)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ASTERISM")
+    (ucs               . #x2042)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HYPHEN BULLET")
+    (ucs               . #x2043)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "FRACTION SLASH")
+    (ucs               . #x2044)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x22 #x5F)     ; \e$(G"_\e(B
+    ))
+(define-char
+  '((name              . "LEFT SQUARE BRACKET WITH QUILL")
+    (ucs               . #x2045)
+    (general-category  punctuation open) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "RIGHT SQUARE BRACKET WITH QUILL")
+    (ucs               . #x2046)
+    (general-category  punctuation close) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "QUESTION EXCLAMATION MARK")
+    (ucs               . #x2048)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x003F #x0021)
+    ))
+(define-char
+  '((name              . "EXCLAMATION QUESTION MARK")
+    (ucs               . #x2049)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x0021 #x003F)
+    ))
+(define-char
+  '((name              . "TIRONIAN SIGN ET")
+    (ucs               . #x204A)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "REVERSED PILCROW SIGN")
+    (ucs               . #x204B)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK LEFTWARDS BULLET")
+    (ucs               . #x204C)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK RIGHTWARDS BULLET")
+    (ucs               . #x204D)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "INHIBIT SYMMETRIC SWAPPING")
+    (ucs               . #x206A)
+    (general-category  other format) ; Normative Category
+    (bidi-category     . "BN")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ACTIVATE SYMMETRIC SWAPPING")
+    (ucs               . #x206B)
+    (general-category  other format) ; Normative Category
+    (bidi-category     . "BN")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "INHIBIT ARABIC FORM SHAPING")
+    (ucs               . #x206C)
+    (general-category  other format) ; Normative Category
+    (bidi-category     . "BN")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ACTIVATE ARABIC FORM SHAPING")
+    (ucs               . #x206D)
+    (general-category  other format) ; Normative Category
+    (bidi-category     . "BN")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "NATIONAL DIGIT SHAPES")
+    (ucs               . #x206E)
+    (general-category  other format) ; Normative Category
+    (bidi-category     . "BN")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "NOMINAL DIGIT SHAPES")
+    (ucs               . #x206F)
+    (general-category  other format) ; Normative Category
+    (bidi-category     . "BN")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u02070-Superscripts.el b/lisp/utf-2000/u02070-Superscripts.el
new file mode 100644 (file)
index 0000000..ac2b8ec
--- /dev/null
@@ -0,0 +1,146 @@
+(define-char
+  '((name              . "SUPERSCRIPT ZERO")
+    (ucs               . #x2070)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 0)
+    (digit-value        . 0)
+    (numeric-value      . 0)
+    (->decomposition   super #x0030)
+    ))
+(define-char
+  '((name              . "SUPERSCRIPT FOUR")
+    (ucs               . #x2074)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 4)
+    (digit-value        . 4)
+    (numeric-value      . 4)
+    (->decomposition   super #x0034)
+    ))
+(define-char
+  '((name              . "FULLWIDTH SUPERSCRIPT FOUR")
+    (->ucs             . #x2074)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 4)
+    (digit-value        . 4)
+    (numeric-value      . 4)
+    (->decomposition   wide #x2074)
+    (korean-ksc5601    #x29 #x79)      ; \e$(C)y\e(B
+    ))
+(define-char
+  '((name              . "SUPERSCRIPT FIVE")
+    (ucs               . #x2075)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 5)
+    (digit-value        . 5)
+    (numeric-value      . 5)
+    (->decomposition   super #x0035)
+    ))
+(define-char
+  '((name              . "SUPERSCRIPT SIX")
+    (ucs               . #x2076)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 6)
+    (digit-value        . 6)
+    (numeric-value      . 6)
+    (->decomposition   super #x0036)
+    ))
+(define-char
+  '((name              . "SUPERSCRIPT SEVEN")
+    (ucs               . #x2077)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 7)
+    (digit-value        . 7)
+    (numeric-value      . 7)
+    (->decomposition   super #x0037)
+    ))
+(define-char
+  '((name              . "SUPERSCRIPT EIGHT")
+    (ucs               . #x2078)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 8)
+    (digit-value        . 8)
+    (numeric-value      . 8)
+    (->decomposition   super #x0038)
+    ))
+(define-char
+  '((name              . "SUPERSCRIPT NINE")
+    (ucs               . #x2079)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 9)
+    (digit-value        . 9)
+    (numeric-value      . 9)
+    (->decomposition   super #x0039)
+    ))
+(define-char
+  '((name              . "SUPERSCRIPT PLUS SIGN")
+    (ucs               . #x207A)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    (->decomposition   super #x002B)
+    ))
+(define-char
+  '((name              . "SUPERSCRIPT MINUS")
+    (ucs               . #x207B)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    (->decomposition   super #x2212)
+    ))
+(define-char
+  '((name              . "SUPERSCRIPT EQUALS SIGN")
+    (ucs               . #x207C)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   super #x003D)
+    ))
+(define-char
+  '((name              . "SUPERSCRIPT LEFT PARENTHESIS")
+    (ucs               . #x207D)
+    (general-category  punctuation open) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   super #x0028)
+    ))
+(define-char
+  '((name              . "SUPERSCRIPT RIGHT PARENTHESIS")
+    (ucs               . #x207E)
+    (general-category  punctuation close) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   super #x0029)
+    ))
+(define-char
+  '((name              . "SUPERSCRIPT LATIN SMALL LETTER N")
+    (ucs               . #x207F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   super #x006E)
+    ))
+(define-char
+  '((name              . "FULLWIDTH SUPERSCRIPT LATIN SMALL LETTER N")
+    (->ucs             . #x207F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   wide #x207F)
+    (korean-ksc5601    #x29 #x7A)      ; \e$(C)z\e(B
+    ))
diff --git a/lisp/utf-2000/u02080-Subscripts.el b/lisp/utf-2000/u02080-Subscripts.el
new file mode 100644 (file)
index 0000000..9683f02
--- /dev/null
@@ -0,0 +1,198 @@
+(define-char
+  '((name              . "SUBSCRIPT ZERO")
+    (ucs               . #x2080)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 0)
+    (digit-value        . 0)
+    (numeric-value      . 0)
+    (->decomposition   sub #x0030)
+    ))
+(define-char
+  '((name              . "SUBSCRIPT ONE")
+    (ucs               . #x2081)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 1)
+    (digit-value        . 1)
+    (numeric-value      . 1)
+    (->decomposition   sub #x0031)
+    ))
+(define-char
+  '((name              . "FULLWIDTH SUBSCRIPT ONE")
+    (->ucs             . #x2081)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 1)
+    (digit-value        . 1)
+    (numeric-value      . 1)
+    (->decomposition   wide #x2081)
+    (korean-ksc5601    #x29 #x7B)      ; \e$(C){\e(B
+    ))
+(define-char
+  '((name              . "SUBSCRIPT TWO")
+    (ucs               . #x2082)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 2)
+    (digit-value        . 2)
+    (numeric-value      . 2)
+    (->decomposition   sub #x0032)
+    ))
+(define-char
+  '((name              . "FULLWIDTH SUBSCRIPT TWO")
+    (->ucs             . #x2082)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 2)
+    (digit-value        . 2)
+    (numeric-value      . 2)
+    (->decomposition   wide #x2082)
+    (korean-ksc5601    #x29 #x7C)      ; \e$(C)|\e(B
+    ))
+(define-char
+  '((name              . "SUBSCRIPT THREE")
+    (ucs               . #x2083)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 3)
+    (digit-value        . 3)
+    (numeric-value      . 3)
+    (->decomposition   sub #x0033)
+    ))
+(define-char
+  '((name              . "FULLWIDTH SUBSCRIPT THREE")
+    (->ucs             . #x2083)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 3)
+    (digit-value        . 3)
+    (numeric-value      . 3)
+    (->decomposition   wide #x2083)
+    (korean-ksc5601    #x29 #x7D)      ; \e$(C)}\e(B
+    ))
+(define-char
+  '((name              . "SUBSCRIPT FOUR")
+    (ucs               . #x2084)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 4)
+    (digit-value        . 4)
+    (numeric-value      . 4)
+    (->decomposition   sub #x0034)
+    ))
+(define-char
+  '((name              . "FULLWIDTH SUBSCRIPT FOUR")
+    (->ucs             . #x2084)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 4)
+    (digit-value        . 4)
+    (numeric-value      . 4)
+    (->decomposition   wide #x2084)
+    (korean-ksc5601    #x29 #x7E)      ; \e$(C)~\e(B
+    ))
+(define-char
+  '((name              . "SUBSCRIPT FIVE")
+    (ucs               . #x2085)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 5)
+    (digit-value        . 5)
+    (numeric-value      . 5)
+    (->decomposition   sub #x0035)
+    ))
+(define-char
+  '((name              . "SUBSCRIPT SIX")
+    (ucs               . #x2086)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 6)
+    (digit-value        . 6)
+    (numeric-value      . 6)
+    (->decomposition   sub #x0036)
+    ))
+(define-char
+  '((name              . "SUBSCRIPT SEVEN")
+    (ucs               . #x2087)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 7)
+    (digit-value        . 7)
+    (numeric-value      . 7)
+    (->decomposition   sub #x0037)
+    ))
+(define-char
+  '((name              . "SUBSCRIPT EIGHT")
+    (ucs               . #x2088)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 8)
+    (digit-value        . 8)
+    (numeric-value      . 8)
+    (->decomposition   sub #x0038)
+    ))
+(define-char
+  '((name              . "SUBSCRIPT NINE")
+    (ucs               . #x2089)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (decimal-digit-value . 9)
+    (digit-value        . 9)
+    (numeric-value      . 9)
+    (->decomposition   sub #x0039)
+    ))
+(define-char
+  '((name              . "SUBSCRIPT PLUS SIGN")
+    (ucs               . #x208A)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    (->decomposition   sub #x002B)
+    ))
+(define-char
+  '((name              . "SUBSCRIPT MINUS")
+    (ucs               . #x208B)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    (->decomposition   sub #x2212)
+    ))
+(define-char
+  '((name              . "SUBSCRIPT EQUALS SIGN")
+    (ucs               . #x208C)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   sub #x003D)
+    ))
+(define-char
+  '((name              . "SUBSCRIPT LEFT PARENTHESIS")
+    (ucs               . #x208D)
+    (general-category  punctuation open) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   sub #x0028)
+    ))
+(define-char
+  '((name              . "SUBSCRIPT RIGHT PARENTHESIS")
+    (ucs               . #x208E)
+    (general-category  punctuation close) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   sub #x0029)
+    ))
diff --git a/lisp/utf-2000/u020A0-Currency-Symbols.el b/lisp/utf-2000/u020A0-Currency-Symbols.el
new file mode 100644 (file)
index 0000000..c74b201
--- /dev/null
@@ -0,0 +1,113 @@
+(define-char
+  '((name              . "EURO-CURRENCY SIGN")
+    (ucs               . #x20A0)
+    (general-category  symbol currency) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COLON SIGN")
+    (ucs               . #x20A1)
+    (general-category  symbol currency) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CRUZEIRO SIGN")
+    (ucs               . #x20A2)
+    (general-category  symbol currency) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "FRENCH FRANC SIGN")
+    (ucs               . #x20A3)
+    (general-category  symbol currency) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LIRA SIGN")
+    (ucs               . #x20A4)
+    (general-category  symbol currency) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MILL SIGN")
+    (ucs               . #x20A5)
+    (general-category  symbol currency) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "NAIRA SIGN")
+    (ucs               . #x20A6)
+    (general-category  symbol currency) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "PESETA SIGN")
+    (ucs               . #x20A7)
+    (general-category  symbol currency) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RUPEE SIGN")
+    (ucs               . #x20A8)
+    (general-category  symbol currency) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    (->decomposition   compat #x0052 #x0073)
+    ))
+(define-char
+  '((name              . "WON SIGN")
+    (ucs               . #x20A9)
+    (general-category  symbol currency) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "NEW SHEQEL SIGN")
+    (ucs               . #x20AA)
+    (general-category  symbol currency) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DONG SIGN")
+    (ucs               . #x20AB)
+    (general-category  symbol currency) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "EURO SIGN")
+    (ucs               . #x20AC)
+    (general-category  symbol currency) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KIP SIGN")
+    (ucs               . #x20AD)
+    (general-category  symbol currency) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TUGRIK SIGN")
+    (ucs               . #x20AE)
+    (general-category  symbol currency) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DRACHMA SIGN")
+    (ucs               . #x20AF)
+    (general-category  symbol currency) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u020D0-Combining-Diacritical-Marks-for-Symbols.el b/lisp/utf-2000/u020D0-Combining-Diacritical-Marks-for-Symbols.el
new file mode 100644 (file)
index 0000000..3d777d0
--- /dev/null
@@ -0,0 +1,140 @@
+(define-char
+  '((name              . "COMBINING LEFT HARPOON ABOVE")
+    (ucs               . #x20D0)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING RIGHT HARPOON ABOVE")
+    (ucs               . #x20D1)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING LONG VERTICAL LINE OVERLAY")
+    (ucs               . #x20D2)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING SHORT VERTICAL LINE OVERLAY")
+    (ucs               . #x20D3)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING ANTICLOCKWISE ARROW ABOVE")
+    (ucs               . #x20D4)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING CLOCKWISE ARROW ABOVE")
+    (ucs               . #x20D5)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING LEFT ARROW ABOVE")
+    (ucs               . #x20D6)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING RIGHT ARROW ABOVE")
+    (ucs               . #x20D7)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING RING OVERLAY")
+    (ucs               . #x20D8)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING CLOCKWISE RING OVERLAY")
+    (ucs               . #x20D9)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING ANTICLOCKWISE RING OVERLAY")
+    (ucs               . #x20DA)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING THREE DOTS ABOVE")
+    (ucs               . #x20DB)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING FOUR DOTS ABOVE")
+    (ucs               . #x20DC)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING ENCLOSING CIRCLE")
+    (ucs               . #x20DD)
+    (general-category  mark enclosing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING ENCLOSING SQUARE")
+    (ucs               . #x20DE)
+    (general-category  mark enclosing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING ENCLOSING DIAMOND")
+    (ucs               . #x20DF)
+    (general-category  mark enclosing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING ENCLOSING CIRCLE BACKSLASH")
+    (ucs               . #x20E0)
+    (general-category  mark enclosing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING LEFT RIGHT ARROW ABOVE")
+    (ucs               . #x20E1)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING ENCLOSING SCREEN")
+    (ucs               . #x20E2)
+    (general-category  mark enclosing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMBINING ENCLOSING KEYCAP")
+    (ucs               . #x20E3)
+    (general-category  mark enclosing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u02100-Letterlike-Symbols.el b/lisp/utf-2000/u02100-Letterlike-Symbols.el
new file mode 100644 (file)
index 0000000..1b71d68
--- /dev/null
@@ -0,0 +1,488 @@
+(define-char
+  '((name              . "ACCOUNT OF")
+    (ucs               . #x2100)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x0061 #x002F #x0063)
+    ))
+(define-char
+  '((name              . "ADDRESSED TO THE SUBJECT")
+    (ucs               . #x2101)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x0061 #x002F #x0073)
+    ))
+(define-char
+  '((name              . "DOUBLE-STRUCK CAPITAL C")
+    (ucs               . #x2102)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x0043)
+    ))
+(define-char
+  '((name              . "DEGREE CELSIUS")
+    (ucs               . #x2103)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x00B0 #x0043)
+    (japanese-jisx0208-1978    #x21 #x6E)      ; \e$(@!n\e(B
+    (chinese-gb2312            #x21 #x66)      ; \e$(A!f\e(B
+    (japanese-jisx0208         #x21 #x6E)      ; \e$(B!n\e(B
+    (korean-ksc5601            #x21 #x49)      ; \e$(C!I\e(B
+    (chinese-cns11643-1                #x22 #x6A)      ; \e$(G"j\e(B
+    ))
+(define-char
+  '((name              . "CENTRE LINE SYMBOL")
+    (ucs               . #x2104)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CARE OF")
+    (ucs               . #x2105)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x0063 #x002F #x006F)
+    (chinese-cns11643-1 #x22 #x22)     ; \e$(G""\e(B
+    ))
+(define-char
+  '((name              . "CADA UNA")
+    (ucs               . #x2106)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x0063 #x002F #x0075)
+    ))
+(define-char
+  '((name              . "EULER CONSTANT")
+    (ucs               . #x2107)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0190)
+    ))
+(define-char
+  '((name              . "SCRUPLE")
+    (ucs               . #x2108)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DEGREE FAHRENHEIT")
+    (ucs               . #x2109)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x00B0 #x0046)
+    (korean-ksc5601    #x22 #x35)      ; \e$(C"5\e(B
+    (chinese-cns11643-1 #x22 #x6B)     ; \e$(G"k\e(B
+    ))
+(define-char
+  '((name              . "SCRIPT SMALL G")
+    (ucs               . #x210A)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x0067)
+    ))
+(define-char
+  '((name              . "SCRIPT CAPITAL H")
+    (ucs               . #x210B)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x0048)
+    ))
+(define-char
+  '((name              . "BLACK-LETTER CAPITAL H")
+    (ucs               . #x210C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x0048)
+    ))
+(define-char
+  '((name              . "DOUBLE-STRUCK CAPITAL H")
+    (ucs               . #x210D)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x0048)
+    ))
+(define-char
+  '((name              . "PLANCK CONSTANT")
+    (ucs               . #x210E)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x0068)
+    ))
+(define-char
+  '((name              . "PLANCK CONSTANT OVER TWO PI")
+    (ucs               . #x210F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x0127)
+    ))
+(define-char
+  '((name              . "SCRIPT CAPITAL I")
+    (ucs               . #x2110)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x0049)
+    ))
+(define-char
+  '((name              . "BLACK-LETTER CAPITAL I")
+    (ucs               . #x2111)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x0049)
+    ))
+(define-char
+  '((name              . "SCRIPT CAPITAL L")
+    (ucs               . #x2112)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x004C)
+    ))
+(define-char
+  '((name              . "SCRIPT SMALL L")
+    (ucs               . #x2113)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x006C)
+    (korean-ksc5601    #x27 #x24)      ; \e$(C'$\e(B
+    ))
+(define-char
+  '((name              . "L B BAR SYMBOL")
+    (ucs               . #x2114)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DOUBLE-STRUCK CAPITAL N")
+    (ucs               . #x2115)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x004E)
+    ))
+(define-char
+  '((name              . "NUMERO SIGN")
+    (ucs               . #x2116)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x004E #x006F)
+    (chinese-gb2312    #x21 #x6D)      ; \e$(A!m\e(B
+    (korean-ksc5601    #x22 #x60)      ; \e$(C"`\e(B
+    (japanese-jisx0212 #x22 #x71)      ; \e$(D"q\e(B
+    ))
+(define-char
+  '((name              . "HALFWIDTH NUMERO SIGN")
+    (->ucs             . #x2116)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   narrow #x2116)
+    (cyrillic-iso8859-5 #xF0)  ; \e-Lð\e-A
+    ))
+(define-char
+  '((name              . "SOUND RECORDING COPYRIGHT")
+    (ucs               . #x2117)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SCRIPT CAPITAL P")
+    (ucs               . #x2118)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DOUBLE-STRUCK CAPITAL P")
+    (ucs               . #x2119)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x0050)
+    ))
+(define-char
+  '((name              . "DOUBLE-STRUCK CAPITAL Q")
+    (ucs               . #x211A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x0051)
+    ))
+(define-char
+  '((name              . "SCRIPT CAPITAL R")
+    (ucs               . #x211B)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x0052)
+    ))
+(define-char
+  '((name              . "BLACK-LETTER CAPITAL R")
+    (ucs               . #x211C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x0052)
+    ))
+(define-char
+  '((name              . "DOUBLE-STRUCK CAPITAL R")
+    (ucs               . #x211D)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x0052)
+    ))
+(define-char
+  '((name              . "PRESCRIPTION TAKE")
+    (ucs               . #x211E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RESPONSE")
+    (ucs               . #x211F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SERVICE MARK")
+    (ucs               . #x2120)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   super #x0053 #x004D)
+    ))
+(define-char
+  '((name              . "TELEPHONE SIGN")
+    (ucs               . #x2121)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x0054 #x0045 #x004C)
+    (korean-ksc5601    #x22 #x65)      ; \e$(C"e\e(B
+    ))
+(define-char
+  '((name              . "TRADE MARK SIGN")
+    (ucs               . #x2122)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   super #x0054 #x004D)
+    (korean-ksc5601    #x22 #x62)      ; \e$(C"b\e(B
+    (japanese-jisx0212 #x22 #x6F)      ; \e$(D"o\e(B
+    ))
+(define-char
+  '((name              . "VERSICLE")
+    (ucs               . #x2123)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DOUBLE-STRUCK CAPITAL Z")
+    (ucs               . #x2124)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x005A)
+    ))
+(define-char
+  '((name              . "OUNCE SIGN")
+    (ucs               . #x2125)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OHM SIGN")
+    (ucs               . #x2126)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x03A9)
+    (->lowercase       #x03C9)
+    (korean-ksc5601    #x27 #x59)      ; \e$(C'Y\e(B
+    ))
+(define-char
+  '((name              . "INVERTED OHM SIGN")
+    (ucs               . #x2127)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK-LETTER CAPITAL Z")
+    (ucs               . #x2128)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x005A)
+    ))
+(define-char
+  '((name              . "TURNED GREEK SMALL LETTER IOTA")
+    (ucs               . #x2129)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KELVIN SIGN")
+    (ucs               . #x212A)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x004B)
+    (->lowercase       #x006B)
+    ))
+(define-char
+  '((name              . "ANGSTROM SIGN")
+    (ucs               . #x212B)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x00C5)
+    (->lowercase       #x00E5)
+    (japanese-jisx0208 #x22 #x72)      ; \e$(B"r\e(B
+    (korean-ksc5601    #x21 #x4A)      ; \e$(C!J\e(B
+    ))
+(define-char
+  '((name              . "SCRIPT CAPITAL B")
+    (ucs               . #x212C)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x0042)
+    ))
+(define-char
+  '((name              . "BLACK-LETTER CAPITAL C")
+    (ucs               . #x212D)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x0043)
+    ))
+(define-char
+  '((name              . "ESTIMATED SYMBOL")
+    (ucs               . #x212E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SCRIPT SMALL E")
+    (ucs               . #x212F)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x0065)
+    ))
+(define-char
+  '((name              . "SCRIPT CAPITAL E")
+    (ucs               . #x2130)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x0045)
+    ))
+(define-char
+  '((name              . "SCRIPT CAPITAL F")
+    (ucs               . #x2131)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x0046)
+    ))
+(define-char
+  '((name              . "TURNED CAPITAL F")
+    (ucs               . #x2132)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SCRIPT CAPITAL M")
+    (ucs               . #x2133)
+    (general-category  letter uppercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x004D)
+    ))
+(define-char
+  '((name              . "SCRIPT SMALL O")
+    (ucs               . #x2134)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x006F)
+    ))
+(define-char
+  '((name              . "ALEF SYMBOL")
+    (ucs               . #x2135)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x05D0)
+    ))
+(define-char
+  '((name              . "BET SYMBOL")
+    (ucs               . #x2136)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x05D1)
+    ))
+(define-char
+  '((name              . "GIMEL SYMBOL")
+    (ucs               . #x2137)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x05D2)
+    ))
+(define-char
+  '((name              . "DALET SYMBOL")
+    (ucs               . #x2138)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x05D3)
+    ))
+(define-char
+  '((name              . "INFORMATION SOURCE")
+    (ucs               . #x2139)
+    (general-category  letter lowercase) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   font #x0069)
+    ))
+(define-char
+  '((name              . "ROTATED CAPITAL Q")
+    (ucs               . #x213A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u02150-Number-Forms.el b/lisp/utf-2000/u02150-Number-Forms.el
new file mode 100644 (file)
index 0000000..143f91e
--- /dev/null
@@ -0,0 +1,542 @@
+(define-char
+  '((name              . "VULGAR FRACTION ONE THIRD")
+    (ucs               . #x2153)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (numeric-value     . 1/3)
+    (->decomposition   fraction #x0031 #x2044 #x0033)
+    (korean-ksc5601    #x28 #x77)      ; \e$(C(w\e(B
+    ))
+(define-char
+  '((name              . "VULGAR FRACTION TWO THIRDS")
+    (ucs               . #x2154)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (numeric-value     . 2/3)
+    (->decomposition   fraction #x0032 #x2044 #x0033)
+    (korean-ksc5601    #x28 #x78)      ; \e$(C(x\e(B
+    ))
+(define-char
+  '((name              . "VULGAR FRACTION ONE FIFTH")
+    (ucs               . #x2155)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (numeric-value     . 1/5)
+    (->decomposition   fraction #x0031 #x2044 #x0035)
+    ))
+(define-char
+  '((name              . "VULGAR FRACTION TWO FIFTHS")
+    (ucs               . #x2156)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (numeric-value     . 2/5)
+    (->decomposition   fraction #x0032 #x2044 #x0035)
+    ))
+(define-char
+  '((name              . "VULGAR FRACTION THREE FIFTHS")
+    (ucs               . #x2157)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (numeric-value     . 3/5)
+    (->decomposition   fraction #x0033 #x2044 #x0035)
+    ))
+(define-char
+  '((name              . "VULGAR FRACTION FOUR FIFTHS")
+    (ucs               . #x2158)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (numeric-value     . 4/5)
+    (->decomposition   fraction #x0034 #x2044 #x0035)
+    ))
+(define-char
+  '((name              . "VULGAR FRACTION ONE SIXTH")
+    (ucs               . #x2159)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (numeric-value     . 1/6)
+    (->decomposition   fraction #x0031 #x2044 #x0036)
+    ))
+(define-char
+  '((name              . "VULGAR FRACTION FIVE SIXTHS")
+    (ucs               . #x215A)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (numeric-value     . 5/6)
+    (->decomposition   fraction #x0035 #x2044 #x0036)
+    ))
+(define-char
+  '((name              . "VULGAR FRACTION ONE EIGHTH")
+    (ucs               . #x215B)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (numeric-value     . 1/8)
+    (->decomposition   fraction #x0031 #x2044 #x0038)
+    (korean-ksc5601    #x28 #x7B)      ; \e$(C({\e(B
+    ))
+(define-char
+  '((name              . "VULGAR FRACTION THREE EIGHTHS")
+    (ucs               . #x215C)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (numeric-value     . 3/8)
+    (->decomposition   fraction #x0033 #x2044 #x0038)
+    (korean-ksc5601    #x28 #x7C)      ; \e$(C(|\e(B
+    ))
+(define-char
+  '((name              . "VULGAR FRACTION FIVE EIGHTHS")
+    (ucs               . #x215D)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (numeric-value     . 5/8)
+    (->decomposition   fraction #x0035 #x2044 #x0038)
+    (korean-ksc5601    #x28 #x7D)      ; \e$(C(}\e(B
+    ))
+(define-char
+  '((name              . "VULGAR FRACTION SEVEN EIGHTHS")
+    (ucs               . #x215E)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (numeric-value     . 7/8)
+    (->decomposition   fraction #x0037 #x2044 #x0038)
+    (korean-ksc5601    #x28 #x7E)      ; \e$(C(~\e(B
+    ))
+(define-char
+  '((name              . "FRACTION NUMERATOR ONE")
+    (ucs               . #x215F)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (numeric-value     . 1)
+    (->decomposition   fraction #x0031 #x2044)
+    ))
+(define-char
+  '((name              . "ROMAN NUMERAL ONE")
+    (ucs               . #x2160)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 1)
+    (->decomposition   compat #x0049)
+    (->lowercase       #x2170)
+    (chinese-gb2312    #x22 #x71)      ; \e$(A"q\e(B
+    (korean-ksc5601    #x25 #x30)      ; \e$(C%0\e(B
+    (chinese-cns11643-1 #x24 #x2B)     ; \e$(G$+\e(B
+    ))
+(define-char
+  '((name              . "ROMAN NUMERAL TWO")
+    (ucs               . #x2161)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 2)
+    (->decomposition   compat #x0049 #x0049)
+    (->lowercase       #x2171)
+    (chinese-gb2312    #x22 #x72)      ; \e$(A"r\e(B
+    (korean-ksc5601    #x25 #x31)      ; \e$(C%1\e(B
+    (chinese-cns11643-1 #x24 #x2C)     ; \e$(G$,\e(B
+    ))
+(define-char
+  '((name              . "ROMAN NUMERAL THREE")
+    (ucs               . #x2162)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 3)
+    (->decomposition   compat #x0049 #x0049 #x0049)
+    (->lowercase       #x2172)
+    (chinese-gb2312    #x22 #x73)      ; \e$(A"s\e(B
+    (korean-ksc5601    #x25 #x32)      ; \e$(C%2\e(B
+    (chinese-cns11643-1 #x24 #x2D)     ; \e$(G$-\e(B
+    ))
+(define-char
+  '((name              . "ROMAN NUMERAL FOUR")
+    (ucs               . #x2163)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 4)
+    (->decomposition   compat #x0049 #x0056)
+    (->lowercase       #x2173)
+    (chinese-gb2312    #x22 #x74)      ; \e$(A"t\e(B
+    (korean-ksc5601    #x25 #x33)      ; \e$(C%3\e(B
+    (chinese-cns11643-1 #x24 #x2E)     ; \e$(G$.\e(B
+    ))
+(define-char
+  '((name              . "ROMAN NUMERAL FIVE")
+    (ucs               . #x2164)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 5)
+    (->decomposition   compat #x0056)
+    (->lowercase       #x2174)
+    (chinese-gb2312    #x22 #x75)      ; \e$(A"u\e(B
+    (korean-ksc5601    #x25 #x34)      ; \e$(C%4\e(B
+    (chinese-cns11643-1 #x24 #x2F)     ; \e$(G$/\e(B
+    ))
+(define-char
+  '((name              . "ROMAN NUMERAL SIX")
+    (ucs               . #x2165)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 6)
+    (->decomposition   compat #x0056 #x0049)
+    (->lowercase       #x2175)
+    (chinese-gb2312    #x22 #x76)      ; \e$(A"v\e(B
+    (korean-ksc5601    #x25 #x35)      ; \e$(C%5\e(B
+    (chinese-cns11643-1 #x24 #x30)     ; \e$(G$0\e(B
+    ))
+(define-char
+  '((name              . "ROMAN NUMERAL SEVEN")
+    (ucs               . #x2166)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 7)
+    (->decomposition   compat #x0056 #x0049 #x0049)
+    (->lowercase       #x2176)
+    (chinese-gb2312    #x22 #x77)      ; \e$(A"w\e(B
+    (korean-ksc5601    #x25 #x36)      ; \e$(C%6\e(B
+    (chinese-cns11643-1 #x24 #x31)     ; \e$(G$1\e(B
+    ))
+(define-char
+  '((name              . "ROMAN NUMERAL EIGHT")
+    (ucs               . #x2167)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 8)
+    (->decomposition   compat #x0056 #x0049 #x0049 #x0049)
+    (->lowercase       #x2177)
+    (chinese-gb2312    #x22 #x78)      ; \e$(A"x\e(B
+    (korean-ksc5601    #x25 #x37)      ; \e$(C%7\e(B
+    (chinese-cns11643-1 #x24 #x32)     ; \e$(G$2\e(B
+    ))
+(define-char
+  '((name              . "ROMAN NUMERAL NINE")
+    (ucs               . #x2168)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 9)
+    (->decomposition   compat #x0049 #x0058)
+    (->lowercase       #x2178)
+    (chinese-gb2312    #x22 #x79)      ; \e$(A"y\e(B
+    (korean-ksc5601    #x25 #x38)      ; \e$(C%8\e(B
+    (chinese-cns11643-1 #x24 #x33)     ; \e$(G$3\e(B
+    ))
+(define-char
+  '((name              . "ROMAN NUMERAL TEN")
+    (ucs               . #x2169)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 10)
+    (->decomposition   compat #x0058)
+    (->lowercase       #x2179)
+    (chinese-gb2312    #x22 #x7A)      ; \e$(A"z\e(B
+    (korean-ksc5601    #x25 #x39)      ; \e$(C%9\e(B
+    (chinese-cns11643-1 #x24 #x34)     ; \e$(G$4\e(B
+    ))
+(define-char
+  '((name              . "ROMAN NUMERAL ELEVEN")
+    (ucs               . #x216A)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 11)
+    (->decomposition   compat #x0058 #x0049)
+    (->lowercase       #x217A)
+    (chinese-gb2312    #x22 #x7B)      ; \e$(A"{\e(B
+    ))
+(define-char
+  '((name              . "ROMAN NUMERAL TWELVE")
+    (ucs               . #x216B)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 12)
+    (->decomposition   compat #x0058 #x0049 #x0049)
+    (->lowercase       #x217B)
+    (chinese-gb2312    #x22 #x7C)      ; \e$(A"|\e(B
+    ))
+(define-char
+  '((name              . "ROMAN NUMERAL FIFTY")
+    (ucs               . #x216C)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 50)
+    (->decomposition   compat #x004C)
+    (->lowercase       #x217C)
+    ))
+(define-char
+  '((name              . "ROMAN NUMERAL ONE HUNDRED")
+    (ucs               . #x216D)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 100)
+    (->decomposition   compat #x0043)
+    (->lowercase       #x217D)
+    ))
+(define-char
+  '((name              . "ROMAN NUMERAL FIVE HUNDRED")
+    (ucs               . #x216E)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 500)
+    (->decomposition   compat #x0044)
+    (->lowercase       #x217E)
+    ))
+(define-char
+  '((name              . "ROMAN NUMERAL ONE THOUSAND")
+    (ucs               . #x216F)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 1000)
+    (->decomposition   compat #x004D)
+    (->lowercase       #x217F)
+    ))
+(define-char
+  '((name              . "SMALL ROMAN NUMERAL ONE")
+    (ucs               . #x2170)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 1)
+    (->decomposition   compat #x0069)
+    (->uppercase       #x2160)
+    (->titlecase       #x2160)
+    (korean-ksc5601    #x25 #x21)      ; \e$(C%!\e(B
+    (chinese-cns11643-1 #x26 #x35)     ; \e$(G&5\e(B
+    ))
+(define-char
+  '((name              . "SMALL ROMAN NUMERAL TWO")
+    (ucs               . #x2171)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 2)
+    (->decomposition   compat #x0069 #x0069)
+    (->uppercase       #x2161)
+    (->titlecase       #x2161)
+    (korean-ksc5601    #x25 #x22)      ; \e$(C%"\e(B
+    (chinese-cns11643-1 #x26 #x36)     ; \e$(G&6\e(B
+    ))
+(define-char
+  '((name              . "SMALL ROMAN NUMERAL THREE")
+    (ucs               . #x2172)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 3)
+    (->decomposition   compat #x0069 #x0069 #x0069)
+    (->uppercase       #x2162)
+    (->titlecase       #x2162)
+    (korean-ksc5601    #x25 #x23)      ; \e$(C%#\e(B
+    (chinese-cns11643-1 #x26 #x37)     ; \e$(G&7\e(B
+    ))
+(define-char
+  '((name              . "SMALL ROMAN NUMERAL FOUR")
+    (ucs               . #x2173)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 4)
+    (->decomposition   compat #x0069 #x0076)
+    (->uppercase       #x2163)
+    (->titlecase       #x2163)
+    (korean-ksc5601    #x25 #x24)      ; \e$(C%$\e(B
+    (chinese-cns11643-1 #x26 #x38)     ; \e$(G&8\e(B
+    ))
+(define-char
+  '((name              . "SMALL ROMAN NUMERAL FIVE")
+    (ucs               . #x2174)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 5)
+    (->decomposition   compat #x0076)
+    (->uppercase       #x2164)
+    (->titlecase       #x2164)
+    (korean-ksc5601    #x25 #x25)      ; \e$(C%%\e(B
+    (chinese-cns11643-1 #x26 #x39)     ; \e$(G&9\e(B
+    ))
+(define-char
+  '((name              . "SMALL ROMAN NUMERAL SIX")
+    (ucs               . #x2175)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 6)
+    (->decomposition   compat #x0076 #x0069)
+    (->uppercase       #x2165)
+    (->titlecase       #x2165)
+    (korean-ksc5601    #x25 #x26)      ; \e$(C%&\e(B
+    (chinese-cns11643-1 #x26 #x3A)     ; \e$(G&:\e(B
+    ))
+(define-char
+  '((name              . "SMALL ROMAN NUMERAL SEVEN")
+    (ucs               . #x2176)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 7)
+    (->decomposition   compat #x0076 #x0069 #x0069)
+    (->uppercase       #x2166)
+    (->titlecase       #x2166)
+    (korean-ksc5601    #x25 #x27)      ; \e$(C%'\e(B
+    (chinese-cns11643-1 #x26 #x3B)     ; \e$(G&;\e(B
+    ))
+(define-char
+  '((name              . "SMALL ROMAN NUMERAL EIGHT")
+    (ucs               . #x2177)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 8)
+    (->decomposition   compat #x0076 #x0069 #x0069 #x0069)
+    (->uppercase       #x2167)
+    (->titlecase       #x2167)
+    (korean-ksc5601    #x25 #x28)      ; \e$(C%(\e(B
+    (chinese-cns11643-1 #x26 #x3C)     ; \e$(G&<\e(B
+    ))
+(define-char
+  '((name              . "SMALL ROMAN NUMERAL NINE")
+    (ucs               . #x2178)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 9)
+    (->decomposition   compat #x0069 #x0078)
+    (->uppercase       #x2168)
+    (->titlecase       #x2168)
+    (korean-ksc5601    #x25 #x29)      ; \e$(C%)\e(B
+    (chinese-cns11643-1 #x26 #x3D)     ; \e$(G&=\e(B
+    ))
+(define-char
+  '((name              . "SMALL ROMAN NUMERAL TEN")
+    (ucs               . #x2179)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 10)
+    (->decomposition   compat #x0078)
+    (->uppercase       #x2169)
+    (->titlecase       #x2169)
+    (korean-ksc5601    #x25 #x2A)      ; \e$(C%*\e(B
+    (chinese-cns11643-1 #x26 #x3E)     ; \e$(G&>\e(B
+    ))
+(define-char
+  '((name              . "SMALL ROMAN NUMERAL ELEVEN")
+    (ucs               . #x217A)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 11)
+    (->decomposition   compat #x0078 #x0069)
+    (->uppercase       #x216A)
+    (->titlecase       #x216A)
+    ))
+(define-char
+  '((name              . "SMALL ROMAN NUMERAL TWELVE")
+    (ucs               . #x217B)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 12)
+    (->decomposition   compat #x0078 #x0069 #x0069)
+    (->uppercase       #x216B)
+    (->titlecase       #x216B)
+    ))
+(define-char
+  '((name              . "SMALL ROMAN NUMERAL FIFTY")
+    (ucs               . #x217C)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 50)
+    (->decomposition   compat #x006C)
+    (->uppercase       #x216C)
+    (->titlecase       #x216C)
+    ))
+(define-char
+  '((name              . "SMALL ROMAN NUMERAL ONE HUNDRED")
+    (ucs               . #x217D)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 100)
+    (->decomposition   compat #x0063)
+    (->uppercase       #x216D)
+    (->titlecase       #x216D)
+    ))
+(define-char
+  '((name              . "SMALL ROMAN NUMERAL FIVE HUNDRED")
+    (ucs               . #x217E)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 500)
+    (->decomposition   compat #x0064)
+    (->uppercase       #x216E)
+    (->titlecase       #x216E)
+    ))
+(define-char
+  '((name              . "SMALL ROMAN NUMERAL ONE THOUSAND")
+    (ucs               . #x217F)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 1000)
+    (->decomposition   compat #x006D)
+    (->uppercase       #x216F)
+    (->titlecase       #x216F)
+    ))
+(define-char
+  '((name              . "ROMAN NUMERAL ONE THOUSAND C D")
+    (ucs               . #x2180)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 1000)
+    ))
+(define-char
+  '((name              . "ROMAN NUMERAL FIVE THOUSAND")
+    (ucs               . #x2181)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 5000)
+    ))
+(define-char
+  '((name              . "ROMAN NUMERAL TEN THOUSAND")
+    (ucs               . #x2182)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 10000)
+    ))
+(define-char
+  '((name              . "ROMAN NUMERAL REVERSED ONE HUNDRED")
+    (ucs               . #x2183)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u02190-Arrows.el b/lisp/utf-2000/u02190-Arrows.el
new file mode 100644 (file)
index 0000000..ed92d74
--- /dev/null
@@ -0,0 +1,740 @@
+(define-char
+  '((name              . "LEFTWARDS ARROW")
+    (ucs               . #x2190)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x22 #x2B)      ; \e$(@"+\e(B
+    (chinese-gb2312            #x21 #x7B)      ; \e$(A!{\e(B
+    (japanese-jisx0208         #x22 #x2B)      ; \e$(B"+\e(B
+    (korean-ksc5601            #x21 #x67)      ; \e$(C!g\e(B
+    (chinese-cns11643-1                #x22 #x58)      ; \e$(G"X\e(B
+    ))
+(define-char
+  '((name              . "UPWARDS ARROW")
+    (ucs               . #x2191)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x22 #x2C)      ; \e$(@",\e(B
+    (chinese-gb2312            #x21 #x7C)      ; \e$(A!|\e(B
+    (japanese-jisx0208         #x22 #x2C)      ; \e$(B",\e(B
+    (korean-ksc5601            #x21 #x68)      ; \e$(C!h\e(B
+    (chinese-cns11643-1                #x22 #x55)      ; \e$(G"U\e(B
+    ))
+(define-char
+  '((name              . "RIGHTWARDS ARROW")
+    (ucs               . #x2192)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x22 #x2A)      ; \e$(@"*\e(B
+    (chinese-gb2312            #x21 #x7A)      ; \e$(A!z\e(B
+    (japanese-jisx0208         #x22 #x2A)      ; \e$(B"*\e(B
+    (korean-ksc5601            #x21 #x66)      ; \e$(C!f\e(B
+    (chinese-cns11643-1                #x22 #x57)      ; \e$(G"W\e(B
+    ))
+(define-char
+  '((name              . "DOWNWARDS ARROW")
+    (ucs               . #x2193)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x22 #x2D)      ; \e$(@"-\e(B
+    (chinese-gb2312            #x21 #x7D)      ; \e$(A!}\e(B
+    (japanese-jisx0208         #x22 #x2D)      ; \e$(B"-\e(B
+    (korean-ksc5601            #x21 #x69)      ; \e$(C!i\e(B
+    (chinese-cns11643-1                #x22 #x56)      ; \e$(G"V\e(B
+    ))
+(define-char
+  '((name              . "LEFT RIGHT ARROW")
+    (ucs               . #x2194)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x21 #x6A)      ; \e$(C!j\e(B
+    ))
+(define-char
+  '((name              . "UP DOWN ARROW")
+    (ucs               . #x2195)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x55)      ; \e$(C"U\e(B
+    ))
+(define-char
+  '((name              . "NORTH WEST ARROW")
+    (ucs               . #x2196)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x58)      ; \e$(C"X\e(B
+    (chinese-cns11643-1 #x22 #x59)     ; \e$(G"Y\e(B
+    ))
+(define-char
+  '((name              . "NORTH EAST ARROW")
+    (ucs               . #x2197)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x56)      ; \e$(C"V\e(B
+    (chinese-cns11643-1 #x22 #x5A)     ; \e$(G"Z\e(B
+    ))
+(define-char
+  '((name              . "SOUTH EAST ARROW")
+    (ucs               . #x2198)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x59)      ; \e$(C"Y\e(B
+    (chinese-cns11643-1 #x22 #x5C)     ; \e$(G"\\e(B
+    ))
+(define-char
+  '((name              . "SOUTH WEST ARROW")
+    (ucs               . #x2199)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x57)      ; \e$(C"W\e(B
+    (chinese-cns11643-1 #x22 #x5B)     ; \e$(G"[\e(B
+    ))
+(define-char
+  '((name              . "LEFTWARDS ARROW WITH STROKE")
+    (ucs               . #x219A)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   #x2190 #x0338)
+    ))
+(define-char
+  '((name              . "RIGHTWARDS ARROW WITH STROKE")
+    (ucs               . #x219B)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   #x2192 #x0338)
+    ))
+(define-char
+  '((name              . "LEFTWARDS WAVE ARROW")
+    (ucs               . #x219C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHTWARDS WAVE ARROW")
+    (ucs               . #x219D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFTWARDS TWO HEADED ARROW")
+    (ucs               . #x219E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPWARDS TWO HEADED ARROW")
+    (ucs               . #x219F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHTWARDS TWO HEADED ARROW")
+    (ucs               . #x21A0)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DOWNWARDS TWO HEADED ARROW")
+    (ucs               . #x21A1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFTWARDS ARROW WITH TAIL")
+    (ucs               . #x21A2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHTWARDS ARROW WITH TAIL")
+    (ucs               . #x21A3)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFTWARDS ARROW FROM BAR")
+    (ucs               . #x21A4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPWARDS ARROW FROM BAR")
+    (ucs               . #x21A5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHTWARDS ARROW FROM BAR")
+    (ucs               . #x21A6)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DOWNWARDS ARROW FROM BAR")
+    (ucs               . #x21A7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UP DOWN ARROW WITH BASE")
+    (ucs               . #x21A8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFTWARDS ARROW WITH HOOK")
+    (ucs               . #x21A9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHTWARDS ARROW WITH HOOK")
+    (ucs               . #x21AA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFTWARDS ARROW WITH LOOP")
+    (ucs               . #x21AB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHTWARDS ARROW WITH LOOP")
+    (ucs               . #x21AC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFT RIGHT WAVE ARROW")
+    (ucs               . #x21AD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFT RIGHT ARROW WITH STROKE")
+    (ucs               . #x21AE)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   #x2194 #x0338)
+    ))
+(define-char
+  '((name              . "DOWNWARDS ZIGZAG ARROW")
+    (ucs               . #x21AF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPWARDS ARROW WITH TIP LEFTWARDS")
+    (ucs               . #x21B0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPWARDS ARROW WITH TIP RIGHTWARDS")
+    (ucs               . #x21B1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DOWNWARDS ARROW WITH TIP LEFTWARDS")
+    (ucs               . #x21B2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DOWNWARDS ARROW WITH TIP RIGHTWARDS")
+    (ucs               . #x21B3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHTWARDS ARROW WITH CORNER DOWNWARDS")
+    (ucs               . #x21B4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DOWNWARDS ARROW WITH CORNER LEFTWARDS")
+    (ucs               . #x21B5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ANTICLOCKWISE TOP SEMICIRCLE ARROW")
+    (ucs               . #x21B6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CLOCKWISE TOP SEMICIRCLE ARROW")
+    (ucs               . #x21B7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "NORTH WEST ARROW TO LONG BAR")
+    (ucs               . #x21B8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "LEFTWARDS ARROW TO BAR OVER RIGHTWARDS ARROW TO BAR")
+    (ucs               . #x21B9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ANTICLOCKWISE OPEN CIRCLE ARROW")
+    (ucs               . #x21BA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CLOCKWISE OPEN CIRCLE ARROW")
+    (ucs               . #x21BB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFTWARDS HARPOON WITH BARB UPWARDS")
+    (ucs               . #x21BC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFTWARDS HARPOON WITH BARB DOWNWARDS")
+    (ucs               . #x21BD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPWARDS HARPOON WITH BARB RIGHTWARDS")
+    (ucs               . #x21BE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPWARDS HARPOON WITH BARB LEFTWARDS")
+    (ucs               . #x21BF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHTWARDS HARPOON WITH BARB UPWARDS")
+    (ucs               . #x21C0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHTWARDS HARPOON WITH BARB DOWNWARDS")
+    (ucs               . #x21C1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DOWNWARDS HARPOON WITH BARB RIGHTWARDS")
+    (ucs               . #x21C2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DOWNWARDS HARPOON WITH BARB LEFTWARDS")
+    (ucs               . #x21C3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHTWARDS ARROW OVER LEFTWARDS ARROW")
+    (ucs               . #x21C4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPWARDS ARROW LEFTWARDS OF DOWNWARDS ARROW")
+    (ucs               . #x21C5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFTWARDS ARROW OVER RIGHTWARDS ARROW")
+    (ucs               . #x21C6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFTWARDS PAIRED ARROWS")
+    (ucs               . #x21C7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPWARDS PAIRED ARROWS")
+    (ucs               . #x21C8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHTWARDS PAIRED ARROWS")
+    (ucs               . #x21C9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DOWNWARDS PAIRED ARROWS")
+    (ucs               . #x21CA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFTWARDS HARPOON OVER RIGHTWARDS HARPOON")
+    (ucs               . #x21CB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHTWARDS HARPOON OVER LEFTWARDS HARPOON")
+    (ucs               . #x21CC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFTWARDS DOUBLE ARROW WITH STROKE")
+    (ucs               . #x21CD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   #x21D0 #x0338)
+    ))
+(define-char
+  '((name              . "LEFT RIGHT DOUBLE ARROW WITH STROKE")
+    (ucs               . #x21CE)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   #x21D4 #x0338)
+    ))
+(define-char
+  '((name              . "RIGHTWARDS DOUBLE ARROW WITH STROKE")
+    (ucs               . #x21CF)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   #x21D2 #x0338)
+    ))
+(define-char
+  '((name              . "LEFTWARDS DOUBLE ARROW")
+    (ucs               . #x21D0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPWARDS DOUBLE ARROW")
+    (ucs               . #x21D1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHTWARDS DOUBLE ARROW")
+    (ucs               . #x21D2)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208 #x22 #x4D)      ; \e$(B"M\e(B
+    (korean-ksc5601    #x22 #x21)      ; \e$(C"!\e(B
+    ))
+(define-char
+  '((name              . "DOWNWARDS DOUBLE ARROW")
+    (ucs               . #x21D3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFT RIGHT DOUBLE ARROW")
+    (ucs               . #x21D4)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208 #x22 #x4E)      ; \e$(B"N\e(B
+    (korean-ksc5601    #x22 #x22)      ; \e$(C""\e(B
+    ))
+(define-char
+  '((name              . "UP DOWN DOUBLE ARROW")
+    (ucs               . #x21D5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "NORTH WEST DOUBLE ARROW")
+    (ucs               . #x21D6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "NORTH EAST DOUBLE ARROW")
+    (ucs               . #x21D7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SOUTH EAST DOUBLE ARROW")
+    (ucs               . #x21D8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SOUTH WEST DOUBLE ARROW")
+    (ucs               . #x21D9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFTWARDS TRIPLE ARROW")
+    (ucs               . #x21DA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHTWARDS TRIPLE ARROW")
+    (ucs               . #x21DB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFTWARDS SQUIGGLE ARROW")
+    (ucs               . #x21DC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHTWARDS SQUIGGLE ARROW")
+    (ucs               . #x21DD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPWARDS ARROW WITH DOUBLE STROKE")
+    (ucs               . #x21DE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DOWNWARDS ARROW WITH DOUBLE STROKE")
+    (ucs               . #x21DF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFTWARDS DASHED ARROW")
+    (ucs               . #x21E0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPWARDS DASHED ARROW")
+    (ucs               . #x21E1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHTWARDS DASHED ARROW")
+    (ucs               . #x21E2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DOWNWARDS DASHED ARROW")
+    (ucs               . #x21E3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFTWARDS ARROW TO BAR")
+    (ucs               . #x21E4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHTWARDS ARROW TO BAR")
+    (ucs               . #x21E5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFTWARDS WHITE ARROW")
+    (ucs               . #x21E6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPWARDS WHITE ARROW")
+    (ucs               . #x21E7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHTWARDS WHITE ARROW")
+    (ucs               . #x21E8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DOWNWARDS WHITE ARROW")
+    (ucs               . #x21E9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPWARDS WHITE ARROW FROM BAR")
+    (ucs               . #x21EA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPWARDS WHITE ARROW ON PEDESTAL")
+    (ucs               . #x21EB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "UPWARDS WHITE ARROW ON PEDESTAL WITH HORIZONTAL BAR")
+    (ucs               . #x21EC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "UPWARDS WHITE ARROW ON PEDESTAL WITH VERTICAL BAR")
+    (ucs               . #x21ED)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPWARDS WHITE DOUBLE ARROW")
+    (ucs               . #x21EE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPWARDS WHITE DOUBLE ARROW ON PEDESTAL")
+    (ucs               . #x21EF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHTWARDS WHITE ARROW FROM WALL")
+    (ucs               . #x21F0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "NORTH WEST ARROW TO CORNER")
+    (ucs               . #x21F1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SOUTH EAST ARROW TO CORNER")
+    (ucs               . #x21F2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UP DOWN WHITE ARROW")
+    (ucs               . #x21F3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u02200-Mathematical-Operators.el b/lisp/utf-2000/u02200-Mathematical-Operators.el
new file mode 100644 (file)
index 0000000..cdbbbde
--- /dev/null
@@ -0,0 +1,1861 @@
+(define-char
+  '((name              . "FOR ALL")
+    (ucs               . #x2200)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208 #x22 #x4F)      ; \e$(B"O\e(B
+    (korean-ksc5601    #x22 #x23)      ; \e$(C"#\e(B
+    ))
+(define-char
+  '((name              . "COMPLEMENT")
+    (ucs               . #x2201)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "PARTIAL DIFFERENTIAL")
+    (ucs               . #x2202)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208 #x22 #x5F)      ; \e$(B"_\e(B
+    (korean-ksc5601    #x21 #x53)      ; \e$(C!S\e(B
+    ))
+(define-char
+  '((name              . "THERE EXISTS")
+    (ucs               . #x2203)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208 #x22 #x50)      ; \e$(B"P\e(B
+    (korean-ksc5601    #x22 #x24)      ; \e$(C"$\e(B
+    ))
+(define-char
+  '((name              . "THERE DOES NOT EXIST")
+    (ucs               . #x2204)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x2203 #x0338)
+    ))
+(define-char
+  '((name              . "EMPTY SET")
+    (ucs               . #x2205)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "INCREMENT")
+    (ucs               . #x2206)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "NABLA")
+    (ucs               . #x2207)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208 #x22 #x60)      ; \e$(B"`\e(B
+    (korean-ksc5601    #x21 #x54)      ; \e$(C!T\e(B
+    ))
+(define-char
+  '((name              . "ELEMENT OF")
+    (ucs               . #x2208)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (chinese-gb2312    #x21 #x4A)      ; \e$(A!J\e(B
+    (japanese-jisx0208 #x22 #x3A)      ; \e$(B":\e(B
+    (korean-ksc5601    #x21 #x74)      ; \e$(C!t\e(B
+    ))
+(define-char
+  '((name              . "NOT AN ELEMENT OF")
+    (ucs               . #x2209)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x2208 #x0338)
+    ))
+(define-char
+  '((name              . "SMALL ELEMENT OF")
+    (ucs               . #x220A)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "CONTAINS AS MEMBER")
+    (ucs               . #x220B)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208 #x22 #x3B)      ; \e$(B";\e(B
+    (korean-ksc5601    #x21 #x75)      ; \e$(C!u\e(B
+    ))
+(define-char
+  '((name              . "DOES NOT CONTAIN AS MEMBER")
+    (ucs               . #x220C)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x220B #x0338)
+    ))
+(define-char
+  '((name              . "SMALL CONTAINS AS MEMBER")
+    (ucs               . #x220D)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "END OF PROOF")
+    (ucs               . #x220E)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "N-ARY PRODUCT")
+    (ucs               . #x220F)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x21 #x47)      ; \e$(A!G\e(B
+    (korean-ksc5601    #x22 #x33)      ; \e$(C"3\e(B
+    ))
+(define-char
+  '((name              . "N-ARY COPRODUCT")
+    (ucs               . #x2210)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "N-ARY SUMMATION")
+    (ucs               . #x2211)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (chinese-gb2312    #x21 #x46)      ; \e$(A!F\e(B
+    (korean-ksc5601    #x22 #x32)      ; \e$(C"2\e(B
+    ))
+(define-char
+  '((name              . "MINUS SIGN")
+    (ucs               . #x2212)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x5D)      ; \e$(@!]\e(B
+    (japanese-jisx0208         #x21 #x5D)      ; \e$(B!]\e(B
+    ))
+(define-char
+  '((name              . "MINUS-OR-PLUS SIGN")
+    (ucs               . #x2213)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ET")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DOT PLUS")
+    (ucs               . #x2214)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DIVISION SLASH")
+    (ucs               . #x2215)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (chinese-cns11643-1 #x22 #x61)     ; \e$(G"a\e(B
+    ))
+(define-char
+  '((name              . "SET MINUS")
+    (ucs               . #x2216)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "ASTERISK OPERATOR")
+    (ucs               . #x2217)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RING OPERATOR")
+    (ucs               . #x2218)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BULLET OPERATOR")
+    (ucs               . #x2219)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SQUARE ROOT")
+    (ucs               . #x221A)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (chinese-gb2312    #x21 #x4C)      ; \e$(A!L\e(B
+    (japanese-jisx0208 #x22 #x65)      ; \e$(B"e\e(B
+    (korean-ksc5601    #x21 #x6E)      ; \e$(C!n\e(B
+    (chinese-cns11643-1 #x22 #x35)     ; \e$(G"5\e(B
+    ))
+(define-char
+  '((name              . "CUBE ROOT")
+    (ucs               . #x221B)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "FOURTH ROOT")
+    (ucs               . #x221C)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "PROPORTIONAL TO")
+    (ucs               . #x221D)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (chinese-gb2312    #x21 #x58)      ; \e$(A!X\e(B
+    (japanese-jisx0208 #x22 #x67)      ; \e$(B"g\e(B
+    (korean-ksc5601    #x21 #x70)      ; \e$(C!p\e(B
+    ))
+(define-char
+  '((name              . "INFINITY")
+    (ucs               . #x221E)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x67)      ; \e$(@!g\e(B
+    (chinese-gb2312            #x21 #x5E)      ; \e$(A!^\e(B
+    (japanese-jisx0208         #x21 #x67)      ; \e$(B!g\e(B
+    (korean-ksc5601            #x21 #x44)      ; \e$(C!D\e(B
+    (chinese-cns11643-1                #x22 #x3C)      ; \e$(G"<\e(B
+    ))
+(define-char
+  '((name              . "RIGHT ANGLE")
+    (ucs               . #x221F)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (chinese-cns11643-1 #x22 #x49)     ; \e$(G"I\e(B
+    ))
+(define-char
+  '((name              . "ANGLE")
+    (ucs               . #x2220)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (chinese-gb2312    #x21 #x4F)      ; \e$(A!O\e(B
+    (japanese-jisx0208 #x22 #x5C)      ; \e$(B"\\e(B
+    (korean-ksc5601    #x21 #x50)      ; \e$(C!P\e(B
+    (chinese-cns11643-1 #x22 #x48)     ; \e$(G"H\e(B
+    ))
+(define-char
+  '((name              . "MEASURED ANGLE")
+    (ucs               . #x2221)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "SPHERICAL ANGLE")
+    (ucs               . #x2222)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "DIVIDES")
+    (ucs               . #x2223)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DOES NOT DIVIDE")
+    (ucs               . #x2224)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x2223 #x0338)
+    ))
+(define-char
+  '((name              . "PARALLEL TO")
+    (ucs               . #x2225)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x21 #x4E)      ; \e$(A!N\e(B
+    (korean-ksc5601    #x21 #x2B)      ; \e$(C!+\e(B
+    ))
+(define-char
+  '((name              . "NOT PARALLEL TO")
+    (ucs               . #x2226)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x2225 #x0338)
+    ))
+(define-char
+  '((name              . "LOGICAL AND")
+    (ucs               . #x2227)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x21 #x44)      ; \e$(A!D\e(B
+    (japanese-jisx0208 #x22 #x4A)      ; \e$(B"J\e(B
+    (korean-ksc5601    #x21 #x7C)      ; \e$(C!|\e(B
+    ))
+(define-char
+  '((name              . "LOGICAL OR")
+    (ucs               . #x2228)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x21 #x45)      ; \e$(A!E\e(B
+    (japanese-jisx0208 #x22 #x4B)      ; \e$(B"K\e(B
+    (korean-ksc5601    #x21 #x7D)      ; \e$(C!}\e(B
+    ))
+(define-char
+  '((name              . "INTERSECTION")
+    (ucs               . #x2229)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x21 #x49)      ; \e$(A!I\e(B
+    (japanese-jisx0208 #x22 #x41)      ; \e$(B"A\e(B
+    (korean-ksc5601    #x21 #x7B)      ; \e$(C!{\e(B
+    (chinese-cns11643-1 #x22 #x45)     ; \e$(G"E\e(B
+    ))
+(define-char
+  '((name              . "UNION")
+    (ucs               . #x222A)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x21 #x48)      ; \e$(A!H\e(B
+    (japanese-jisx0208 #x22 #x40)      ; \e$(B"@\e(B
+    (korean-ksc5601    #x21 #x7A)      ; \e$(C!z\e(B
+    (chinese-cns11643-1 #x22 #x46)     ; \e$(G"F\e(B
+    ))
+(define-char
+  '((name              . "INTEGRAL")
+    (ucs               . #x222B)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (chinese-gb2312    #x21 #x52)      ; \e$(A!R\e(B
+    (japanese-jisx0208 #x22 #x69)      ; \e$(B"i\e(B
+    (korean-ksc5601    #x21 #x72)      ; \e$(C!r\e(B
+    (chinese-cns11643-1 #x22 #x4D)     ; \e$(G"M\e(B
+    ))
+(define-char
+  '((name              . "DOUBLE INTEGRAL")
+    (ucs               . #x222C)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   compat #x222B #x222B)
+    (japanese-jisx0208 #x22 #x6A)      ; \e$(B"j\e(B
+    (korean-ksc5601    #x21 #x73)      ; \e$(C!s\e(B
+    ))
+(define-char
+  '((name              . "TRIPLE INTEGRAL")
+    (ucs               . #x222D)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   compat #x222B #x222B #x222B)
+    ))
+(define-char
+  '((name              . "CONTOUR INTEGRAL")
+    (ucs               . #x222E)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (chinese-gb2312    #x21 #x53)      ; \e$(A!S\e(B
+    (korean-ksc5601    #x22 #x31)      ; \e$(C"1\e(B
+    (chinese-cns11643-1 #x22 #x4E)     ; \e$(G"N\e(B
+    ))
+(define-char
+  '((name              . "SURFACE INTEGRAL")
+    (ucs               . #x222F)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   compat #x222E #x222E)
+    ))
+(define-char
+  '((name              . "VOLUME INTEGRAL")
+    (ucs               . #x2230)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   compat #x222E #x222E #x222E)
+    ))
+(define-char
+  '((name              . "CLOCKWISE INTEGRAL")
+    (ucs               . #x2231)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "CLOCKWISE CONTOUR INTEGRAL")
+    (ucs               . #x2232)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "ANTICLOCKWISE CONTOUR INTEGRAL")
+    (ucs               . #x2233)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "THEREFORE")
+    (ucs               . #x2234)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x68)      ; \e$(@!h\e(B
+    (chinese-gb2312            #x21 #x60)      ; \e$(A!`\e(B
+    (japanese-jisx0208         #x21 #x68)      ; \e$(B!h\e(B
+    (korean-ksc5601            #x21 #x45)      ; \e$(C!E\e(B
+    (chinese-cns11643-1                #x22 #x50)      ; \e$(G"P\e(B
+    ))
+(define-char
+  '((name              . "BECAUSE")
+    (ucs               . #x2235)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x21 #x5F)      ; \e$(A!_\e(B
+    (japanese-jisx0208 #x22 #x68)      ; \e$(B"h\e(B
+    (korean-ksc5601    #x21 #x71)      ; \e$(C!q\e(B
+    (chinese-cns11643-1 #x22 #x4F)     ; \e$(G"O\e(B
+    ))
+(define-char
+  '((name              . "RATIO")
+    (ucs               . #x2236)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x21 #x43)      ; \e$(A!C\e(B
+    ))
+(define-char
+  '((name              . "PROPORTION")
+    (ucs               . #x2237)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x21 #x4B)      ; \e$(A!K\e(B
+    ))
+(define-char
+  '((name              . "DOT MINUS")
+    (ucs               . #x2238)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "EXCESS")
+    (ucs               . #x2239)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "GEOMETRIC PROPORTION")
+    (ucs               . #x223A)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HOMOTHETIC")
+    (ucs               . #x223B)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "TILDE OPERATOR")
+    (ucs               . #x223C)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (korean-ksc5601    #x21 #x2D)      ; \e$(C!-\e(B
+    ))
+(define-char
+  '((name              . "REVERSED TILDE")
+    (ucs               . #x223D)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (iso-10646-comment . "lazy S")
+    (chinese-gb2312    #x21 #x57)      ; \e$(A!W\e(B
+    (japanese-jisx0208 #x22 #x66)      ; \e$(B"f\e(B
+    (korean-ksc5601    #x21 #x6F)      ; \e$(C!o\e(B
+    ))
+(define-char
+  '((name              . "INVERTED LAZY S")
+    (ucs               . #x223E)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "SINE WAVE")
+    (ucs               . #x223F)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "WREATH PRODUCT")
+    (ucs               . #x2240)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "NOT TILDE")
+    (ucs               . #x2241)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x223C #x0338)
+    ))
+(define-char
+  '((name              . "MINUS TILDE")
+    (ucs               . #x2242)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "ASYMPTOTICALLY EQUAL TO")
+    (ucs               . #x2243)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "NOT ASYMPTOTICALLY EQUAL TO")
+    (ucs               . #x2244)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x2243 #x0338)
+    ))
+(define-char
+  '((name              . "APPROXIMATELY EQUAL TO")
+    (ucs               . #x2245)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "APPROXIMATELY BUT NOT ACTUALLY EQUAL TO")
+    (ucs               . #x2246)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "NEITHER APPROXIMATELY NOR ACTUALLY EQUAL TO")
+    (ucs               . #x2247)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x2245 #x0338)
+    ))
+(define-char
+  '((name              . "ALMOST EQUAL TO")
+    (ucs               . #x2248)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (chinese-gb2312    #x21 #x56)      ; \e$(A!V\e(B
+    ))
+(define-char
+  '((name              . "NOT ALMOST EQUAL TO")
+    (ucs               . #x2249)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x2248 #x0338)
+    ))
+(define-char
+  '((name              . "ALMOST EQUAL OR EQUAL TO")
+    (ucs               . #x224A)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "TRIPLE TILDE")
+    (ucs               . #x224B)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "ALL EQUAL TO")
+    (ucs               . #x224C)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (chinese-gb2312    #x21 #x55)      ; \e$(A!U\e(B
+    ))
+(define-char
+  '((name              . "EQUIVALENT TO")
+    (ucs               . #x224D)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEOMETRICALLY EQUIVALENT TO")
+    (ucs               . #x224E)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DIFFERENCE BETWEEN")
+    (ucs               . #x224F)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APPROACHES THE LIMIT")
+    (ucs               . #x2250)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEOMETRICALLY EQUAL TO")
+    (ucs               . #x2251)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APPROXIMATELY EQUAL TO OR THE IMAGE OF")
+    (ucs               . #x2252)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208 #x22 #x62)      ; \e$(B"b\e(B
+    (korean-ksc5601    #x21 #x56)      ; \e$(C!V\e(B
+    (chinese-cns11643-1 #x22 #x3D)     ; \e$(G"=\e(B
+    ))
+(define-char
+  '((name              . "IMAGE OF OR APPROXIMATELY EQUAL TO")
+    (ucs               . #x2253)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "COLON EQUALS")
+    (ucs               . #x2254)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "EQUALS COLON")
+    (ucs               . #x2255)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "RING IN EQUAL TO")
+    (ucs               . #x2256)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RING EQUAL TO")
+    (ucs               . #x2257)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CORRESPONDS TO")
+    (ucs               . #x2258)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ESTIMATES")
+    (ucs               . #x2259)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "EQUIANGULAR TO")
+    (ucs               . #x225A)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "STAR EQUALS")
+    (ucs               . #x225B)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DELTA EQUAL TO")
+    (ucs               . #x225C)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "EQUAL TO BY DEFINITION")
+    (ucs               . #x225D)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MEASURED BY")
+    (ucs               . #x225E)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "QUESTIONED EQUAL TO")
+    (ucs               . #x225F)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "NOT EQUAL TO")
+    (ucs               . #x2260)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x003D #x0338)
+    (japanese-jisx0208-1978    #x21 #x62)      ; \e$(@!b\e(B
+    (chinese-gb2312            #x21 #x59)      ; \e$(A!Y\e(B
+    (japanese-jisx0208         #x21 #x62)      ; \e$(B!b\e(B
+    (korean-ksc5601            #x21 #x41)      ; \e$(C!A\e(B
+    (chinese-cns11643-1                #x22 #x3B)      ; \e$(G";\e(B
+    ))
+(define-char
+  '((name              . "IDENTICAL TO")
+    (ucs               . #x2261)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x21 #x54)      ; \e$(A!T\e(B
+    (japanese-jisx0208 #x22 #x61)      ; \e$(B"a\e(B
+    (korean-ksc5601    #x21 #x55)      ; \e$(C!U\e(B
+    (chinese-cns11643-1 #x22 #x3E)     ; \e$(G">\e(B
+    ))
+(define-char
+  '((name              . "NOT IDENTICAL TO")
+    (ucs               . #x2262)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x2261 #x0338)
+    ))
+(define-char
+  '((name              . "STRICTLY EQUIVALENT TO")
+    (ucs               . #x2263)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LESS-THAN OR EQUAL TO")
+    (ucs               . #x2264)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (chinese-gb2312    #x21 #x5C)      ; \e$(A!\\e(B
+    (korean-ksc5601    #x21 #x42)      ; \e$(C!B\e(B
+    ))
+(define-char
+  '((name              . "GREATER-THAN OR EQUAL TO")
+    (ucs               . #x2265)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (chinese-gb2312    #x21 #x5D)      ; \e$(A!]\e(B
+    (korean-ksc5601    #x21 #x43)      ; \e$(C!C\e(B
+    ))
+(define-char
+  '((name              . "LESS-THAN OVER EQUAL TO")
+    (ucs               . #x2266)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208-1978    #x21 #x65)      ; \e$(@!e\e(B
+    (japanese-jisx0208         #x21 #x65)      ; \e$(B!e\e(B
+    (chinese-cns11643-1                #x22 #x39)      ; \e$(G"9\e(B
+    ))
+(define-char
+  '((name              . "GREATER-THAN OVER EQUAL TO")
+    (ucs               . #x2267)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208-1978    #x21 #x66)      ; \e$(@!f\e(B
+    (japanese-jisx0208         #x21 #x66)      ; \e$(B!f\e(B
+    (chinese-cns11643-1                #x22 #x3A)      ; \e$(G":\e(B
+    ))
+(define-char
+  '((name              . "LESS-THAN BUT NOT EQUAL TO")
+    (ucs               . #x2268)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "GREATER-THAN BUT NOT EQUAL TO")
+    (ucs               . #x2269)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "MUCH LESS-THAN")
+    (ucs               . #x226A)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208 #x22 #x63)      ; \e$(B"c\e(B
+    (korean-ksc5601    #x21 #x6C)      ; \e$(C!l\e(B
+    ))
+(define-char
+  '((name              . "MUCH GREATER-THAN")
+    (ucs               . #x226B)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208 #x22 #x64)      ; \e$(B"d\e(B
+    (korean-ksc5601    #x21 #x6D)      ; \e$(C!m\e(B
+    ))
+(define-char
+  '((name              . "BETWEEN")
+    (ucs               . #x226C)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "NOT EQUIVALENT TO")
+    (ucs               . #x226D)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   #x224D #x0338)
+    ))
+(define-char
+  '((name              . "NOT LESS-THAN")
+    (ucs               . #x226E)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x003C #x0338)
+    (chinese-gb2312    #x21 #x5A)      ; \e$(A!Z\e(B
+    ))
+(define-char
+  '((name              . "NOT GREATER-THAN")
+    (ucs               . #x226F)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x003E #x0338)
+    (chinese-gb2312    #x21 #x5B)      ; \e$(A![\e(B
+    ))
+(define-char
+  '((name              . "NEITHER LESS-THAN NOR EQUAL TO")
+    (ucs               . #x2270)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x2264 #x0338)
+    ))
+(define-char
+  '((name              . "NEITHER GREATER-THAN NOR EQUAL TO")
+    (ucs               . #x2271)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x2265 #x0338)
+    ))
+(define-char
+  '((name              . "LESS-THAN OR EQUIVALENT TO")
+    (ucs               . #x2272)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "GREATER-THAN OR EQUIVALENT TO")
+    (ucs               . #x2273)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "NEITHER LESS-THAN NOR EQUIVALENT TO")
+    (ucs               . #x2274)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x2272 #x0338)
+    ))
+(define-char
+  '((name              . "NEITHER GREATER-THAN NOR EQUIVALENT TO")
+    (ucs               . #x2275)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x2273 #x0338)
+    ))
+(define-char
+  '((name              . "LESS-THAN OR GREATER-THAN")
+    (ucs               . #x2276)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "GREATER-THAN OR LESS-THAN")
+    (ucs               . #x2277)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "NEITHER LESS-THAN NOR GREATER-THAN")
+    (ucs               . #x2278)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x2276 #x0338)
+    ))
+(define-char
+  '((name              . "NEITHER GREATER-THAN NOR LESS-THAN")
+    (ucs               . #x2279)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x2277 #x0338)
+    ))
+(define-char
+  '((name              . "PRECEDES")
+    (ucs               . #x227A)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "SUCCEEDS")
+    (ucs               . #x227B)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "PRECEDES OR EQUAL TO")
+    (ucs               . #x227C)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "SUCCEEDS OR EQUAL TO")
+    (ucs               . #x227D)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "PRECEDES OR EQUIVALENT TO")
+    (ucs               . #x227E)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "SUCCEEDS OR EQUIVALENT TO")
+    (ucs               . #x227F)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "DOES NOT PRECEDE")
+    (ucs               . #x2280)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x227A #x0338)
+    ))
+(define-char
+  '((name              . "DOES NOT SUCCEED")
+    (ucs               . #x2281)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x227B #x0338)
+    ))
+(define-char
+  '((name              . "SUBSET OF")
+    (ucs               . #x2282)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208 #x22 #x3E)      ; \e$(B">\e(B
+    (korean-ksc5601    #x21 #x78)      ; \e$(C!x\e(B
+    ))
+(define-char
+  '((name              . "SUPERSET OF")
+    (ucs               . #x2283)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208 #x22 #x3F)      ; \e$(B"?\e(B
+    (korean-ksc5601    #x21 #x79)      ; \e$(C!y\e(B
+    ))
+(define-char
+  '((name              . "NOT A SUBSET OF")
+    (ucs               . #x2284)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x2282 #x0338)
+    ))
+(define-char
+  '((name              . "NOT A SUPERSET OF")
+    (ucs               . #x2285)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x2283 #x0338)
+    ))
+(define-char
+  '((name              . "SUBSET OF OR EQUAL TO")
+    (ucs               . #x2286)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208 #x22 #x3C)      ; \e$(B"<\e(B
+    (korean-ksc5601    #x21 #x76)      ; \e$(C!v\e(B
+    ))
+(define-char
+  '((name              . "SUPERSET OF OR EQUAL TO")
+    (ucs               . #x2287)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208 #x22 #x3D)      ; \e$(B"=\e(B
+    (korean-ksc5601    #x21 #x77)      ; \e$(C!w\e(B
+    ))
+(define-char
+  '((name              . "NEITHER A SUBSET OF NOR EQUAL TO")
+    (ucs               . #x2288)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x2286 #x0338)
+    ))
+(define-char
+  '((name              . "NEITHER A SUPERSET OF NOR EQUAL TO")
+    (ucs               . #x2289)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x2287 #x0338)
+    ))
+(define-char
+  '((name              . "SUBSET OF WITH NOT EQUAL TO")
+    (ucs               . #x228A)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "SUPERSET OF WITH NOT EQUAL TO")
+    (ucs               . #x228B)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "MULTISET")
+    (ucs               . #x228C)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "MULTISET MULTIPLICATION")
+    (ucs               . #x228D)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MULTISET UNION")
+    (ucs               . #x228E)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SQUARE IMAGE OF")
+    (ucs               . #x228F)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "SQUARE ORIGINAL OF")
+    (ucs               . #x2290)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "SQUARE IMAGE OF OR EQUAL TO")
+    (ucs               . #x2291)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "SQUARE ORIGINAL OF OR EQUAL TO")
+    (ucs               . #x2292)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "SQUARE CAP")
+    (ucs               . #x2293)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SQUARE CUP")
+    (ucs               . #x2294)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CIRCLED PLUS")
+    (ucs               . #x2295)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x22 #x53)     ; \e$(G"S\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED MINUS")
+    (ucs               . #x2296)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CIRCLED TIMES")
+    (ucs               . #x2297)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CIRCLED DIVISION SLASH")
+    (ucs               . #x2298)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "CIRCLED DOT OPERATOR")
+    (ucs               . #x2299)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x21 #x51)      ; \e$(A!Q\e(B
+    (korean-ksc5601    #x22 #x41)      ; \e$(C"A\e(B
+    (chinese-cns11643-1 #x22 #x54)     ; \e$(G"T\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED RING OPERATOR")
+    (ucs               . #x229A)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CIRCLED ASTERISK OPERATOR")
+    (ucs               . #x229B)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CIRCLED EQUALS")
+    (ucs               . #x229C)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CIRCLED DASH")
+    (ucs               . #x229D)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SQUARED PLUS")
+    (ucs               . #x229E)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SQUARED MINUS")
+    (ucs               . #x229F)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SQUARED TIMES")
+    (ucs               . #x22A0)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SQUARED DOT OPERATOR")
+    (ucs               . #x22A1)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHT TACK")
+    (ucs               . #x22A2)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "LEFT TACK")
+    (ucs               . #x22A3)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "DOWN TACK")
+    (ucs               . #x22A4)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UP TACK")
+    (ucs               . #x22A5)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x21 #x4D)      ; \e$(A!M\e(B
+    (japanese-jisx0208 #x22 #x5D)      ; \e$(B"]\e(B
+    (korean-ksc5601    #x21 #x51)      ; \e$(C!Q\e(B
+    (chinese-cns11643-1 #x22 #x47)     ; \e$(G"G\e(B
+    ))
+(define-char
+  '((name              . "ASSERTION")
+    (ucs               . #x22A6)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "MODELS")
+    (ucs               . #x22A7)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "TRUE")
+    (ucs               . #x22A8)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "FORCES")
+    (ucs               . #x22A9)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "TRIPLE VERTICAL BAR RIGHT TURNSTILE")
+    (ucs               . #x22AA)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE")
+    (ucs               . #x22AB)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "DOES NOT PROVE")
+    (ucs               . #x22AC)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x22A2 #x0338)
+    ))
+(define-char
+  '((name              . "NOT TRUE")
+    (ucs               . #x22AD)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x22A8 #x0338)
+    ))
+(define-char
+  '((name              . "DOES NOT FORCE")
+    (ucs               . #x22AE)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x22A9 #x0338)
+    ))
+(define-char
+  '((name . "NEGATED DOUBLE VERTICAL BAR DOUBLE RIGHT TURNSTILE")
+    (ucs               . #x22AF)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x22AB #x0338)
+    ))
+(define-char
+  '((name              . "PRECEDES UNDER RELATION")
+    (ucs               . #x22B0)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "SUCCEEDS UNDER RELATION")
+    (ucs               . #x22B1)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "NORMAL SUBGROUP OF")
+    (ucs               . #x22B2)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "CONTAINS AS NORMAL SUBGROUP")
+    (ucs               . #x22B3)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "NORMAL SUBGROUP OF OR EQUAL TO")
+    (ucs               . #x22B4)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "CONTAINS AS NORMAL SUBGROUP OR EQUAL TO")
+    (ucs               . #x22B5)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "ORIGINAL OF")
+    (ucs               . #x22B6)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "IMAGE OF")
+    (ucs               . #x22B7)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "MULTIMAP")
+    (ucs               . #x22B8)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "HERMITIAN CONJUGATE MATRIX")
+    (ucs               . #x22B9)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "INTERCALATE")
+    (ucs               . #x22BA)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "XOR")
+    (ucs               . #x22BB)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "NAND")
+    (ucs               . #x22BC)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "NOR")
+    (ucs               . #x22BD)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHT ANGLE WITH ARC")
+    (ucs               . #x22BE)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "RIGHT TRIANGLE")
+    (ucs               . #x22BF)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (chinese-cns11643-1 #x22 #x4A)     ; \e$(G"J\e(B
+    ))
+(define-char
+  '((name              . "N-ARY LOGICAL AND")
+    (ucs               . #x22C0)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "N-ARY LOGICAL OR")
+    (ucs               . #x22C1)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "N-ARY INTERSECTION")
+    (ucs               . #x22C2)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "N-ARY UNION")
+    (ucs               . #x22C3)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DIAMOND OPERATOR")
+    (ucs               . #x22C4)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DOT OPERATOR")
+    (ucs               . #x22C5)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "STAR OPERATOR")
+    (ucs               . #x22C6)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DIVISION TIMES")
+    (ucs               . #x22C7)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOWTIE")
+    (ucs               . #x22C8)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFT NORMAL FACTOR SEMIDIRECT PRODUCT")
+    (ucs               . #x22C9)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "RIGHT NORMAL FACTOR SEMIDIRECT PRODUCT")
+    (ucs               . #x22CA)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "LEFT SEMIDIRECT PRODUCT")
+    (ucs               . #x22CB)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "RIGHT SEMIDIRECT PRODUCT")
+    (ucs               . #x22CC)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "REVERSED TILDE EQUALS")
+    (ucs               . #x22CD)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "CURLY LOGICAL OR")
+    (ucs               . #x22CE)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CURLY LOGICAL AND")
+    (ucs               . #x22CF)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DOUBLE SUBSET")
+    (ucs               . #x22D0)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "DOUBLE SUPERSET")
+    (ucs               . #x22D1)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "DOUBLE INTERSECTION")
+    (ucs               . #x22D2)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DOUBLE UNION")
+    (ucs               . #x22D3)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "PITCHFORK")
+    (ucs               . #x22D4)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "EQUAL AND PARALLEL TO")
+    (ucs               . #x22D5)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LESS-THAN WITH DOT")
+    (ucs               . #x22D6)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "GREATER-THAN WITH DOT")
+    (ucs               . #x22D7)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "VERY MUCH LESS-THAN")
+    (ucs               . #x22D8)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "VERY MUCH GREATER-THAN")
+    (ucs               . #x22D9)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "LESS-THAN EQUAL TO OR GREATER-THAN")
+    (ucs               . #x22DA)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "GREATER-THAN EQUAL TO OR LESS-THAN")
+    (ucs               . #x22DB)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "EQUAL TO OR LESS-THAN")
+    (ucs               . #x22DC)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "EQUAL TO OR GREATER-THAN")
+    (ucs               . #x22DD)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "EQUAL TO OR PRECEDES")
+    (ucs               . #x22DE)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "EQUAL TO OR SUCCEEDS")
+    (ucs               . #x22DF)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "DOES NOT PRECEDE OR EQUAL")
+    (ucs               . #x22E0)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x227C #x0338)
+    ))
+(define-char
+  '((name              . "DOES NOT SUCCEED OR EQUAL")
+    (ucs               . #x22E1)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x227D #x0338)
+    ))
+(define-char
+  '((name              . "NOT SQUARE IMAGE OF OR EQUAL TO")
+    (ucs               . #x22E2)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x2291 #x0338)
+    ))
+(define-char
+  '((name              . "NOT SQUARE ORIGINAL OF OR EQUAL TO")
+    (ucs               . #x22E3)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x2292 #x0338)
+    ))
+(define-char
+  '((name              . "SQUARE IMAGE OF OR NOT EQUAL TO")
+    (ucs               . #x22E4)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "SQUARE ORIGINAL OF OR NOT EQUAL TO")
+    (ucs               . #x22E5)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "LESS-THAN BUT NOT EQUIVALENT TO")
+    (ucs               . #x22E6)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "GREATER-THAN BUT NOT EQUIVALENT TO")
+    (ucs               . #x22E7)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "PRECEDES BUT NOT EQUIVALENT TO")
+    (ucs               . #x22E8)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "SUCCEEDS BUT NOT EQUIVALENT TO")
+    (ucs               . #x22E9)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "NOT NORMAL SUBGROUP OF")
+    (ucs               . #x22EA)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x22B2 #x0338)
+    ))
+(define-char
+  '((name              . "DOES NOT CONTAIN AS NORMAL SUBGROUP")
+    (ucs               . #x22EB)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x22B3 #x0338)
+    ))
+(define-char
+  '((name              . "NOT NORMAL SUBGROUP OF OR EQUAL TO")
+    (ucs               . #x22EC)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x22B4 #x0338)
+    ))
+(define-char
+  '((name              . "DOES NOT CONTAIN AS NORMAL SUBGROUP OR EQUAL")
+    (ucs               . #x22ED)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x22B5 #x0338)
+    ))
+(define-char
+  '((name              . "VERTICAL ELLIPSIS")
+    (ucs               . #x22EE)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MIDLINE HORIZONTAL ELLIPSIS")
+    (ucs               . #x22EF)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UP RIGHT DIAGONAL ELLIPSIS")
+    (ucs               . #x22F0)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "DOWN RIGHT DIAGONAL ELLIPSIS")
+    (ucs               . #x22F1)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
diff --git a/lisp/utf-2000/u02300-Miscellaneous-Technical.el b/lisp/utf-2000/u02300-Miscellaneous-Technical.el
new file mode 100644 (file)
index 0000000..98b3699
--- /dev/null
@@ -0,0 +1,1091 @@
+(define-char
+  '((name              . "DIAMETER SIGN")
+    (ucs               . #x2300)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ELECTRIC ARROW")
+    (ucs               . #x2301)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HOUSE")
+    (ucs               . #x2302)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UP ARROWHEAD")
+    (ucs               . #x2303)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DOWN ARROWHEAD")
+    (ucs               . #x2304)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "PROJECTIVE")
+    (ucs               . #x2305)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "PERSPECTIVE")
+    (ucs               . #x2306)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WAVY LINE")
+    (ucs               . #x2307)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFT CEILING")
+    (ucs               . #x2308)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "RIGHT CEILING")
+    (ucs               . #x2309)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "LEFT FLOOR")
+    (ucs               . #x230A)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "RIGHT FLOOR")
+    (ucs               . #x230B)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "BOTTOM RIGHT CROP")
+    (ucs               . #x230C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOTTOM LEFT CROP")
+    (ucs               . #x230D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TOP RIGHT CROP")
+    (ucs               . #x230E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TOP LEFT CROP")
+    (ucs               . #x230F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "REVERSED NOT SIGN")
+    (ucs               . #x2310)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SQUARE LOZENGE")
+    (ucs               . #x2311)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARC")
+    (ucs               . #x2312)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x21 #x50)      ; \e$(A!P\e(B
+    (japanese-jisx0208 #x22 #x5E)      ; \e$(B"^\e(B
+    (korean-ksc5601    #x21 #x52)      ; \e$(C!R\e(B
+    ))
+(define-char
+  '((name              . "SEGMENT")
+    (ucs               . #x2313)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SECTOR")
+    (ucs               . #x2314)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELEPHONE RECORDER")
+    (ucs               . #x2315)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "POSITION INDICATOR")
+    (ucs               . #x2316)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "VIEWDATA SQUARE")
+    (ucs               . #x2317)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "PLACE OF INTEREST SIGN")
+    (ucs               . #x2318)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TURNED NOT SIGN")
+    (ucs               . #x2319)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WATCH")
+    (ucs               . #x231A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HOURGLASS")
+    (ucs               . #x231B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TOP LEFT CORNER")
+    (ucs               . #x231C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TOP RIGHT CORNER")
+    (ucs               . #x231D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOTTOM LEFT CORNER")
+    (ucs               . #x231E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOTTOM RIGHT CORNER")
+    (ucs               . #x231F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TOP HALF INTEGRAL")
+    (ucs               . #x2320)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "BOTTOM HALF INTEGRAL")
+    (ucs               . #x2321)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "FROWN")
+    (ucs               . #x2322)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SMILE")
+    (ucs               . #x2323)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UP ARROWHEAD BETWEEN TWO HORIZONTAL BARS")
+    (ucs               . #x2324)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OPTION KEY")
+    (ucs               . #x2325)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ERASE TO THE RIGHT")
+    (ucs               . #x2326)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "X IN A RECTANGLE BOX")
+    (ucs               . #x2327)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KEYBOARD")
+    (ucs               . #x2328)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFT-POINTING ANGLE BRACKET")
+    (ucs               . #x2329)
+    (general-category  punctuation open) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x3008)
+    ))
+(define-char
+  '((name              . "RIGHT-POINTING ANGLE BRACKET")
+    (ucs               . #x232A)
+    (general-category  punctuation close) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (->decomposition   #x3009)
+    ))
+(define-char
+  '((name              . "ERASE TO THE LEFT")
+    (ucs               . #x232B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BENZENE RING")
+    (ucs               . #x232C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CYLINDRICITY")
+    (ucs               . #x232D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ALL AROUND-PROFILE")
+    (ucs               . #x232E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYMMETRY")
+    (ucs               . #x232F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TOTAL RUNOUT")
+    (ucs               . #x2330)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DIMENSION ORIGIN")
+    (ucs               . #x2331)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CONICAL TAPER")
+    (ucs               . #x2332)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SLOPE")
+    (ucs               . #x2333)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COUNTERBORE")
+    (ucs               . #x2334)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COUNTERSINK")
+    (ucs               . #x2335)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL I-BEAM")
+    (ucs               . #x2336)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL SQUISH QUAD")
+    (ucs               . #x2337)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL QUAD EQUAL")
+    (ucs               . #x2338)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL QUAD DIVIDE")
+    (ucs               . #x2339)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL QUAD DIAMOND")
+    (ucs               . #x233A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL QUAD JOT")
+    (ucs               . #x233B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL QUAD CIRCLE")
+    (ucs               . #x233C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL CIRCLE STILE")
+    (ucs               . #x233D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL CIRCLE JOT")
+    (ucs               . #x233E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL SLASH BAR")
+    (ucs               . #x233F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL BACKSLASH BAR")
+    (ucs               . #x2340)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL QUAD SLASH")
+    (ucs               . #x2341)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL QUAD BACKSLASH")
+    (ucs               . #x2342)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL QUAD LESS-THAN")
+    (ucs               . #x2343)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL QUAD GREATER-THAN")
+    (ucs               . #x2344)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL LEFTWARDS VANE")
+    (ucs               . #x2345)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL RIGHTWARDS VANE")
+    (ucs               . #x2346)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL QUAD LEFTWARDS ARROW")
+    (ucs               . #x2347)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL QUAD RIGHTWARDS ARROW")
+    (ucs               . #x2348)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL CIRCLE BACKSLASH")
+    (ucs               . #x2349)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL DOWN TACK UNDERBAR")
+    (ucs               . #x234A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "*")
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL DELTA STILE")
+    (ucs               . #x234B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL QUAD DOWN CARET")
+    (ucs               . #x234C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL QUAD DELTA")
+    (ucs               . #x234D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL DOWN TACK JOT")
+    (ucs               . #x234E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "*")
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL UPWARDS VANE")
+    (ucs               . #x234F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL QUAD UPWARDS ARROW")
+    (ucs               . #x2350)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL UP TACK OVERBAR")
+    (ucs               . #x2351)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "*")
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL DEL STILE")
+    (ucs               . #x2352)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL QUAD UP CARET")
+    (ucs               . #x2353)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL QUAD DEL")
+    (ucs               . #x2354)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL UP TACK JOT")
+    (ucs               . #x2355)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "*")
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL DOWNWARDS VANE")
+    (ucs               . #x2356)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL QUAD DOWNWARDS ARROW")
+    (ucs               . #x2357)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL QUOTE UNDERBAR")
+    (ucs               . #x2358)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL DELTA UNDERBAR")
+    (ucs               . #x2359)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL DIAMOND UNDERBAR")
+    (ucs               . #x235A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL JOT UNDERBAR")
+    (ucs               . #x235B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL CIRCLE UNDERBAR")
+    (ucs               . #x235C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL UP SHOE JOT")
+    (ucs               . #x235D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL QUOTE QUAD")
+    (ucs               . #x235E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL CIRCLE STAR")
+    (ucs               . #x235F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL QUAD COLON")
+    (ucs               . #x2360)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL UP TACK DIAERESIS")
+    (ucs               . #x2361)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "*")
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL DEL DIAERESIS")
+    (ucs               . #x2362)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL STAR DIAERESIS")
+    (ucs               . #x2363)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL JOT DIAERESIS")
+    (ucs               . #x2364)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL CIRCLE DIAERESIS")
+    (ucs               . #x2365)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL DOWN SHOE STILE")
+    (ucs               . #x2366)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL LEFT SHOE STILE")
+    (ucs               . #x2367)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL TILDE DIAERESIS")
+    (ucs               . #x2368)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL GREATER-THAN DIAERESIS")
+    (ucs               . #x2369)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL COMMA BAR")
+    (ucs               . #x236A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL DEL TILDE")
+    (ucs               . #x236B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL ZILDE")
+    (ucs               . #x236C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL STILE TILDE")
+    (ucs               . #x236D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL SEMICOLON UNDERBAR")
+    (ucs               . #x236E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL QUAD NOT EQUAL")
+    (ucs               . #x236F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL QUAD QUESTION")
+    (ucs               . #x2370)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL DOWN CARET TILDE")
+    (ucs               . #x2371)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL UP CARET TILDE")
+    (ucs               . #x2372)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL IOTA")
+    (ucs               . #x2373)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL RHO")
+    (ucs               . #x2374)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL OMEGA")
+    (ucs               . #x2375)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL ALPHA UNDERBAR")
+    (ucs               . #x2376)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL EPSILON UNDERBAR")
+    (ucs               . #x2377)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL IOTA UNDERBAR")
+    (ucs               . #x2378)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL OMEGA UNDERBAR")
+    (ucs               . #x2379)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL ALPHA")
+    (ucs               . #x237A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "NOT CHECK MARK")
+    (ucs               . #x237B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SHOULDERED OPEN BOX")
+    (ucs               . #x237D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BELL SYMBOL")
+    (ucs               . #x237E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "VERTICAL LINE WITH MIDDLE DOT")
+    (ucs               . #x237F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "INSERTION SYMBOL")
+    (ucs               . #x2380)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CONTINUOUS UNDERLINE SYMBOL")
+    (ucs               . #x2381)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DISCONTINUOUS UNDERLINE SYMBOL")
+    (ucs               . #x2382)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "EMPHASIS SYMBOL")
+    (ucs               . #x2383)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMPOSITION SYMBOL")
+    (ucs               . #x2384)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE SQUARE WITH CENTRE VERTICAL LINE")
+    (ucs               . #x2385)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ENTER SYMBOL")
+    (ucs               . #x2386)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ALTERNATIVE KEY SYMBOL")
+    (ucs               . #x2387)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HELM SYMBOL")
+    (ucs               . #x2388)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CIRCLED HORIZONTAL BAR WITH NOTCH")
+    (ucs               . #x2389)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (iso-10646-comment . "pause")
+    ))
+(define-char
+  '((name              . "CIRCLED TRIANGLE DOWN")
+    (ucs               . #x238A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (iso-10646-comment . "break")
+    ))
+(define-char
+  '((name              . "BROKEN CIRCLE WITH NORTHWEST ARROW")
+    (ucs               . #x238B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (iso-10646-comment . "escape")
+    ))
+(define-char
+  '((name              . "UNDO SYMBOL")
+    (ucs               . #x238C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MONOSTABLE SYMBOL")
+    (ucs               . #x238D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HYSTERESIS SYMBOL")
+    (ucs               . #x238E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OPEN-CIRCUIT-OUTPUT H-TYPE SYMBOL")
+    (ucs               . #x238F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OPEN-CIRCUIT-OUTPUT L-TYPE SYMBOL")
+    (ucs               . #x2390)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "PASSIVE-PULL-DOWN-OUTPUT SYMBOL")
+    (ucs               . #x2391)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "PASSIVE-PULL-UP-OUTPUT SYMBOL")
+    (ucs               . #x2392)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DIRECT CURRENT SYMBOL FORM TWO")
+    (ucs               . #x2393)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SOFTWARE-FUNCTION SYMBOL")
+    (ucs               . #x2394)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "APL FUNCTIONAL SYMBOL QUAD")
+    (ucs               . #x2395)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DECIMAL SEPARATOR KEY SYMBOL")
+    (ucs               . #x2396)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "PREVIOUS PAGE")
+    (ucs               . #x2397)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "NEXT PAGE")
+    (ucs               . #x2398)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "PRINT SCREEN SYMBOL")
+    (ucs               . #x2399)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CLEAR SCREEN SYMBOL")
+    (ucs               . #x239A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u02400-Control-Pictures.el b/lisp/utf-2000/u02400-Control-Pictures.el
new file mode 100644 (file)
index 0000000..307392e
--- /dev/null
@@ -0,0 +1,306 @@
+(define-char
+  '((name              . "SYMBOL FOR NULL")
+    (ucs               . #x2400)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x21)     ; \e$(GB!\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR START OF HEADING")
+    (ucs               . #x2401)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x22)     ; \e$(GB"\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR START OF TEXT")
+    (ucs               . #x2402)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x23)     ; \e$(GB#\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR END OF TEXT")
+    (ucs               . #x2403)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x24)     ; \e$(GB$\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR END OF TRANSMISSION")
+    (ucs               . #x2404)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x25)     ; \e$(GB%\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR ENQUIRY")
+    (ucs               . #x2405)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x26)     ; \e$(GB&\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR ACKNOWLEDGE")
+    (ucs               . #x2406)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x27)     ; \e$(GB'\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR BELL")
+    (ucs               . #x2407)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x28)     ; \e$(GB(\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR BACKSPACE")
+    (ucs               . #x2408)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x29)     ; \e$(GB)\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR HORIZONTAL TABULATION")
+    (ucs               . #x2409)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x2A)     ; \e$(GB*\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR LINE FEED")
+    (ucs               . #x240A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x2B)     ; \e$(GB+\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR VERTICAL TABULATION")
+    (ucs               . #x240B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x2C)     ; \e$(GB,\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR FORM FEED")
+    (ucs               . #x240C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x2D)     ; \e$(GB-\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR CARRIAGE RETURN")
+    (ucs               . #x240D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x2E)     ; \e$(GB.\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR SHIFT OUT")
+    (ucs               . #x240E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x2F)     ; \e$(GB/\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR SHIFT IN")
+    (ucs               . #x240F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x30)     ; \e$(GB0\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR DATA LINK ESCAPE")
+    (ucs               . #x2410)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x31)     ; \e$(GB1\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR DEVICE CONTROL ONE")
+    (ucs               . #x2411)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x32)     ; \e$(GB2\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR DEVICE CONTROL TWO")
+    (ucs               . #x2412)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x33)     ; \e$(GB3\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR DEVICE CONTROL THREE")
+    (ucs               . #x2413)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x34)     ; \e$(GB4\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR DEVICE CONTROL FOUR")
+    (ucs               . #x2414)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x35)     ; \e$(GB5\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR NEGATIVE ACKNOWLEDGE")
+    (ucs               . #x2415)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x36)     ; \e$(GB6\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR SYNCHRONOUS IDLE")
+    (ucs               . #x2416)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x37)     ; \e$(GB7\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR END OF TRANSMISSION BLOCK")
+    (ucs               . #x2417)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x38)     ; \e$(GB8\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR CANCEL")
+    (ucs               . #x2418)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x39)     ; \e$(GB9\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR END OF MEDIUM")
+    (ucs               . #x2419)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x3A)     ; \e$(GB:\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR SUBSTITUTE")
+    (ucs               . #x241A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x3B)     ; \e$(GB;\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR ESCAPE")
+    (ucs               . #x241B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x3C)     ; \e$(GB<\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR FILE SEPARATOR")
+    (ucs               . #x241C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x3D)     ; \e$(GB=\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR GROUP SEPARATOR")
+    (ucs               . #x241D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x3E)     ; \e$(GB>\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR RECORD SEPARATOR")
+    (ucs               . #x241E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x3F)     ; \e$(GB?\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR UNIT SEPARATOR")
+    (ucs               . #x241F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x40)     ; \e$(GB@\e(B
+    ))
+(define-char
+  '((name              . "SYMBOL FOR SPACE")
+    (ucs               . #x2420)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYMBOL FOR DELETE")
+    (ucs               . #x2421)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x42 #x41)     ; \e$(GBA\e(B
+    ))
+(define-char
+  '((name              . "BLANK SYMBOL")
+    (ucs               . #x2422)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OPEN BOX")
+    (ucs               . #x2423)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYMBOL FOR NEWLINE")
+    (ucs               . #x2424)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYMBOL FOR DELETE FORM TWO")
+    (ucs               . #x2425)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SYMBOL FOR SUBSTITUTE FORM TWO")
+    (ucs               . #x2426)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u02440-OCR.el b/lisp/utf-2000/u02440-OCR.el
new file mode 100644 (file)
index 0000000..d41efad
--- /dev/null
@@ -0,0 +1,77 @@
+(define-char
+  '((name              . "OCR HOOK")
+    (ucs               . #x2440)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OCR CHAIR")
+    (ucs               . #x2441)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OCR FORK")
+    (ucs               . #x2442)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OCR INVERTED FORK")
+    (ucs               . #x2443)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OCR BELT BUCKLE")
+    (ucs               . #x2444)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OCR BOW TIE")
+    (ucs               . #x2445)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OCR BRANCH BANK IDENTIFICATION")
+    (ucs               . #x2446)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OCR AMOUNT OF CHECK")
+    (ucs               . #x2447)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OCR DASH")
+    (ucs               . #x2448)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OCR CUSTOMER ACCOUNT NUMBER")
+    (ucs               . #x2449)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OCR DOUBLE BACKSLASH")
+    (ucs               . #x244A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u02460-Enclosed-Alphanumerics.el b/lisp/utf-2000/u02460-Enclosed-Alphanumerics.el
new file mode 100644 (file)
index 0000000..9f82cde
--- /dev/null
@@ -0,0 +1,1431 @@
+(define-char
+  '((name              . "CIRCLED DIGIT ONE")
+    (ucs               . #x2460)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 1)
+    (numeric-value     . 1)
+    (->decomposition   circle #x0031)
+    (chinese-gb2312    #x22 #x59)      ; \e$(A"Y\e(B
+    (korean-ksc5601    #x28 #x67)      ; \e$(C(g\e(B
+    (chinese-cns11643-1 #x26 #x21)     ; \e$(G&!\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED DIGIT TWO")
+    (ucs               . #x2461)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 2)
+    (numeric-value     . 2)
+    (->decomposition   circle #x0032)
+    (chinese-gb2312    #x22 #x5A)      ; \e$(A"Z\e(B
+    (korean-ksc5601    #x28 #x68)      ; \e$(C(h\e(B
+    (chinese-cns11643-1 #x26 #x22)     ; \e$(G&"\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED DIGIT THREE")
+    (ucs               . #x2462)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 3)
+    (numeric-value     . 3)
+    (->decomposition   circle #x0033)
+    (chinese-gb2312    #x22 #x5B)      ; \e$(A"[\e(B
+    (korean-ksc5601    #x28 #x69)      ; \e$(C(i\e(B
+    (chinese-cns11643-1 #x26 #x23)     ; \e$(G&#\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED DIGIT FOUR")
+    (ucs               . #x2463)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 4)
+    (numeric-value     . 4)
+    (->decomposition   circle #x0034)
+    (chinese-gb2312    #x22 #x5C)      ; \e$(A"\\e(B
+    (korean-ksc5601    #x28 #x6A)      ; \e$(C(j\e(B
+    (chinese-cns11643-1 #x26 #x24)     ; \e$(G&$\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED DIGIT FIVE")
+    (ucs               . #x2464)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 5)
+    (numeric-value     . 5)
+    (->decomposition   circle #x0035)
+    (chinese-gb2312    #x22 #x5D)      ; \e$(A"]\e(B
+    (korean-ksc5601    #x28 #x6B)      ; \e$(C(k\e(B
+    (chinese-cns11643-1 #x26 #x25)     ; \e$(G&%\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED DIGIT SIX")
+    (ucs               . #x2465)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 6)
+    (numeric-value     . 6)
+    (->decomposition   circle #x0036)
+    (chinese-gb2312    #x22 #x5E)      ; \e$(A"^\e(B
+    (korean-ksc5601    #x28 #x6C)      ; \e$(C(l\e(B
+    (chinese-cns11643-1 #x26 #x26)     ; \e$(G&&\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED DIGIT SEVEN")
+    (ucs               . #x2466)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 7)
+    (numeric-value     . 7)
+    (->decomposition   circle #x0037)
+    (chinese-gb2312    #x22 #x5F)      ; \e$(A"_\e(B
+    (korean-ksc5601    #x28 #x6D)      ; \e$(C(m\e(B
+    (chinese-cns11643-1 #x26 #x27)     ; \e$(G&'\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED DIGIT EIGHT")
+    (ucs               . #x2467)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 8)
+    (numeric-value     . 8)
+    (->decomposition   circle #x0038)
+    (chinese-gb2312    #x22 #x60)      ; \e$(A"`\e(B
+    (korean-ksc5601    #x28 #x6E)      ; \e$(C(n\e(B
+    (chinese-cns11643-1 #x26 #x28)     ; \e$(G&(\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED DIGIT NINE")
+    (ucs               . #x2468)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 9)
+    (numeric-value     . 9)
+    (->decomposition   circle #x0039)
+    (chinese-gb2312    #x22 #x61)      ; \e$(A"a\e(B
+    (korean-ksc5601    #x28 #x6F)      ; \e$(C(o\e(B
+    (chinese-cns11643-1 #x26 #x29)     ; \e$(G&)\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED NUMBER TEN")
+    (ucs               . #x2469)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 10)
+    (->decomposition   circle #x0031 #x0030)
+    (chinese-gb2312    #x22 #x62)      ; \e$(A"b\e(B
+    (korean-ksc5601    #x28 #x70)      ; \e$(C(p\e(B
+    (chinese-cns11643-1 #x26 #x2A)     ; \e$(G&*\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED NUMBER ELEVEN")
+    (ucs               . #x246A)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 11)
+    (->decomposition   circle #x0031 #x0031)
+    (korean-ksc5601    #x28 #x71)      ; \e$(C(q\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED NUMBER TWELVE")
+    (ucs               . #x246B)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 12)
+    (->decomposition   circle #x0031 #x0032)
+    (korean-ksc5601    #x28 #x72)      ; \e$(C(r\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED NUMBER THIRTEEN")
+    (ucs               . #x246C)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 13)
+    (->decomposition   circle #x0031 #x0033)
+    (korean-ksc5601    #x28 #x73)      ; \e$(C(s\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED NUMBER FOURTEEN")
+    (ucs               . #x246D)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 14)
+    (->decomposition   circle #x0031 #x0034)
+    (korean-ksc5601    #x28 #x74)      ; \e$(C(t\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED NUMBER FIFTEEN")
+    (ucs               . #x246E)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 15)
+    (->decomposition   circle #x0031 #x0035)
+    (korean-ksc5601    #x28 #x75)      ; \e$(C(u\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED NUMBER SIXTEEN")
+    (ucs               . #x246F)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 16)
+    (->decomposition   circle #x0031 #x0036)
+    ))
+(define-char
+  '((name              . "CIRCLED NUMBER SEVENTEEN")
+    (ucs               . #x2470)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 17)
+    (->decomposition   circle #x0031 #x0037)
+    ))
+(define-char
+  '((name              . "CIRCLED NUMBER EIGHTEEN")
+    (ucs               . #x2471)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 18)
+    (->decomposition   circle #x0031 #x0038)
+    ))
+(define-char
+  '((name              . "CIRCLED NUMBER NINETEEN")
+    (ucs               . #x2472)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 19)
+    (->decomposition   circle #x0031 #x0039)
+    ))
+(define-char
+  '((name              . "CIRCLED NUMBER TWENTY")
+    (ucs               . #x2473)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 20)
+    (->decomposition   circle #x0032 #x0030)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED DIGIT ONE")
+    (ucs               . #x2474)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 1)
+    (numeric-value     . 1)
+    (->decomposition   compat #x0028 #x0031 #x0029)
+    (chinese-gb2312    #x22 #x45)      ; \e$(A"E\e(B
+    (korean-ksc5601    #x29 #x67)      ; \e$(C)g\e(B
+    (chinese-cns11643-1 #x26 #x2B)     ; \e$(G&+\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED DIGIT TWO")
+    (ucs               . #x2475)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 2)
+    (numeric-value     . 2)
+    (->decomposition   compat #x0028 #x0032 #x0029)
+    (chinese-gb2312    #x22 #x46)      ; \e$(A"F\e(B
+    (korean-ksc5601    #x29 #x68)      ; \e$(C)h\e(B
+    (chinese-cns11643-1 #x26 #x2C)     ; \e$(G&,\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED DIGIT THREE")
+    (ucs               . #x2476)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 3)
+    (numeric-value     . 3)
+    (->decomposition   compat #x0028 #x0033 #x0029)
+    (chinese-gb2312    #x22 #x47)      ; \e$(A"G\e(B
+    (korean-ksc5601    #x29 #x69)      ; \e$(C)i\e(B
+    (chinese-cns11643-1 #x26 #x2D)     ; \e$(G&-\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED DIGIT FOUR")
+    (ucs               . #x2477)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 4)
+    (numeric-value     . 4)
+    (->decomposition   compat #x0028 #x0034 #x0029)
+    (chinese-gb2312    #x22 #x48)      ; \e$(A"H\e(B
+    (korean-ksc5601    #x29 #x6A)      ; \e$(C)j\e(B
+    (chinese-cns11643-1 #x26 #x2E)     ; \e$(G&.\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED DIGIT FIVE")
+    (ucs               . #x2478)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 5)
+    (numeric-value     . 5)
+    (->decomposition   compat #x0028 #x0035 #x0029)
+    (chinese-gb2312    #x22 #x49)      ; \e$(A"I\e(B
+    (korean-ksc5601    #x29 #x6B)      ; \e$(C)k\e(B
+    (chinese-cns11643-1 #x26 #x2F)     ; \e$(G&/\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED DIGIT SIX")
+    (ucs               . #x2479)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 6)
+    (numeric-value     . 6)
+    (->decomposition   compat #x0028 #x0036 #x0029)
+    (chinese-gb2312    #x22 #x4A)      ; \e$(A"J\e(B
+    (korean-ksc5601    #x29 #x6C)      ; \e$(C)l\e(B
+    (chinese-cns11643-1 #x26 #x30)     ; \e$(G&0\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED DIGIT SEVEN")
+    (ucs               . #x247A)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 7)
+    (numeric-value     . 7)
+    (->decomposition   compat #x0028 #x0037 #x0029)
+    (chinese-gb2312    #x22 #x4B)      ; \e$(A"K\e(B
+    (korean-ksc5601    #x29 #x6D)      ; \e$(C)m\e(B
+    (chinese-cns11643-1 #x26 #x31)     ; \e$(G&1\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED DIGIT EIGHT")
+    (ucs               . #x247B)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 8)
+    (numeric-value     . 8)
+    (->decomposition   compat #x0028 #x0038 #x0029)
+    (chinese-gb2312    #x22 #x4C)      ; \e$(A"L\e(B
+    (korean-ksc5601    #x29 #x6E)      ; \e$(C)n\e(B
+    (chinese-cns11643-1 #x26 #x32)     ; \e$(G&2\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED DIGIT NINE")
+    (ucs               . #x247C)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 9)
+    (numeric-value     . 9)
+    (->decomposition   compat #x0028 #x0039 #x0029)
+    (chinese-gb2312    #x22 #x4D)      ; \e$(A"M\e(B
+    (korean-ksc5601    #x29 #x6F)      ; \e$(C)o\e(B
+    (chinese-cns11643-1 #x26 #x33)     ; \e$(G&3\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED NUMBER TEN")
+    (ucs               . #x247D)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 10)
+    (->decomposition   compat #x0028 #x0031 #x0030 #x0029)
+    (chinese-gb2312    #x22 #x4E)      ; \e$(A"N\e(B
+    (korean-ksc5601    #x29 #x70)      ; \e$(C)p\e(B
+    (chinese-cns11643-1 #x26 #x34)     ; \e$(G&4\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED NUMBER ELEVEN")
+    (ucs               . #x247E)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 11)
+    (->decomposition   compat #x0028 #x0031 #x0031 #x0029)
+    (chinese-gb2312    #x22 #x4F)      ; \e$(A"O\e(B
+    (korean-ksc5601    #x29 #x71)      ; \e$(C)q\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED NUMBER TWELVE")
+    (ucs               . #x247F)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 12)
+    (->decomposition   compat #x0028 #x0031 #x0032 #x0029)
+    (chinese-gb2312    #x22 #x50)      ; \e$(A"P\e(B
+    (korean-ksc5601    #x29 #x72)      ; \e$(C)r\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED NUMBER THIRTEEN")
+    (ucs               . #x2480)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 13)
+    (->decomposition   compat #x0028 #x0031 #x0033 #x0029)
+    (chinese-gb2312    #x22 #x51)      ; \e$(A"Q\e(B
+    (korean-ksc5601    #x29 #x73)      ; \e$(C)s\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED NUMBER FOURTEEN")
+    (ucs               . #x2481)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 14)
+    (->decomposition   compat #x0028 #x0031 #x0034 #x0029)
+    (chinese-gb2312    #x22 #x52)      ; \e$(A"R\e(B
+    (korean-ksc5601    #x29 #x74)      ; \e$(C)t\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED NUMBER FIFTEEN")
+    (ucs               . #x2482)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 15)
+    (->decomposition   compat #x0028 #x0031 #x0035 #x0029)
+    (chinese-gb2312    #x22 #x53)      ; \e$(A"S\e(B
+    (korean-ksc5601    #x29 #x75)      ; \e$(C)u\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED NUMBER SIXTEEN")
+    (ucs               . #x2483)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 16)
+    (->decomposition   compat #x0028 #x0031 #x0036 #x0029)
+    (chinese-gb2312    #x22 #x54)      ; \e$(A"T\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED NUMBER SEVENTEEN")
+    (ucs               . #x2484)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 17)
+    (->decomposition   compat #x0028 #x0031 #x0037 #x0029)
+    (chinese-gb2312    #x22 #x55)      ; \e$(A"U\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED NUMBER EIGHTEEN")
+    (ucs               . #x2485)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 18)
+    (->decomposition   compat #x0028 #x0031 #x0038 #x0029)
+    (chinese-gb2312    #x22 #x56)      ; \e$(A"V\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED NUMBER NINETEEN")
+    (ucs               . #x2486)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 19)
+    (->decomposition   compat #x0028 #x0031 #x0039 #x0029)
+    (chinese-gb2312    #x22 #x57)      ; \e$(A"W\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED NUMBER TWENTY")
+    (ucs               . #x2487)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 20)
+    (->decomposition   compat #x0028 #x0032 #x0030 #x0029)
+    (chinese-gb2312    #x22 #x58)      ; \e$(A"X\e(B
+    ))
+(define-char
+  '((name              . "DIGIT ONE FULL STOP")
+    (ucs               . #x2488)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 1)
+    (numeric-value     . 1)
+    (->decomposition   compat #x0031 #x002E)
+    (chinese-gb2312    #x22 #x31)      ; \e$(A"1\e(B
+    ))
+(define-char
+  '((name              . "DIGIT TWO FULL STOP")
+    (ucs               . #x2489)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 2)
+    (numeric-value     . 2)
+    (->decomposition   compat #x0032 #x002E)
+    (chinese-gb2312    #x22 #x32)      ; \e$(A"2\e(B
+    ))
+(define-char
+  '((name              . "DIGIT THREE FULL STOP")
+    (ucs               . #x248A)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 3)
+    (numeric-value     . 3)
+    (->decomposition   compat #x0033 #x002E)
+    (chinese-gb2312    #x22 #x33)      ; \e$(A"3\e(B
+    ))
+(define-char
+  '((name              . "DIGIT FOUR FULL STOP")
+    (ucs               . #x248B)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 4)
+    (numeric-value     . 4)
+    (->decomposition   compat #x0034 #x002E)
+    (chinese-gb2312    #x22 #x34)      ; \e$(A"4\e(B
+    ))
+(define-char
+  '((name              . "DIGIT FIVE FULL STOP")
+    (ucs               . #x248C)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 5)
+    (numeric-value     . 5)
+    (->decomposition   compat #x0035 #x002E)
+    (chinese-gb2312    #x22 #x35)      ; \e$(A"5\e(B
+    ))
+(define-char
+  '((name              . "DIGIT SIX FULL STOP")
+    (ucs               . #x248D)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 6)
+    (numeric-value     . 6)
+    (->decomposition   compat #x0036 #x002E)
+    (chinese-gb2312    #x22 #x36)      ; \e$(A"6\e(B
+    ))
+(define-char
+  '((name              . "DIGIT SEVEN FULL STOP")
+    (ucs               . #x248E)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 7)
+    (numeric-value     . 7)
+    (->decomposition   compat #x0037 #x002E)
+    (chinese-gb2312    #x22 #x37)      ; \e$(A"7\e(B
+    ))
+(define-char
+  '((name              . "DIGIT EIGHT FULL STOP")
+    (ucs               . #x248F)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 8)
+    (numeric-value     . 8)
+    (->decomposition   compat #x0038 #x002E)
+    (chinese-gb2312    #x22 #x38)      ; \e$(A"8\e(B
+    ))
+(define-char
+  '((name              . "DIGIT NINE FULL STOP")
+    (ucs               . #x2490)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 9)
+    (numeric-value     . 9)
+    (->decomposition   compat #x0039 #x002E)
+    (chinese-gb2312    #x22 #x39)      ; \e$(A"9\e(B
+    ))
+(define-char
+  '((name              . "NUMBER TEN FULL STOP")
+    (ucs               . #x2491)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 10)
+    (->decomposition   compat #x0031 #x0030 #x002E)
+    (chinese-gb2312    #x22 #x3A)      ; \e$(A":\e(B
+    ))
+(define-char
+  '((name              . "NUMBER ELEVEN FULL STOP")
+    (ucs               . #x2492)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 11)
+    (->decomposition   compat #x0031 #x0031 #x002E)
+    (chinese-gb2312    #x22 #x3B)      ; \e$(A";\e(B
+    ))
+(define-char
+  '((name              . "NUMBER TWELVE FULL STOP")
+    (ucs               . #x2493)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 12)
+    (->decomposition   compat #x0031 #x0032 #x002E)
+    (chinese-gb2312    #x22 #x3C)      ; \e$(A"<\e(B
+    ))
+(define-char
+  '((name              . "NUMBER THIRTEEN FULL STOP")
+    (ucs               . #x2494)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 13)
+    (->decomposition   compat #x0031 #x0033 #x002E)
+    (chinese-gb2312    #x22 #x3D)      ; \e$(A"=\e(B
+    ))
+(define-char
+  '((name              . "NUMBER FOURTEEN FULL STOP")
+    (ucs               . #x2495)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 14)
+    (->decomposition   compat #x0031 #x0034 #x002E)
+    (chinese-gb2312    #x22 #x3E)      ; \e$(A">\e(B
+    ))
+(define-char
+  '((name              . "NUMBER FIFTEEN FULL STOP")
+    (ucs               . #x2496)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 15)
+    (->decomposition   compat #x0031 #x0035 #x002E)
+    (chinese-gb2312    #x22 #x3F)      ; \e$(A"?\e(B
+    ))
+(define-char
+  '((name              . "NUMBER SIXTEEN FULL STOP")
+    (ucs               . #x2497)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 16)
+    (->decomposition   compat #x0031 #x0036 #x002E)
+    (chinese-gb2312    #x22 #x40)      ; \e$(A"@\e(B
+    ))
+(define-char
+  '((name              . "NUMBER SEVENTEEN FULL STOP")
+    (ucs               . #x2498)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 17)
+    (->decomposition   compat #x0031 #x0037 #x002E)
+    (chinese-gb2312    #x22 #x41)      ; \e$(A"A\e(B
+    ))
+(define-char
+  '((name              . "NUMBER EIGHTEEN FULL STOP")
+    (ucs               . #x2499)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 18)
+    (->decomposition   compat #x0031 #x0038 #x002E)
+    (chinese-gb2312    #x22 #x42)      ; \e$(A"B\e(B
+    ))
+(define-char
+  '((name              . "NUMBER NINETEEN FULL STOP")
+    (ucs               . #x249A)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 19)
+    (->decomposition   compat #x0031 #x0039 #x002E)
+    (chinese-gb2312    #x22 #x43)      ; \e$(A"C\e(B
+    ))
+(define-char
+  '((name              . "NUMBER TWENTY FULL STOP")
+    (ucs               . #x249B)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (numeric-value     . 20)
+    (->decomposition   compat #x0032 #x0030 #x002E)
+    (chinese-gb2312    #x22 #x44)      ; \e$(A"D\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER A")
+    (ucs               . #x249C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x0061 #x0029)
+    (korean-ksc5601    #x29 #x4D)      ; \e$(C)M\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER B")
+    (ucs               . #x249D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x0062 #x0029)
+    (korean-ksc5601    #x29 #x4E)      ; \e$(C)N\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER C")
+    (ucs               . #x249E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x0063 #x0029)
+    (korean-ksc5601    #x29 #x4F)      ; \e$(C)O\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER D")
+    (ucs               . #x249F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x0064 #x0029)
+    (korean-ksc5601    #x29 #x50)      ; \e$(C)P\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER E")
+    (ucs               . #x24A0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x0065 #x0029)
+    (korean-ksc5601    #x29 #x51)      ; \e$(C)Q\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER F")
+    (ucs               . #x24A1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x0066 #x0029)
+    (korean-ksc5601    #x29 #x52)      ; \e$(C)R\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER G")
+    (ucs               . #x24A2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x0067 #x0029)
+    (korean-ksc5601    #x29 #x53)      ; \e$(C)S\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER H")
+    (ucs               . #x24A3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x0068 #x0029)
+    (korean-ksc5601    #x29 #x54)      ; \e$(C)T\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER I")
+    (ucs               . #x24A4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x0069 #x0029)
+    (korean-ksc5601    #x29 #x55)      ; \e$(C)U\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER J")
+    (ucs               . #x24A5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x006A #x0029)
+    (korean-ksc5601    #x29 #x56)      ; \e$(C)V\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER K")
+    (ucs               . #x24A6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x006B #x0029)
+    (korean-ksc5601    #x29 #x57)      ; \e$(C)W\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER L")
+    (ucs               . #x24A7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x006C #x0029)
+    (korean-ksc5601    #x29 #x58)      ; \e$(C)X\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER M")
+    (ucs               . #x24A8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x006D #x0029)
+    (korean-ksc5601    #x29 #x59)      ; \e$(C)Y\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER N")
+    (ucs               . #x24A9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x006E #x0029)
+    (korean-ksc5601    #x29 #x5A)      ; \e$(C)Z\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER O")
+    (ucs               . #x24AA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x006F #x0029)
+    (korean-ksc5601    #x29 #x5B)      ; \e$(C)[\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER P")
+    (ucs               . #x24AB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x0070 #x0029)
+    (korean-ksc5601    #x29 #x5C)      ; \e$(C)\\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER Q")
+    (ucs               . #x24AC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x0071 #x0029)
+    (korean-ksc5601    #x29 #x5D)      ; \e$(C)]\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER R")
+    (ucs               . #x24AD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x0072 #x0029)
+    (korean-ksc5601    #x29 #x5E)      ; \e$(C)^\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER S")
+    (ucs               . #x24AE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x0073 #x0029)
+    (korean-ksc5601    #x29 #x5F)      ; \e$(C)_\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER T")
+    (ucs               . #x24AF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x0074 #x0029)
+    (korean-ksc5601    #x29 #x60)      ; \e$(C)`\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER U")
+    (ucs               . #x24B0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x0075 #x0029)
+    (korean-ksc5601    #x29 #x61)      ; \e$(C)a\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER V")
+    (ucs               . #x24B1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x0076 #x0029)
+    (korean-ksc5601    #x29 #x62)      ; \e$(C)b\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER W")
+    (ucs               . #x24B2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x0077 #x0029)
+    (korean-ksc5601    #x29 #x63)      ; \e$(C)c\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER X")
+    (ucs               . #x24B3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x0078 #x0029)
+    (korean-ksc5601    #x29 #x64)      ; \e$(C)d\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER Y")
+    (ucs               . #x24B4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x0079 #x0029)
+    (korean-ksc5601    #x29 #x65)      ; \e$(C)e\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED LATIN SMALL LETTER Z")
+    (ucs               . #x24B5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x007A #x0029)
+    (korean-ksc5601    #x29 #x66)      ; \e$(C)f\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER A")
+    (ucs               . #x24B6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0041)
+    (->lowercase       #x24D0)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER B")
+    (ucs               . #x24B7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0042)
+    (->lowercase       #x24D1)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER C")
+    (ucs               . #x24B8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0043)
+    (->lowercase       #x24D2)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER D")
+    (ucs               . #x24B9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0044)
+    (->lowercase       #x24D3)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER E")
+    (ucs               . #x24BA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0045)
+    (->lowercase       #x24D4)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER F")
+    (ucs               . #x24BB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0046)
+    (->lowercase       #x24D5)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER G")
+    (ucs               . #x24BC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0047)
+    (->lowercase       #x24D6)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER H")
+    (ucs               . #x24BD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0048)
+    (->lowercase       #x24D7)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER I")
+    (ucs               . #x24BE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0049)
+    (->lowercase       #x24D8)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER J")
+    (ucs               . #x24BF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x004A)
+    (->lowercase       #x24D9)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER K")
+    (ucs               . #x24C0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x004B)
+    (->lowercase       #x24DA)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER L")
+    (ucs               . #x24C1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x004C)
+    (->lowercase       #x24DB)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER M")
+    (ucs               . #x24C2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x004D)
+    (->lowercase       #x24DC)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER N")
+    (ucs               . #x24C3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x004E)
+    (->lowercase       #x24DD)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER O")
+    (ucs               . #x24C4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x004F)
+    (->lowercase       #x24DE)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER P")
+    (ucs               . #x24C5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0050)
+    (->lowercase       #x24DF)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER Q")
+    (ucs               . #x24C6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0051)
+    (->lowercase       #x24E0)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER R")
+    (ucs               . #x24C7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0052)
+    (->lowercase       #x24E1)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER S")
+    (ucs               . #x24C8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0053)
+    (->lowercase       #x24E2)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER T")
+    (ucs               . #x24C9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0054)
+    (->lowercase       #x24E3)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER U")
+    (ucs               . #x24CA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0055)
+    (->lowercase       #x24E4)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER V")
+    (ucs               . #x24CB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0056)
+    (->lowercase       #x24E5)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER W")
+    (ucs               . #x24CC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0057)
+    (->lowercase       #x24E6)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER X")
+    (ucs               . #x24CD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0058)
+    (->lowercase       #x24E7)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER Y")
+    (ucs               . #x24CE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0059)
+    (->lowercase       #x24E8)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN CAPITAL LETTER Z")
+    (ucs               . #x24CF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x005A)
+    (->lowercase       #x24E9)
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER A")
+    (ucs               . #x24D0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0061)
+    (->uppercase       #x24B6)
+    (->titlecase       #x24B6)
+    (korean-ksc5601    #x28 #x4D)      ; \e$(C(M\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER B")
+    (ucs               . #x24D1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0062)
+    (->uppercase       #x24B7)
+    (->titlecase       #x24B7)
+    (korean-ksc5601    #x28 #x4E)      ; \e$(C(N\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER C")
+    (ucs               . #x24D2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0063)
+    (->uppercase       #x24B8)
+    (->titlecase       #x24B8)
+    (korean-ksc5601    #x28 #x4F)      ; \e$(C(O\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER D")
+    (ucs               . #x24D3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0064)
+    (->uppercase       #x24B9)
+    (->titlecase       #x24B9)
+    (korean-ksc5601    #x28 #x50)      ; \e$(C(P\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER E")
+    (ucs               . #x24D4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0065)
+    (->uppercase       #x24BA)
+    (->titlecase       #x24BA)
+    (korean-ksc5601    #x28 #x51)      ; \e$(C(Q\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER F")
+    (ucs               . #x24D5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0066)
+    (->uppercase       #x24BB)
+    (->titlecase       #x24BB)
+    (korean-ksc5601    #x28 #x52)      ; \e$(C(R\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER G")
+    (ucs               . #x24D6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0067)
+    (->uppercase       #x24BC)
+    (->titlecase       #x24BC)
+    (korean-ksc5601    #x28 #x53)      ; \e$(C(S\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER H")
+    (ucs               . #x24D7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0068)
+    (->uppercase       #x24BD)
+    (->titlecase       #x24BD)
+    (korean-ksc5601    #x28 #x54)      ; \e$(C(T\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER I")
+    (ucs               . #x24D8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0069)
+    (->uppercase       #x24BE)
+    (->titlecase       #x24BE)
+    (korean-ksc5601    #x28 #x55)      ; \e$(C(U\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER J")
+    (ucs               . #x24D9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x006A)
+    (->uppercase       #x24BF)
+    (->titlecase       #x24BF)
+    (korean-ksc5601    #x28 #x56)      ; \e$(C(V\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER K")
+    (ucs               . #x24DA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x006B)
+    (->uppercase       #x24C0)
+    (->titlecase       #x24C0)
+    (korean-ksc5601    #x28 #x57)      ; \e$(C(W\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER L")
+    (ucs               . #x24DB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x006C)
+    (->uppercase       #x24C1)
+    (->titlecase       #x24C1)
+    (korean-ksc5601    #x28 #x58)      ; \e$(C(X\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER M")
+    (ucs               . #x24DC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x006D)
+    (->uppercase       #x24C2)
+    (->titlecase       #x24C2)
+    (korean-ksc5601    #x28 #x59)      ; \e$(C(Y\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER N")
+    (ucs               . #x24DD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x006E)
+    (->uppercase       #x24C3)
+    (->titlecase       #x24C3)
+    (korean-ksc5601    #x28 #x5A)      ; \e$(C(Z\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER O")
+    (ucs               . #x24DE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x006F)
+    (->uppercase       #x24C4)
+    (->titlecase       #x24C4)
+    (korean-ksc5601    #x28 #x5B)      ; \e$(C([\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER P")
+    (ucs               . #x24DF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0070)
+    (->uppercase       #x24C5)
+    (->titlecase       #x24C5)
+    (korean-ksc5601    #x28 #x5C)      ; \e$(C(\\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER Q")
+    (ucs               . #x24E0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0071)
+    (->uppercase       #x24C6)
+    (->titlecase       #x24C6)
+    (korean-ksc5601    #x28 #x5D)      ; \e$(C(]\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER R")
+    (ucs               . #x24E1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0072)
+    (->uppercase       #x24C7)
+    (->titlecase       #x24C7)
+    (korean-ksc5601    #x28 #x5E)      ; \e$(C(^\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER S")
+    (ucs               . #x24E2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0073)
+    (->uppercase       #x24C8)
+    (->titlecase       #x24C8)
+    (korean-ksc5601    #x28 #x5F)      ; \e$(C(_\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER T")
+    (ucs               . #x24E3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0074)
+    (->uppercase       #x24C9)
+    (->titlecase       #x24C9)
+    (korean-ksc5601    #x28 #x60)      ; \e$(C(`\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER U")
+    (ucs               . #x24E4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0075)
+    (->uppercase       #x24CA)
+    (->titlecase       #x24CA)
+    (korean-ksc5601    #x28 #x61)      ; \e$(C(a\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER V")
+    (ucs               . #x24E5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0076)
+    (->uppercase       #x24CB)
+    (->titlecase       #x24CB)
+    (korean-ksc5601    #x28 #x62)      ; \e$(C(b\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER W")
+    (ucs               . #x24E6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0077)
+    (->uppercase       #x24CC)
+    (->titlecase       #x24CC)
+    (korean-ksc5601    #x28 #x63)      ; \e$(C(c\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER X")
+    (ucs               . #x24E7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0078)
+    (->uppercase       #x24CD)
+    (->titlecase       #x24CD)
+    (korean-ksc5601    #x28 #x64)      ; \e$(C(d\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER Y")
+    (ucs               . #x24E8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x0079)
+    (->uppercase       #x24CE)
+    (->titlecase       #x24CE)
+    (korean-ksc5601    #x28 #x65)      ; \e$(C(e\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED LATIN SMALL LETTER Z")
+    (ucs               . #x24E9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x007A)
+    (->uppercase       #x24CF)
+    (->titlecase       #x24CF)
+    (korean-ksc5601    #x28 #x66)      ; \e$(C(f\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED DIGIT ZERO")
+    (ucs               . #x24EA)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "EN")
+    (mirrored          . nil)
+    (digit-value       . 0)
+    (numeric-value     . 0)
+    (->decomposition   circle #x0030)
+    ))
diff --git a/lisp/utf-2000/u02500-Box-Drawing.el b/lisp/utf-2000/u02500-Box-Drawing.el
new file mode 100644 (file)
index 0000000..35d1285
--- /dev/null
@@ -0,0 +1,1094 @@
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT HORIZONTAL")
+    (ucs               . #x2500)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x24)      ; \e$(A)$\e(B
+    (japanese-jisx0208 #x28 #x21)      ; \e$(B(!\e(B
+    (korean-ksc5601    #x26 #x21)      ; \e$(C&!\e(B
+    (chinese-cns11643-1 #x23 #x39)     ; \e$(G#9\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS HEAVY HORIZONTAL")
+    (ucs               . #x2501)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x25)      ; \e$(A)%\e(B
+    (japanese-jisx0208 #x28 #x2C)      ; \e$(B(,\e(B
+    (korean-ksc5601    #x26 #x2C)      ; \e$(C&,\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT VERTICAL")
+    (ucs               . #x2502)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x26)      ; \e$(A)&\e(B
+    (japanese-jisx0208 #x28 #x22)      ; \e$(B("\e(B
+    (korean-ksc5601    #x26 #x22)      ; \e$(C&"\e(B
+    (chinese-cns11643-1 #x23 #x3A)     ; \e$(G#:\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS HEAVY VERTICAL")
+    (ucs               . #x2503)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x27)      ; \e$(A)'\e(B
+    (japanese-jisx0208 #x28 #x2D)      ; \e$(B(-\e(B
+    (korean-ksc5601    #x26 #x2D)      ; \e$(C&-\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT TRIPLE DASH HORIZONTAL")
+    (ucs               . #x2504)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x28)      ; \e$(A)(\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS HEAVY TRIPLE DASH HORIZONTAL")
+    (ucs               . #x2505)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x29)      ; \e$(A))\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT TRIPLE DASH VERTICAL")
+    (ucs               . #x2506)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x2A)      ; \e$(A)*\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS HEAVY TRIPLE DASH VERTICAL")
+    (ucs               . #x2507)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x2B)      ; \e$(A)+\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT QUADRUPLE DASH HORIZONTAL")
+    (ucs               . #x2508)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x2C)      ; \e$(A),\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS HEAVY QUADRUPLE DASH HORIZONTAL")
+    (ucs               . #x2509)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x2D)      ; \e$(A)-\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT QUADRUPLE DASH VERTICAL")
+    (ucs               . #x250A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x2E)      ; \e$(A).\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS HEAVY QUADRUPLE DASH VERTICAL")
+    (ucs               . #x250B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x2F)      ; \e$(A)/\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT DOWN AND RIGHT")
+    (ucs               . #x250C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x30)      ; \e$(A)0\e(B
+    (japanese-jisx0208 #x28 #x23)      ; \e$(B(#\e(B
+    (korean-ksc5601    #x26 #x23)      ; \e$(C&#\e(B
+    (chinese-cns11643-1 #x23 #x3C)     ; \e$(G#<\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOWN LIGHT AND RIGHT HEAVY")
+    (ucs               . #x250D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x31)      ; \e$(A)1\e(B
+    (korean-ksc5601    #x26 #x48)      ; \e$(C&H\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOWN HEAVY AND RIGHT LIGHT")
+    (ucs               . #x250E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x32)      ; \e$(A)2\e(B
+    (korean-ksc5601    #x26 #x47)      ; \e$(C&G\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS HEAVY DOWN AND RIGHT")
+    (ucs               . #x250F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x33)      ; \e$(A)3\e(B
+    (japanese-jisx0208 #x28 #x2E)      ; \e$(B(.\e(B
+    (korean-ksc5601    #x26 #x2E)      ; \e$(C&.\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT DOWN AND LEFT")
+    (ucs               . #x2510)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x34)      ; \e$(A)4\e(B
+    (japanese-jisx0208 #x28 #x24)      ; \e$(B($\e(B
+    (korean-ksc5601    #x26 #x24)      ; \e$(C&$\e(B
+    (chinese-cns11643-1 #x23 #x3D)     ; \e$(G#=\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOWN LIGHT AND LEFT HEAVY")
+    (ucs               . #x2511)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x35)      ; \e$(A)5\e(B
+    (korean-ksc5601    #x26 #x42)      ; \e$(C&B\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOWN HEAVY AND LEFT LIGHT")
+    (ucs               . #x2512)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x36)      ; \e$(A)6\e(B
+    (korean-ksc5601    #x26 #x41)      ; \e$(C&A\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS HEAVY DOWN AND LEFT")
+    (ucs               . #x2513)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x37)      ; \e$(A)7\e(B
+    (japanese-jisx0208 #x28 #x2F)      ; \e$(B(/\e(B
+    (korean-ksc5601    #x26 #x2F)      ; \e$(C&/\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT UP AND RIGHT")
+    (ucs               . #x2514)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x38)      ; \e$(A)8\e(B
+    (japanese-jisx0208 #x28 #x26)      ; \e$(B(&\e(B
+    (korean-ksc5601    #x26 #x26)      ; \e$(C&&\e(B
+    (chinese-cns11643-1 #x23 #x3E)     ; \e$(G#>\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS UP LIGHT AND RIGHT HEAVY")
+    (ucs               . #x2515)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x39)      ; \e$(A)9\e(B
+    (korean-ksc5601    #x26 #x46)      ; \e$(C&F\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS UP HEAVY AND RIGHT LIGHT")
+    (ucs               . #x2516)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x3A)      ; \e$(A):\e(B
+    (korean-ksc5601    #x26 #x45)      ; \e$(C&E\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS HEAVY UP AND RIGHT")
+    (ucs               . #x2517)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x3B)      ; \e$(A);\e(B
+    (japanese-jisx0208 #x28 #x31)      ; \e$(B(1\e(B
+    (korean-ksc5601    #x26 #x31)      ; \e$(C&1\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT UP AND LEFT")
+    (ucs               . #x2518)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x3C)      ; \e$(A)<\e(B
+    (japanese-jisx0208 #x28 #x25)      ; \e$(B(%\e(B
+    (korean-ksc5601    #x26 #x25)      ; \e$(C&%\e(B
+    (chinese-cns11643-1 #x23 #x3F)     ; \e$(G#?\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS UP LIGHT AND LEFT HEAVY")
+    (ucs               . #x2519)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x3D)      ; \e$(A)=\e(B
+    (korean-ksc5601    #x26 #x44)      ; \e$(C&D\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS UP HEAVY AND LEFT LIGHT")
+    (ucs               . #x251A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x3E)      ; \e$(A)>\e(B
+    (korean-ksc5601    #x26 #x43)      ; \e$(C&C\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS HEAVY UP AND LEFT")
+    (ucs               . #x251B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x3F)      ; \e$(A)?\e(B
+    (japanese-jisx0208 #x28 #x30)      ; \e$(B(0\e(B
+    (korean-ksc5601    #x26 #x30)      ; \e$(C&0\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT VERTICAL AND RIGHT")
+    (ucs               . #x251C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x40)      ; \e$(A)@\e(B
+    (japanese-jisx0208 #x28 #x27)      ; \e$(B('\e(B
+    (korean-ksc5601    #x26 #x27)      ; \e$(C&'\e(B
+    (chinese-cns11643-1 #x23 #x37)     ; \e$(G#7\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS VERTICAL LIGHT AND RIGHT HEAVY")
+    (ucs               . #x251D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x41)      ; \e$(A)A\e(B
+    (japanese-jisx0208 #x28 #x3C)      ; \e$(B(<\e(B
+    (korean-ksc5601    #x26 #x3C)      ; \e$(C&<\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS UP HEAVY AND RIGHT DOWN LIGHT")
+    (ucs               . #x251E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x42)      ; \e$(A)B\e(B
+    (korean-ksc5601    #x26 #x49)      ; \e$(C&I\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOWN HEAVY AND RIGHT UP LIGHT")
+    (ucs               . #x251F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x43)      ; \e$(A)C\e(B
+    (korean-ksc5601    #x26 #x4A)      ; \e$(C&J\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS VERTICAL HEAVY AND RIGHT LIGHT")
+    (ucs               . #x2520)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x44)      ; \e$(A)D\e(B
+    (japanese-jisx0208 #x28 #x37)      ; \e$(B(7\e(B
+    (korean-ksc5601    #x26 #x37)      ; \e$(C&7\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOWN LIGHT AND RIGHT UP HEAVY")
+    (ucs               . #x2521)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x45)      ; \e$(A)E\e(B
+    (korean-ksc5601    #x26 #x4B)      ; \e$(C&K\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS UP LIGHT AND RIGHT DOWN HEAVY")
+    (ucs               . #x2522)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x46)      ; \e$(A)F\e(B
+    (korean-ksc5601    #x26 #x4C)      ; \e$(C&L\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS HEAVY VERTICAL AND RIGHT")
+    (ucs               . #x2523)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x47)      ; \e$(A)G\e(B
+    (japanese-jisx0208 #x28 #x32)      ; \e$(B(2\e(B
+    (korean-ksc5601    #x26 #x32)      ; \e$(C&2\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT VERTICAL AND LEFT")
+    (ucs               . #x2524)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x48)      ; \e$(A)H\e(B
+    (japanese-jisx0208 #x28 #x29)      ; \e$(B()\e(B
+    (korean-ksc5601    #x26 #x29)      ; \e$(C&)\e(B
+    (chinese-cns11643-1 #x23 #x36)     ; \e$(G#6\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS VERTICAL LIGHT AND LEFT HEAVY")
+    (ucs               . #x2525)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x49)      ; \e$(A)I\e(B
+    (japanese-jisx0208 #x28 #x3E)      ; \e$(B(>\e(B
+    (korean-ksc5601    #x26 #x3E)      ; \e$(C&>\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS UP HEAVY AND LEFT DOWN LIGHT")
+    (ucs               . #x2526)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x4A)      ; \e$(A)J\e(B
+    (korean-ksc5601    #x26 #x4D)      ; \e$(C&M\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOWN HEAVY AND LEFT UP LIGHT")
+    (ucs               . #x2527)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x4B)      ; \e$(A)K\e(B
+    (korean-ksc5601    #x26 #x4E)      ; \e$(C&N\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS VERTICAL HEAVY AND LEFT LIGHT")
+    (ucs               . #x2528)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x4C)      ; \e$(A)L\e(B
+    (japanese-jisx0208 #x28 #x39)      ; \e$(B(9\e(B
+    (korean-ksc5601    #x26 #x39)      ; \e$(C&9\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOWN LIGHT AND LEFT UP HEAVY")
+    (ucs               . #x2529)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x4D)      ; \e$(A)M\e(B
+    (korean-ksc5601    #x26 #x4F)      ; \e$(C&O\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS UP LIGHT AND LEFT DOWN HEAVY")
+    (ucs               . #x252A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x4E)      ; \e$(A)N\e(B
+    (korean-ksc5601    #x26 #x50)      ; \e$(C&P\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS HEAVY VERTICAL AND LEFT")
+    (ucs               . #x252B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x4F)      ; \e$(A)O\e(B
+    (japanese-jisx0208 #x28 #x34)      ; \e$(B(4\e(B
+    (korean-ksc5601    #x26 #x34)      ; \e$(C&4\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT DOWN AND HORIZONTAL")
+    (ucs               . #x252C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x50)      ; \e$(A)P\e(B
+    (japanese-jisx0208 #x28 #x28)      ; \e$(B((\e(B
+    (korean-ksc5601    #x26 #x28)      ; \e$(C&(\e(B
+    (chinese-cns11643-1 #x23 #x35)     ; \e$(G#5\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LEFT HEAVY AND RIGHT DOWN LIGHT")
+    (ucs               . #x252D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x51)      ; \e$(A)Q\e(B
+    (korean-ksc5601    #x26 #x51)      ; \e$(C&Q\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS RIGHT HEAVY AND LEFT DOWN LIGHT")
+    (ucs               . #x252E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x52)      ; \e$(A)R\e(B
+    (korean-ksc5601    #x26 #x52)      ; \e$(C&R\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOWN LIGHT AND HORIZONTAL HEAVY")
+    (ucs               . #x252F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x53)      ; \e$(A)S\e(B
+    (japanese-jisx0208 #x28 #x38)      ; \e$(B(8\e(B
+    (korean-ksc5601    #x26 #x38)      ; \e$(C&8\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOWN HEAVY AND HORIZONTAL LIGHT")
+    (ucs               . #x2530)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x54)      ; \e$(A)T\e(B
+    (japanese-jisx0208 #x28 #x3D)      ; \e$(B(=\e(B
+    (korean-ksc5601    #x26 #x3D)      ; \e$(C&=\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS RIGHT LIGHT AND LEFT DOWN HEAVY")
+    (ucs               . #x2531)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x55)      ; \e$(A)U\e(B
+    (korean-ksc5601    #x26 #x53)      ; \e$(C&S\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LEFT LIGHT AND RIGHT DOWN HEAVY")
+    (ucs               . #x2532)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x56)      ; \e$(A)V\e(B
+    (korean-ksc5601    #x26 #x54)      ; \e$(C&T\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS HEAVY DOWN AND HORIZONTAL")
+    (ucs               . #x2533)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x57)      ; \e$(A)W\e(B
+    (japanese-jisx0208 #x28 #x33)      ; \e$(B(3\e(B
+    (korean-ksc5601    #x26 #x33)      ; \e$(C&3\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT UP AND HORIZONTAL")
+    (ucs               . #x2534)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x58)      ; \e$(A)X\e(B
+    (japanese-jisx0208 #x28 #x2A)      ; \e$(B(*\e(B
+    (korean-ksc5601    #x26 #x2A)      ; \e$(C&*\e(B
+    (chinese-cns11643-1 #x23 #x34)     ; \e$(G#4\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LEFT HEAVY AND RIGHT UP LIGHT")
+    (ucs               . #x2535)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x59)      ; \e$(A)Y\e(B
+    (korean-ksc5601    #x26 #x55)      ; \e$(C&U\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS RIGHT HEAVY AND LEFT UP LIGHT")
+    (ucs               . #x2536)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x5A)      ; \e$(A)Z\e(B
+    (korean-ksc5601    #x26 #x56)      ; \e$(C&V\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS UP LIGHT AND HORIZONTAL HEAVY")
+    (ucs               . #x2537)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x5B)      ; \e$(A)[\e(B
+    (japanese-jisx0208 #x28 #x3A)      ; \e$(B(:\e(B
+    (korean-ksc5601    #x26 #x3A)      ; \e$(C&:\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS UP HEAVY AND HORIZONTAL LIGHT")
+    (ucs               . #x2538)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x5C)      ; \e$(A)\\e(B
+    (japanese-jisx0208 #x28 #x3F)      ; \e$(B(?\e(B
+    (korean-ksc5601    #x26 #x3F)      ; \e$(C&?\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS RIGHT LIGHT AND LEFT UP HEAVY")
+    (ucs               . #x2539)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x5D)      ; \e$(A)]\e(B
+    (korean-ksc5601    #x26 #x57)      ; \e$(C&W\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LEFT LIGHT AND RIGHT UP HEAVY")
+    (ucs               . #x253A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x5E)      ; \e$(A)^\e(B
+    (korean-ksc5601    #x26 #x58)      ; \e$(C&X\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS HEAVY UP AND HORIZONTAL")
+    (ucs               . #x253B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x5F)      ; \e$(A)_\e(B
+    (japanese-jisx0208 #x28 #x35)      ; \e$(B(5\e(B
+    (korean-ksc5601    #x26 #x35)      ; \e$(C&5\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL")
+    (ucs               . #x253C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x60)      ; \e$(A)`\e(B
+    (japanese-jisx0208 #x28 #x2B)      ; \e$(B(+\e(B
+    (korean-ksc5601    #x26 #x2B)      ; \e$(C&+\e(B
+    (chinese-cns11643-1 #x23 #x33)     ; \e$(G#3\e(B
+    ))
+(define-char
+  '((name . "BOX DRAWINGS LEFT HEAVY AND RIGHT VERTICAL LIGHT")
+    (ucs               . #x253D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x61)      ; \e$(A)a\e(B
+    (korean-ksc5601    #x26 #x59)      ; \e$(C&Y\e(B
+    ))
+(define-char
+  '((name . "BOX DRAWINGS RIGHT HEAVY AND LEFT VERTICAL LIGHT")
+    (ucs               . #x253E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x62)      ; \e$(A)b\e(B
+    (korean-ksc5601    #x26 #x5A)      ; \e$(C&Z\e(B
+    ))
+(define-char
+  '((name . "BOX DRAWINGS VERTICAL LIGHT AND HORIZONTAL HEAVY")
+    (ucs               . #x253F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x63)      ; \e$(A)c\e(B
+    (japanese-jisx0208 #x28 #x3B)      ; \e$(B(;\e(B
+    (korean-ksc5601    #x26 #x3B)      ; \e$(C&;\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS UP HEAVY AND DOWN HORIZONTAL LIGHT")
+    (ucs               . #x2540)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x64)      ; \e$(A)d\e(B
+    (korean-ksc5601    #x26 #x5B)      ; \e$(C&[\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOWN HEAVY AND UP HORIZONTAL LIGHT")
+    (ucs               . #x2541)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x65)      ; \e$(A)e\e(B
+    (korean-ksc5601    #x26 #x5C)      ; \e$(C&\\e(B
+    ))
+(define-char
+  '((name . "BOX DRAWINGS VERTICAL HEAVY AND HORIZONTAL LIGHT")
+    (ucs               . #x2542)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x66)      ; \e$(A)f\e(B
+    (japanese-jisx0208 #x28 #x40)      ; \e$(B(@\e(B
+    (korean-ksc5601    #x26 #x40)      ; \e$(C&@\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LEFT UP HEAVY AND RIGHT DOWN LIGHT")
+    (ucs               . #x2543)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x67)      ; \e$(A)g\e(B
+    (korean-ksc5601    #x26 #x5D)      ; \e$(C&]\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS RIGHT UP HEAVY AND LEFT DOWN LIGHT")
+    (ucs               . #x2544)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x68)      ; \e$(A)h\e(B
+    (korean-ksc5601    #x26 #x5E)      ; \e$(C&^\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LEFT DOWN HEAVY AND RIGHT UP LIGHT")
+    (ucs               . #x2545)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x69)      ; \e$(A)i\e(B
+    (korean-ksc5601    #x26 #x5F)      ; \e$(C&_\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS RIGHT DOWN HEAVY AND LEFT UP LIGHT")
+    (ucs               . #x2546)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x6A)      ; \e$(A)j\e(B
+    (korean-ksc5601    #x26 #x60)      ; \e$(C&`\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOWN LIGHT AND UP HORIZONTAL HEAVY")
+    (ucs               . #x2547)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x6B)      ; \e$(A)k\e(B
+    (korean-ksc5601    #x26 #x61)      ; \e$(C&a\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS UP LIGHT AND DOWN HORIZONTAL HEAVY")
+    (ucs               . #x2548)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x6C)      ; \e$(A)l\e(B
+    (korean-ksc5601    #x26 #x62)      ; \e$(C&b\e(B
+    ))
+(define-char
+  '((name . "BOX DRAWINGS RIGHT LIGHT AND LEFT VERTICAL HEAVY")
+    (ucs               . #x2549)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x6D)      ; \e$(A)m\e(B
+    (korean-ksc5601    #x26 #x63)      ; \e$(C&c\e(B
+    ))
+(define-char
+  '((name . "BOX DRAWINGS LEFT LIGHT AND RIGHT VERTICAL HEAVY")
+    (ucs               . #x254A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x6E)      ; \e$(A)n\e(B
+    (korean-ksc5601    #x26 #x64)      ; \e$(C&d\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS HEAVY VERTICAL AND HORIZONTAL")
+    (ucs               . #x254B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-gb2312    #x29 #x6F)      ; \e$(A)o\e(B
+    (japanese-jisx0208 #x28 #x36)      ; \e$(B(6\e(B
+    (korean-ksc5601    #x26 #x36)      ; \e$(C&6\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT DOUBLE DASH HORIZONTAL")
+    (ucs               . #x254C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS HEAVY DOUBLE DASH HORIZONTAL")
+    (ucs               . #x254D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT DOUBLE DASH VERTICAL")
+    (ucs               . #x254E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS HEAVY DOUBLE DASH VERTICAL")
+    (ucs               . #x254F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOUBLE HORIZONTAL")
+    (ucs               . #x2550)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x44)     ; \e$(G#D\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOUBLE VERTICAL")
+    (ucs               . #x2551)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE")
+    (ucs               . #x2552)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE")
+    (ucs               . #x2553)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOUBLE DOWN AND RIGHT")
+    (ucs               . #x2554)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE")
+    (ucs               . #x2555)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE")
+    (ucs               . #x2556)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOUBLE DOWN AND LEFT")
+    (ucs               . #x2557)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE")
+    (ucs               . #x2558)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE")
+    (ucs               . #x2559)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOUBLE UP AND RIGHT")
+    (ucs               . #x255A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS UP SINGLE AND LEFT DOUBLE")
+    (ucs               . #x255B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS UP DOUBLE AND LEFT SINGLE")
+    (ucs               . #x255C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOUBLE UP AND LEFT")
+    (ucs               . #x255D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE")
+    (ucs               . #x255E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x45)     ; \e$(G#E\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE")
+    (ucs               . #x255F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOUBLE VERTICAL AND RIGHT")
+    (ucs               . #x2560)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE")
+    (ucs               . #x2561)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x47)     ; \e$(G#G\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE")
+    (ucs               . #x2562)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOUBLE VERTICAL AND LEFT")
+    (ucs               . #x2563)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE")
+    (ucs               . #x2564)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE")
+    (ucs               . #x2565)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL")
+    (ucs               . #x2566)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE")
+    (ucs               . #x2567)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE")
+    (ucs               . #x2568)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOUBLE UP AND HORIZONTAL")
+    (ucs               . #x2569)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE")
+    (ucs               . #x256A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x46)     ; \e$(G#F\e(B
+    ))
+(define-char
+  '((name . "BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE")
+    (ucs               . #x256B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL")
+    (ucs               . #x256C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT ARC DOWN AND RIGHT")
+    (ucs               . #x256D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x40)     ; \e$(G#@\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT ARC DOWN AND LEFT")
+    (ucs               . #x256E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x41)     ; \e$(G#A\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT ARC UP AND LEFT")
+    (ucs               . #x256F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x43)     ; \e$(G#C\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT ARC UP AND RIGHT")
+    (ucs               . #x2570)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x42)     ; \e$(G#B\e(B
+    ))
+(define-char
+  '((name . "BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO LOWER LEFT")
+    (ucs               . #x2571)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x4C)     ; \e$(G#L\e(B
+    ))
+(define-char
+  '((name . "BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO LOWER RIGHT")
+    (ucs               . #x2572)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x4D)     ; \e$(G#M\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT DIAGONAL CROSS")
+    (ucs               . #x2573)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x4E)     ; \e$(G#N\e(B
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT LEFT")
+    (ucs               . #x2574)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT UP")
+    (ucs               . #x2575)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT RIGHT")
+    (ucs               . #x2576)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT DOWN")
+    (ucs               . #x2577)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS HEAVY LEFT")
+    (ucs               . #x2578)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS HEAVY UP")
+    (ucs               . #x2579)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS HEAVY RIGHT")
+    (ucs               . #x257A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS HEAVY DOWN")
+    (ucs               . #x257B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT LEFT AND HEAVY RIGHT")
+    (ucs               . #x257C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS LIGHT UP AND HEAVY DOWN")
+    (ucs               . #x257D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS HEAVY LEFT AND LIGHT RIGHT")
+    (ucs               . #x257E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOX DRAWINGS HEAVY UP AND LIGHT DOWN")
+    (ucs               . #x257F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u02580-Block-Elements.el b/lisp/utf-2000/u02580-Block-Elements.el
new file mode 100644 (file)
index 0000000..3b35c66
--- /dev/null
@@ -0,0 +1,172 @@
+(define-char
+  '((name              . "UPPER HALF BLOCK")
+    (ucs               . #x2580)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LOWER ONE EIGHTH BLOCK")
+    (ucs               . #x2581)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x24)     ; \e$(G#$\e(B
+    ))
+(define-char
+  '((name              . "LOWER ONE QUARTER BLOCK")
+    (ucs               . #x2582)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x25)     ; \e$(G#%\e(B
+    ))
+(define-char
+  '((name              . "LOWER THREE EIGHTHS BLOCK")
+    (ucs               . #x2583)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x26)     ; \e$(G#&\e(B
+    ))
+(define-char
+  '((name              . "LOWER HALF BLOCK")
+    (ucs               . #x2584)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x27)     ; \e$(G#'\e(B
+    ))
+(define-char
+  '((name              . "LOWER FIVE EIGHTHS BLOCK")
+    (ucs               . #x2585)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x28)     ; \e$(G#(\e(B
+    ))
+(define-char
+  '((name              . "LOWER THREE QUARTERS BLOCK")
+    (ucs               . #x2586)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x29)     ; \e$(G#)\e(B
+    ))
+(define-char
+  '((name              . "LOWER SEVEN EIGHTHS BLOCK")
+    (ucs               . #x2587)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x2A)     ; \e$(G#*\e(B
+    ))
+(define-char
+  '((name              . "FULL BLOCK")
+    (ucs               . #x2588)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x2B)     ; \e$(G#+\e(B
+    ))
+(define-char
+  '((name              . "LEFT SEVEN EIGHTHS BLOCK")
+    (ucs               . #x2589)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x32)     ; \e$(G#2\e(B
+    ))
+(define-char
+  '((name              . "LEFT THREE QUARTERS BLOCK")
+    (ucs               . #x258A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x31)     ; \e$(G#1\e(B
+    ))
+(define-char
+  '((name              . "LEFT FIVE EIGHTHS BLOCK")
+    (ucs               . #x258B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x30)     ; \e$(G#0\e(B
+    ))
+(define-char
+  '((name              . "LEFT HALF BLOCK")
+    (ucs               . #x258C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x2F)     ; \e$(G#/\e(B
+    ))
+(define-char
+  '((name              . "LEFT THREE EIGHTHS BLOCK")
+    (ucs               . #x258D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x2E)     ; \e$(G#.\e(B
+    ))
+(define-char
+  '((name              . "LEFT ONE QUARTER BLOCK")
+    (ucs               . #x258E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x2D)     ; \e$(G#-\e(B
+    ))
+(define-char
+  '((name              . "LEFT ONE EIGHTH BLOCK")
+    (ucs               . #x258F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x2C)     ; \e$(G#,\e(B
+    ))
+(define-char
+  '((name              . "RIGHT HALF BLOCK")
+    (ucs               . #x2590)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LIGHT SHADE")
+    (ucs               . #x2591)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MEDIUM SHADE")
+    (ucs               . #x2592)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x46)      ; \e$(C"F\e(B
+    ))
+(define-char
+  '((name              . "DARK SHADE")
+    (ucs               . #x2593)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPPER ONE EIGHTH BLOCK")
+    (ucs               . #x2594)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x38)     ; \e$(G#8\e(B
+    ))
+(define-char
+  '((name              . "RIGHT ONE EIGHTH BLOCK")
+    (ucs               . #x2595)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x3B)     ; \e$(G#;\e(B
+    ))
diff --git a/lisp/utf-2000/u025A0-Geometric-Shapes.el b/lisp/utf-2000/u025A0-Geometric-Shapes.el
new file mode 100644 (file)
index 0000000..80f52c3
--- /dev/null
@@ -0,0 +1,688 @@
+(define-char
+  '((name              . "BLACK SQUARE")
+    (ucs               . #x25A0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x22 #x23)      ; \e$(@"#\e(B
+    (chinese-gb2312            #x21 #x76)      ; \e$(A!v\e(B
+    (japanese-jisx0208         #x22 #x23)      ; \e$(B"#\e(B
+    (korean-ksc5601            #x21 #x61)      ; \e$(C!a\e(B
+    (chinese-cns11643-1                #x21 #x7C)      ; \e$(G!|\e(B
+    ))
+(define-char
+  '((name              . "WHITE SQUARE")
+    (ucs               . #x25A1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x22 #x22)      ; \e$(@""\e(B
+    (chinese-gb2312            #x21 #x75)      ; \e$(A!u\e(B
+    (japanese-jisx0208         #x22 #x22)      ; \e$(B""\e(B
+    (korean-ksc5601            #x21 #x60)      ; \e$(C!`\e(B
+    (chinese-cns11643-1                #x21 #x7B)      ; \e$(G!{\e(B
+    ))
+(define-char
+  '((name              . "WHITE SQUARE WITH ROUNDED CORNERS")
+    (ucs               . #x25A2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE SQUARE CONTAINING BLACK SMALL SQUARE")
+    (ucs               . #x25A3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x43)      ; \e$(C"C\e(B
+    ))
+(define-char
+  '((name              . "SQUARE WITH HORIZONTAL FILL")
+    (ucs               . #x25A4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x47)      ; \e$(C"G\e(B
+    ))
+(define-char
+  '((name              . "SQUARE WITH VERTICAL FILL")
+    (ucs               . #x25A5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x48)      ; \e$(C"H\e(B
+    ))
+(define-char
+  '((name              . "SQUARE WITH ORTHOGONAL CROSSHATCH FILL")
+    (ucs               . #x25A6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x4B)      ; \e$(C"K\e(B
+    ))
+(define-char
+  '((name              . "SQUARE WITH UPPER LEFT TO LOWER RIGHT FILL")
+    (ucs               . #x25A7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x4A)      ; \e$(C"J\e(B
+    ))
+(define-char
+  '((name              . "SQUARE WITH UPPER RIGHT TO LOWER LEFT FILL")
+    (ucs               . #x25A8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x49)      ; \e$(C"I\e(B
+    ))
+(define-char
+  '((name              . "SQUARE WITH DIAGONAL CROSSHATCH FILL")
+    (ucs               . #x25A9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x4C)      ; \e$(C"L\e(B
+    ))
+(define-char
+  '((name              . "BLACK SMALL SQUARE")
+    (ucs               . #x25AA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE SMALL SQUARE")
+    (ucs               . #x25AB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK RECTANGLE")
+    (ucs               . #x25AC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE RECTANGLE")
+    (ucs               . #x25AD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK VERTICAL RECTANGLE")
+    (ucs               . #x25AE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE VERTICAL RECTANGLE")
+    (ucs               . #x25AF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK PARALLELOGRAM")
+    (ucs               . #x25B0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE PARALLELOGRAM")
+    (ucs               . #x25B1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK UP-POINTING TRIANGLE")
+    (ucs               . #x25B2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x22 #x25)      ; \e$(@"%\e(B
+    (chinese-gb2312            #x21 #x78)      ; \e$(A!x\e(B
+    (japanese-jisx0208         #x22 #x25)      ; \e$(B"%\e(B
+    (korean-ksc5601            #x21 #x63)      ; \e$(C!c\e(B
+    (chinese-cns11643-1                #x21 #x75)      ; \e$(G!u\e(B
+    ))
+(define-char
+  '((name              . "WHITE UP-POINTING TRIANGLE")
+    (ucs               . #x25B3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x22 #x24)      ; \e$(@"$\e(B
+    (chinese-gb2312            #x21 #x77)      ; \e$(A!w\e(B
+    (japanese-jisx0208         #x22 #x24)      ; \e$(B"$\e(B
+    (korean-ksc5601            #x21 #x62)      ; \e$(C!b\e(B
+    (chinese-cns11643-1                #x21 #x74)      ; \e$(G!t\e(B
+    ))
+(define-char
+  '((name              . "BLACK UP-POINTING SMALL TRIANGLE")
+    (ucs               . #x25B4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE UP-POINTING SMALL TRIANGLE")
+    (ucs               . #x25B5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK RIGHT-POINTING TRIANGLE")
+    (ucs               . #x25B6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x3A)      ; \e$(C":\e(B
+    ))
+(define-char
+  '((name              . "WHITE RIGHT-POINTING TRIANGLE")
+    (ucs               . #x25B7)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x39)      ; \e$(C"9\e(B
+    ))
+(define-char
+  '((name              . "BLACK RIGHT-POINTING SMALL TRIANGLE")
+    (ucs               . #x25B8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE RIGHT-POINTING SMALL TRIANGLE")
+    (ucs               . #x25B9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK RIGHT-POINTING POINTER")
+    (ucs               . #x25BA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE RIGHT-POINTING POINTER")
+    (ucs               . #x25BB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK DOWN-POINTING TRIANGLE")
+    (ucs               . #x25BC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x22 #x27)      ; \e$(@"'\e(B
+    (japanese-jisx0208         #x22 #x27)      ; \e$(B"'\e(B
+    (korean-ksc5601            #x21 #x65)      ; \e$(C!e\e(B
+    (chinese-cns11643-1                #x21 #x7E)      ; \e$(G!~\e(B
+    ))
+(define-char
+  '((name              . "WHITE DOWN-POINTING TRIANGLE")
+    (ucs               . #x25BD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x22 #x26)      ; \e$(@"&\e(B
+    (japanese-jisx0208         #x22 #x26)      ; \e$(B"&\e(B
+    (korean-ksc5601            #x21 #x64)      ; \e$(C!d\e(B
+    (chinese-cns11643-1                #x21 #x7D)      ; \e$(G!}\e(B
+    ))
+(define-char
+  '((name              . "BLACK DOWN-POINTING SMALL TRIANGLE")
+    (ucs               . #x25BE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE DOWN-POINTING SMALL TRIANGLE")
+    (ucs               . #x25BF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK LEFT-POINTING TRIANGLE")
+    (ucs               . #x25C0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x38)      ; \e$(C"8\e(B
+    ))
+(define-char
+  '((name              . "WHITE LEFT-POINTING TRIANGLE")
+    (ucs               . #x25C1)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x37)      ; \e$(C"7\e(B
+    ))
+(define-char
+  '((name              . "BLACK LEFT-POINTING SMALL TRIANGLE")
+    (ucs               . #x25C2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE LEFT-POINTING SMALL TRIANGLE")
+    (ucs               . #x25C3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK LEFT-POINTING POINTER")
+    (ucs               . #x25C4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE LEFT-POINTING POINTER")
+    (ucs               . #x25C5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK DIAMOND")
+    (ucs               . #x25C6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x22 #x21)      ; \e$(@"!\e(B
+    (chinese-gb2312            #x21 #x74)      ; \e$(A!t\e(B
+    (japanese-jisx0208         #x22 #x21)      ; \e$(B"!\e(B
+    (korean-ksc5601            #x21 #x5F)      ; \e$(C!_\e(B
+    (chinese-cns11643-1                #x21 #x7A)      ; \e$(G!z\e(B
+    ))
+(define-char
+  '((name              . "WHITE DIAMOND")
+    (ucs               . #x25C7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x7E)      ; \e$(@!~\e(B
+    (chinese-gb2312            #x21 #x73)      ; \e$(A!s\e(B
+    (japanese-jisx0208         #x21 #x7E)      ; \e$(B!~\e(B
+    (korean-ksc5601            #x21 #x5E)      ; \e$(C!^\e(B
+    (chinese-cns11643-1                #x21 #x79)      ; \e$(G!y\e(B
+    ))
+(define-char
+  '((name              . "WHITE DIAMOND CONTAINING BLACK SMALL DIAMOND")
+    (ucs               . #x25C8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x42)      ; \e$(C"B\e(B
+    ))
+(define-char
+  '((name              . "FISHEYE")
+    (ucs               . #x25C9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LOZENGE")
+    (ucs               . #x25CA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE CIRCLE")
+    (ucs               . #x25CB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x7B)      ; \e$(@!{\e(B
+    (chinese-gb2312            #x21 #x70)      ; \e$(A!p\e(B
+    (japanese-jisx0208         #x21 #x7B)      ; \e$(B!{\e(B
+    (korean-ksc5601            #x21 #x5B)      ; \e$(C![\e(B
+    (chinese-cns11643-1                #x21 #x72)      ; \e$(G!r\e(B
+    ))
+(define-char
+  '((name              . "DOTTED CIRCLE")
+    (ucs               . #x25CC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CIRCLE WITH VERTICAL FILL")
+    (ucs               . #x25CD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BULLSEYE")
+    (ucs               . #x25CE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x7D)      ; \e$(@!}\e(B
+    (chinese-gb2312            #x21 #x72)      ; \e$(A!r\e(B
+    (japanese-jisx0208         #x21 #x7D)      ; \e$(B!}\e(B
+    (korean-ksc5601            #x21 #x5D)      ; \e$(C!]\e(B
+    (chinese-cns11643-1                #x21 #x76)      ; \e$(G!v\e(B
+    ))
+(define-char
+  '((name              . "BLACK CIRCLE")
+    (ucs               . #x25CF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x7C)      ; \e$(@!|\e(B
+    (chinese-gb2312            #x21 #x71)      ; \e$(A!q\e(B
+    (japanese-jisx0208         #x21 #x7C)      ; \e$(B!|\e(B
+    (korean-ksc5601            #x21 #x5C)      ; \e$(C!\\e(B
+    (chinese-cns11643-1                #x21 #x73)      ; \e$(G!s\e(B
+    ))
+(define-char
+  '((name              . "CIRCLE WITH LEFT HALF BLACK")
+    (ucs               . #x25D0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x44)      ; \e$(C"D\e(B
+    ))
+(define-char
+  '((name              . "CIRCLE WITH RIGHT HALF BLACK")
+    (ucs               . #x25D1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x45)      ; \e$(C"E\e(B
+    ))
+(define-char
+  '((name              . "CIRCLE WITH LOWER HALF BLACK")
+    (ucs               . #x25D2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CIRCLE WITH UPPER HALF BLACK")
+    (ucs               . #x25D3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CIRCLE WITH UPPER RIGHT QUADRANT BLACK")
+    (ucs               . #x25D4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CIRCLE WITH ALL BUT UPPER LEFT QUADRANT BLACK")
+    (ucs               . #x25D5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFT HALF BLACK CIRCLE")
+    (ucs               . #x25D6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHT HALF BLACK CIRCLE")
+    (ucs               . #x25D7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "INVERSE BULLET")
+    (ucs               . #x25D8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "INVERSE WHITE CIRCLE")
+    (ucs               . #x25D9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPPER HALF INVERSE WHITE CIRCLE")
+    (ucs               . #x25DA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LOWER HALF INVERSE WHITE CIRCLE")
+    (ucs               . #x25DB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPPER LEFT QUADRANT CIRCULAR ARC")
+    (ucs               . #x25DC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPPER RIGHT QUADRANT CIRCULAR ARC")
+    (ucs               . #x25DD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LOWER RIGHT QUADRANT CIRCULAR ARC")
+    (ucs               . #x25DE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LOWER LEFT QUADRANT CIRCULAR ARC")
+    (ucs               . #x25DF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPPER HALF CIRCLE")
+    (ucs               . #x25E0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LOWER HALF CIRCLE")
+    (ucs               . #x25E1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK LOWER RIGHT TRIANGLE")
+    (ucs               . #x25E2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x48)     ; \e$(G#H\e(B
+    ))
+(define-char
+  '((name              . "BLACK LOWER LEFT TRIANGLE")
+    (ucs               . #x25E3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x49)     ; \e$(G#I\e(B
+    ))
+(define-char
+  '((name              . "BLACK UPPER LEFT TRIANGLE")
+    (ucs               . #x25E4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x4B)     ; \e$(G#K\e(B
+    ))
+(define-char
+  '((name              . "BLACK UPPER RIGHT TRIANGLE")
+    (ucs               . #x25E5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x23 #x4A)     ; \e$(G#J\e(B
+    ))
+(define-char
+  '((name              . "WHITE BULLET")
+    (ucs               . #x25E6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SQUARE WITH LEFT HALF BLACK")
+    (ucs               . #x25E7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SQUARE WITH RIGHT HALF BLACK")
+    (ucs               . #x25E8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SQUARE WITH UPPER LEFT DIAGONAL HALF BLACK")
+    (ucs               . #x25E9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SQUARE WITH LOWER RIGHT DIAGONAL HALF BLACK")
+    (ucs               . #x25EA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE SQUARE WITH VERTICAL BISECTING LINE")
+    (ucs               . #x25EB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE UP-POINTING TRIANGLE WITH DOT")
+    (ucs               . #x25EC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UP-POINTING TRIANGLE WITH LEFT HALF BLACK")
+    (ucs               . #x25ED)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UP-POINTING TRIANGLE WITH RIGHT HALF BLACK")
+    (ucs               . #x25EE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LARGE CIRCLE")
+    (ucs               . #x25EF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208 #x22 #x7E)      ; \e$(B"~\e(B
+    ))
+(define-char
+  '((name              . "WHITE SQUARE WITH UPPER LEFT QUADRANT")
+    (ucs               . #x25F0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE SQUARE WITH LOWER LEFT QUADRANT")
+    (ucs               . #x25F1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE SQUARE WITH LOWER RIGHT QUADRANT")
+    (ucs               . #x25F2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE SQUARE WITH UPPER RIGHT QUADRANT")
+    (ucs               . #x25F3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE CIRCLE WITH UPPER LEFT QUADRANT")
+    (ucs               . #x25F4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE CIRCLE WITH LOWER LEFT QUADRANT")
+    (ucs               . #x25F5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE CIRCLE WITH LOWER RIGHT QUADRANT")
+    (ucs               . #x25F6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE CIRCLE WITH UPPER RIGHT QUADRANT")
+    (ucs               . #x25F7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u02600-Miscellaneous-Symbols.el b/lisp/utf-2000/u02600-Miscellaneous-Symbols.el
new file mode 100644 (file)
index 0000000..ff6a17a
--- /dev/null
@@ -0,0 +1,801 @@
+(define-char
+  '((name              . "BLACK SUN WITH RAYS")
+    (ucs               . #x2600)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CLOUD")
+    (ucs               . #x2601)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UMBRELLA")
+    (ucs               . #x2602)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SNOWMAN")
+    (ucs               . #x2603)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "COMET")
+    (ucs               . #x2604)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK STAR")
+    (ucs               . #x2605)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x7A)      ; \e$(@!z\e(B
+    (chinese-gb2312            #x21 #x6F)      ; \e$(A!o\e(B
+    (japanese-jisx0208         #x21 #x7A)      ; \e$(B!z\e(B
+    (korean-ksc5601            #x21 #x5A)      ; \e$(C!Z\e(B
+    (chinese-cns11643-1                #x21 #x78)      ; \e$(G!x\e(B
+    ))
+(define-char
+  '((name              . "WHITE STAR")
+    (ucs               . #x2606)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x79)      ; \e$(@!y\e(B
+    (chinese-gb2312            #x21 #x6E)      ; \e$(A!n\e(B
+    (japanese-jisx0208         #x21 #x79)      ; \e$(B!y\e(B
+    (korean-ksc5601            #x21 #x59)      ; \e$(C!Y\e(B
+    (chinese-cns11643-1                #x21 #x77)      ; \e$(G!w\e(B
+    ))
+(define-char
+  '((name              . "LIGHTNING")
+    (ucs               . #x2607)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THUNDERSTORM")
+    (ucs               . #x2608)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SUN")
+    (ucs               . #x2609)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ASCENDING NODE")
+    (ucs               . #x260A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DESCENDING NODE")
+    (ucs               . #x260B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CONJUNCTION")
+    (ucs               . #x260C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OPPOSITION")
+    (ucs               . #x260D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK TELEPHONE")
+    (ucs               . #x260E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x4F)      ; \e$(C"O\e(B
+    ))
+(define-char
+  '((name              . "WHITE TELEPHONE")
+    (ucs               . #x260F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x4E)      ; \e$(C"N\e(B
+    ))
+(define-char
+  '((name              . "BALLOT BOX")
+    (ucs               . #x2610)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BALLOT BOX WITH CHECK")
+    (ucs               . #x2611)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BALLOT BOX WITH X")
+    (ucs               . #x2612)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SALTIRE")
+    (ucs               . #x2613)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "REVERSED ROTATED FLORAL HEART BULLET")
+    (ucs               . #x2619)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK LEFT POINTING INDEX")
+    (ucs               . #x261A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK RIGHT POINTING INDEX")
+    (ucs               . #x261B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE LEFT POINTING INDEX")
+    (ucs               . #x261C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x50)      ; \e$(C"P\e(B
+    ))
+(define-char
+  '((name              . "WHITE UP POINTING INDEX")
+    (ucs               . #x261D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE RIGHT POINTING INDEX")
+    (ucs               . #x261E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x51)      ; \e$(C"Q\e(B
+    ))
+(define-char
+  '((name              . "WHITE DOWN POINTING INDEX")
+    (ucs               . #x261F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SKULL AND CROSSBONES")
+    (ucs               . #x2620)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CAUTION SIGN")
+    (ucs               . #x2621)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RADIOACTIVE SIGN")
+    (ucs               . #x2622)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BIOHAZARD SIGN")
+    (ucs               . #x2623)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CADUCEUS")
+    (ucs               . #x2624)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ANKH")
+    (ucs               . #x2625)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ORTHODOX CROSS")
+    (ucs               . #x2626)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHI RHO")
+    (ucs               . #x2627)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CROSS OF LORRAINE")
+    (ucs               . #x2628)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CROSS OF JERUSALEM")
+    (ucs               . #x2629)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "STAR AND CRESCENT")
+    (ucs               . #x262A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "FARSI SYMBOL")
+    (ucs               . #x262B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ADI SHAKTI")
+    (ucs               . #x262C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HAMMER AND SICKLE")
+    (ucs               . #x262D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "PEACE SYMBOL")
+    (ucs               . #x262E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "YIN YANG")
+    (ucs               . #x262F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TRIGRAM FOR HEAVEN")
+    (ucs               . #x2630)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TRIGRAM FOR LAKE")
+    (ucs               . #x2631)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TRIGRAM FOR FIRE")
+    (ucs               . #x2632)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TRIGRAM FOR THUNDER")
+    (ucs               . #x2633)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TRIGRAM FOR WIND")
+    (ucs               . #x2634)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TRIGRAM FOR WATER")
+    (ucs               . #x2635)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TRIGRAM FOR MOUNTAIN")
+    (ucs               . #x2636)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TRIGRAM FOR EARTH")
+    (ucs               . #x2637)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHEEL OF DHARMA")
+    (ucs               . #x2638)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE FROWNING FACE")
+    (ucs               . #x2639)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE SMILING FACE")
+    (ucs               . #x263A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK SMILING FACE")
+    (ucs               . #x263B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE SUN WITH RAYS")
+    (ucs               . #x263C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "FIRST QUARTER MOON")
+    (ucs               . #x263D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LAST QUARTER MOON")
+    (ucs               . #x263E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MERCURY")
+    (ucs               . #x263F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "FEMALE SIGN")
+    (ucs               . #x2640)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x6A)      ; \e$(@!j\e(B
+    (chinese-gb2312            #x21 #x62)      ; \e$(A!b\e(B
+    (japanese-jisx0208         #x21 #x6A)      ; \e$(B!j\e(B
+    (korean-ksc5601            #x21 #x4F)      ; \e$(C!O\e(B
+    (chinese-cns11643-1                #x22 #x51)      ; \e$(G"Q\e(B
+    ))
+(define-char
+  '((name              . "EARTH")
+    (ucs               . #x2641)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALE SIGN")
+    (ucs               . #x2642)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x69)      ; \e$(@!i\e(B
+    (chinese-gb2312            #x21 #x61)      ; \e$(A!a\e(B
+    (japanese-jisx0208         #x21 #x69)      ; \e$(B!i\e(B
+    (korean-ksc5601            #x21 #x4E)      ; \e$(C!N\e(B
+    (chinese-cns11643-1                #x22 #x52)      ; \e$(G"R\e(B
+    ))
+(define-char
+  '((name              . "JUPITER")
+    (ucs               . #x2643)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SATURN")
+    (ucs               . #x2644)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "URANUS")
+    (ucs               . #x2645)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "NEPTUNE")
+    (ucs               . #x2646)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "PLUTO")
+    (ucs               . #x2647)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ARIES")
+    (ucs               . #x2648)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAURUS")
+    (ucs               . #x2649)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "GEMINI")
+    (ucs               . #x264A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CANCER")
+    (ucs               . #x264B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEO")
+    (ucs               . #x264C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "VIRGO")
+    (ucs               . #x264D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LIBRA")
+    (ucs               . #x264E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SCORPIUS")
+    (ucs               . #x264F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SAGITTARIUS")
+    (ucs               . #x2650)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CAPRICORN")
+    (ucs               . #x2651)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "AQUARIUS")
+    (ucs               . #x2652)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "PISCES")
+    (ucs               . #x2653)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE CHESS KING")
+    (ucs               . #x2654)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE CHESS QUEEN")
+    (ucs               . #x2655)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE CHESS ROOK")
+    (ucs               . #x2656)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE CHESS BISHOP")
+    (ucs               . #x2657)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE CHESS KNIGHT")
+    (ucs               . #x2658)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE CHESS PAWN")
+    (ucs               . #x2659)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK CHESS KING")
+    (ucs               . #x265A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK CHESS QUEEN")
+    (ucs               . #x265B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK CHESS ROOK")
+    (ucs               . #x265C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK CHESS BISHOP")
+    (ucs               . #x265D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK CHESS KNIGHT")
+    (ucs               . #x265E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK CHESS PAWN")
+    (ucs               . #x265F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK SPADE SUIT")
+    (ucs               . #x2660)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x3C)      ; \e$(C"<\e(B
+    ))
+(define-char
+  '((name              . "WHITE HEART SUIT")
+    (ucs               . #x2661)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x3D)      ; \e$(C"=\e(B
+    ))
+(define-char
+  '((name              . "WHITE DIAMOND SUIT")
+    (ucs               . #x2662)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK CLUB SUIT")
+    (ucs               . #x2663)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x40)      ; \e$(C"@\e(B
+    ))
+(define-char
+  '((name              . "WHITE SPADE SUIT")
+    (ucs               . #x2664)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x3B)      ; \e$(C";\e(B
+    ))
+(define-char
+  '((name              . "BLACK HEART SUIT")
+    (ucs               . #x2665)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x3E)      ; \e$(C">\e(B
+    ))
+(define-char
+  '((name              . "BLACK DIAMOND SUIT")
+    (ucs               . #x2666)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE CLUB SUIT")
+    (ucs               . #x2667)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x3F)      ; \e$(C"?\e(B
+    ))
+(define-char
+  '((name              . "HOT SPRINGS")
+    (ucs               . #x2668)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x4D)      ; \e$(C"M\e(B
+    ))
+(define-char
+  '((name              . "QUARTER NOTE")
+    (ucs               . #x2669)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x5B)      ; \e$(C"[\e(B
+    ))
+(define-char
+  '((name              . "EIGHTH NOTE")
+    (ucs               . #x266A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208 #x22 #x76)      ; \e$(B"v\e(B
+    (korean-ksc5601    #x22 #x5C)      ; \e$(C"\\e(B
+    ))
+(define-char
+  '((name              . "BEAMED EIGHTH NOTES")
+    (ucs               . #x266B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BEAMED SIXTEENTH NOTES")
+    (ucs               . #x266C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x5D)      ; \e$(C"]\e(B
+    ))
+(define-char
+  '((name              . "MUSIC FLAT SIGN")
+    (ucs               . #x266D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208 #x22 #x75)      ; \e$(B"u\e(B
+    (korean-ksc5601    #x22 #x5A)      ; \e$(C"Z\e(B
+    ))
+(define-char
+  '((name              . "MUSIC NATURAL SIGN")
+    (ucs               . #x266E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MUSIC SHARP SIGN")
+    (ucs               . #x266F)
+    (general-category  symbol math) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208 #x22 #x74)      ; \e$(B"t\e(B
+    ))
+(define-char
+  '((name              . "WEST SYRIAC CROSS")
+    (ucs               . #x2670)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "EAST SYRIAC CROSS")
+    (ucs               . #x2671)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u02700-Dingbats.el b/lisp/utf-2000/u02700-Dingbats.el
new file mode 100644 (file)
index 0000000..80236c7
--- /dev/null
@@ -0,0 +1,1178 @@
+(define-char
+  '((name              . "UPPER BLADE SCISSORS")
+    (ucs               . #x2701)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK SCISSORS")
+    (ucs               . #x2702)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LOWER BLADE SCISSORS")
+    (ucs               . #x2703)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE SCISSORS")
+    (ucs               . #x2704)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TELEPHONE LOCATION SIGN")
+    (ucs               . #x2706)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TAPE DRIVE")
+    (ucs               . #x2707)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "AIRPLANE")
+    (ucs               . #x2708)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ENVELOPE")
+    (ucs               . #x2709)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "VICTORY HAND")
+    (ucs               . #x270C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WRITING HAND")
+    (ucs               . #x270D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LOWER RIGHT PENCIL")
+    (ucs               . #x270E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "PENCIL")
+    (ucs               . #x270F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPPER RIGHT PENCIL")
+    (ucs               . #x2710)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE NIB")
+    (ucs               . #x2711)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK NIB")
+    (ucs               . #x2712)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CHECK MARK")
+    (ucs               . #x2713)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY CHECK MARK")
+    (ucs               . #x2714)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MULTIPLICATION X")
+    (ucs               . #x2715)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY MULTIPLICATION X")
+    (ucs               . #x2716)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BALLOT X")
+    (ucs               . #x2717)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY BALLOT X")
+    (ucs               . #x2718)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OUTLINED GREEK CROSS")
+    (ucs               . #x2719)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY GREEK CROSS")
+    (ucs               . #x271A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OPEN CENTRE CROSS")
+    (ucs               . #x271B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY OPEN CENTRE CROSS")
+    (ucs               . #x271C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LATIN CROSS")
+    (ucs               . #x271D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SHADOWED WHITE LATIN CROSS")
+    (ucs               . #x271E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OUTLINED LATIN CROSS")
+    (ucs               . #x271F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MALTESE CROSS")
+    (ucs               . #x2720)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "STAR OF DAVID")
+    (ucs               . #x2721)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "FOUR TEARDROP-SPOKED ASTERISK")
+    (ucs               . #x2722)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "FOUR BALLOON-SPOKED ASTERISK")
+    (ucs               . #x2723)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY FOUR BALLOON-SPOKED ASTERISK")
+    (ucs               . #x2724)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "FOUR CLUB-SPOKED ASTERISK")
+    (ucs               . #x2725)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK FOUR POINTED STAR")
+    (ucs               . #x2726)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE FOUR POINTED STAR")
+    (ucs               . #x2727)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "STRESS OUTLINED WHITE STAR")
+    (ucs               . #x2729)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CIRCLED WHITE STAR")
+    (ucs               . #x272A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OPEN CENTRE BLACK STAR")
+    (ucs               . #x272B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK CENTRE WHITE STAR")
+    (ucs               . #x272C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OUTLINED BLACK STAR")
+    (ucs               . #x272D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY OUTLINED BLACK STAR")
+    (ucs               . #x272E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "PINWHEEL STAR")
+    (ucs               . #x272F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SHADOWED WHITE STAR")
+    (ucs               . #x2730)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY ASTERISK")
+    (ucs               . #x2731)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OPEN CENTRE ASTERISK")
+    (ucs               . #x2732)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "EIGHT SPOKED ASTERISK")
+    (ucs               . #x2733)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x21 #x6E)     ; \e$(G!n\e(B
+    ))
+(define-char
+  '((name              . "EIGHT POINTED BLACK STAR")
+    (ucs               . #x2734)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "EIGHT POINTED PINWHEEL STAR")
+    (ucs               . #x2735)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SIX POINTED BLACK STAR")
+    (ucs               . #x2736)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "EIGHT POINTED RECTILINEAR BLACK STAR")
+    (ucs               . #x2737)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY EIGHT POINTED RECTILINEAR BLACK STAR")
+    (ucs               . #x2738)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TWELVE POINTED BLACK STAR")
+    (ucs               . #x2739)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SIXTEEN POINTED ASTERISK")
+    (ucs               . #x273A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TEARDROP-SPOKED ASTERISK")
+    (ucs               . #x273B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OPEN CENTRE TEARDROP-SPOKED ASTERISK")
+    (ucs               . #x273C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY TEARDROP-SPOKED ASTERISK")
+    (ucs               . #x273D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SIX PETALLED BLACK AND WHITE FLORETTE")
+    (ucs               . #x273E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK FLORETTE")
+    (ucs               . #x273F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE FLORETTE")
+    (ucs               . #x2740)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "EIGHT PETALLED OUTLINED BLACK FLORETTE")
+    (ucs               . #x2741)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CIRCLED OPEN CENTRE EIGHT POINTED STAR")
+    (ucs               . #x2742)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY TEARDROP-SPOKED PINWHEEL ASTERISK")
+    (ucs               . #x2743)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SNOWFLAKE")
+    (ucs               . #x2744)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TIGHT TRIFOLIATE SNOWFLAKE")
+    (ucs               . #x2745)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY CHEVRON SNOWFLAKE")
+    (ucs               . #x2746)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SPARKLE")
+    (ucs               . #x2747)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY SPARKLE")
+    (ucs               . #x2748)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BALLOON-SPOKED ASTERISK")
+    (ucs               . #x2749)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "EIGHT TEARDROP-SPOKED PROPELLER ASTERISK")
+    (ucs               . #x274A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY EIGHT TEARDROP-SPOKED PROPELLER ASTERISK")
+    (ucs               . #x274B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SHADOWED WHITE CIRCLE")
+    (ucs               . #x274D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LOWER RIGHT DROP-SHADOWED WHITE SQUARE")
+    (ucs               . #x274F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPPER RIGHT DROP-SHADOWED WHITE SQUARE")
+    (ucs               . #x2750)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LOWER RIGHT SHADOWED WHITE SQUARE")
+    (ucs               . #x2751)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "UPPER RIGHT SHADOWED WHITE SQUARE")
+    (ucs               . #x2752)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK DIAMOND MINUS WHITE X")
+    (ucs               . #x2756)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LIGHT VERTICAL BAR")
+    (ucs               . #x2758)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "MEDIUM VERTICAL BAR")
+    (ucs               . #x2759)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY VERTICAL BAR")
+    (ucs               . #x275A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "HEAVY SINGLE TURNED COMMA QUOTATION MARK ORNAMENT")
+    (ucs               . #x275B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY SINGLE COMMA QUOTATION MARK ORNAMENT")
+    (ucs               . #x275C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "HEAVY DOUBLE TURNED COMMA QUOTATION MARK ORNAMENT")
+    (ucs               . #x275D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY DOUBLE COMMA QUOTATION MARK ORNAMENT")
+    (ucs               . #x275E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CURVED STEM PARAGRAPH SIGN ORNAMENT")
+    (ucs               . #x2761)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY EXCLAMATION MARK ORNAMENT")
+    (ucs               . #x2762)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY HEART EXCLAMATION MARK ORNAMENT")
+    (ucs               . #x2763)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY BLACK HEART")
+    (ucs               . #x2764)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ROTATED HEAVY BLACK HEART BULLET")
+    (ucs               . #x2765)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "FLORAL HEART")
+    (ucs               . #x2766)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "ROTATED FLORAL HEART BULLET")
+    (ucs               . #x2767)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DINGBAT NEGATIVE CIRCLED DIGIT ONE")
+    (ucs               . #x2776)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 1)
+    (numeric-value     . 1)
+    ))
+(define-char
+  '((name              . "DINGBAT NEGATIVE CIRCLED DIGIT TWO")
+    (ucs               . #x2777)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 2)
+    (numeric-value     . 2)
+    ))
+(define-char
+  '((name              . "DINGBAT NEGATIVE CIRCLED DIGIT THREE")
+    (ucs               . #x2778)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 3)
+    (numeric-value     . 3)
+    ))
+(define-char
+  '((name              . "DINGBAT NEGATIVE CIRCLED DIGIT FOUR")
+    (ucs               . #x2779)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 4)
+    (numeric-value     . 4)
+    ))
+(define-char
+  '((name              . "DINGBAT NEGATIVE CIRCLED DIGIT FIVE")
+    (ucs               . #x277A)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 5)
+    (numeric-value     . 5)
+    ))
+(define-char
+  '((name              . "DINGBAT NEGATIVE CIRCLED DIGIT SIX")
+    (ucs               . #x277B)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 6)
+    (numeric-value     . 6)
+    ))
+(define-char
+  '((name              . "DINGBAT NEGATIVE CIRCLED DIGIT SEVEN")
+    (ucs               . #x277C)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 7)
+    (numeric-value     . 7)
+    ))
+(define-char
+  '((name              . "DINGBAT NEGATIVE CIRCLED DIGIT EIGHT")
+    (ucs               . #x277D)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 8)
+    (numeric-value     . 8)
+    ))
+(define-char
+  '((name              . "DINGBAT NEGATIVE CIRCLED DIGIT NINE")
+    (ucs               . #x277E)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 9)
+    (numeric-value     . 9)
+    ))
+(define-char
+  '((name              . "DINGBAT NEGATIVE CIRCLED NUMBER TEN")
+    (ucs               . #x277F)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (numeric-value     . 10)
+    ))
+(define-char
+  '((name              . "DINGBAT CIRCLED SANS-SERIF DIGIT ONE")
+    (ucs               . #x2780)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 1)
+    (numeric-value     . 1)
+    ))
+(define-char
+  '((name              . "DINGBAT CIRCLED SANS-SERIF DIGIT TWO")
+    (ucs               . #x2781)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 2)
+    (numeric-value     . 2)
+    ))
+(define-char
+  '((name              . "DINGBAT CIRCLED SANS-SERIF DIGIT THREE")
+    (ucs               . #x2782)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 3)
+    (numeric-value     . 3)
+    ))
+(define-char
+  '((name              . "DINGBAT CIRCLED SANS-SERIF DIGIT FOUR")
+    (ucs               . #x2783)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 4)
+    (numeric-value     . 4)
+    ))
+(define-char
+  '((name              . "DINGBAT CIRCLED SANS-SERIF DIGIT FIVE")
+    (ucs               . #x2784)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 5)
+    (numeric-value     . 5)
+    ))
+(define-char
+  '((name              . "DINGBAT CIRCLED SANS-SERIF DIGIT SIX")
+    (ucs               . #x2785)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 6)
+    (numeric-value     . 6)
+    ))
+(define-char
+  '((name              . "DINGBAT CIRCLED SANS-SERIF DIGIT SEVEN")
+    (ucs               . #x2786)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 7)
+    (numeric-value     . 7)
+    ))
+(define-char
+  '((name              . "DINGBAT CIRCLED SANS-SERIF DIGIT EIGHT")
+    (ucs               . #x2787)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 8)
+    (numeric-value     . 8)
+    ))
+(define-char
+  '((name              . "DINGBAT CIRCLED SANS-SERIF DIGIT NINE")
+    (ucs               . #x2788)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 9)
+    (numeric-value     . 9)
+    ))
+(define-char
+  '((name              . "DINGBAT CIRCLED SANS-SERIF NUMBER TEN")
+    (ucs               . #x2789)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (numeric-value     . 10)
+    ))
+(define-char
+  '((name              . "DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT ONE")
+    (ucs               . #x278A)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 1)
+    (numeric-value     . 1)
+    ))
+(define-char
+  '((name              . "DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT TWO")
+    (ucs               . #x278B)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 2)
+    (numeric-value     . 2)
+    ))
+(define-char
+  '((name              . "DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT THREE")
+    (ucs               . #x278C)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 3)
+    (numeric-value     . 3)
+    ))
+(define-char
+  '((name              . "DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT FOUR")
+    (ucs               . #x278D)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 4)
+    (numeric-value     . 4)
+    ))
+(define-char
+  '((name              . "DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT FIVE")
+    (ucs               . #x278E)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 5)
+    (numeric-value     . 5)
+    ))
+(define-char
+  '((name              . "DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT SIX")
+    (ucs               . #x278F)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 6)
+    (numeric-value     . 6)
+    ))
+(define-char
+  '((name              . "DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT SEVEN")
+    (ucs               . #x2790)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 7)
+    (numeric-value     . 7)
+    ))
+(define-char
+  '((name              . "DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT EIGHT")
+    (ucs               . #x2791)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 8)
+    (numeric-value     . 8)
+    ))
+(define-char
+  '((name              . "DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT NINE")
+    (ucs               . #x2792)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (digit-value       . 9)
+    (numeric-value     . 9)
+    ))
+(define-char
+  '((name              . "DINGBAT NEGATIVE CIRCLED SANS-SERIF NUMBER TEN")
+    (ucs               . #x2793)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (numeric-value     . 10)
+    ))
+(define-char
+  '((name              . "HEAVY WIDE-HEADED RIGHTWARDS ARROW")
+    (ucs               . #x2794)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY SOUTH EAST ARROW")
+    (ucs               . #x2798)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY RIGHTWARDS ARROW")
+    (ucs               . #x2799)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY NORTH EAST ARROW")
+    (ucs               . #x279A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DRAFTING POINT RIGHTWARDS ARROW")
+    (ucs               . #x279B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY ROUND-TIPPED RIGHTWARDS ARROW")
+    (ucs               . #x279C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TRIANGLE-HEADED RIGHTWARDS ARROW")
+    (ucs               . #x279D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY TRIANGLE-HEADED RIGHTWARDS ARROW")
+    (ucs               . #x279E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "DASHED TRIANGLE-HEADED RIGHTWARDS ARROW")
+    (ucs               . #x279F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY DASHED TRIANGLE-HEADED RIGHTWARDS ARROW")
+    (ucs               . #x27A0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK RIGHTWARDS ARROW")
+    (ucs               . #x27A1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THREE-D TOP-LIGHTED RIGHTWARDS ARROWHEAD")
+    (ucs               . #x27A2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "THREE-D BOTTOM-LIGHTED RIGHTWARDS ARROWHEAD")
+    (ucs               . #x27A3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK RIGHTWARDS ARROWHEAD")
+    (ucs               . #x27A4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "HEAVY BLACK CURVED DOWNWARDS AND RIGHTWARDS ARROW")
+    (ucs               . #x27A5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY BLACK CURVED UPWARDS AND RIGHTWARDS ARROW")
+    (ucs               . #x27A6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "SQUAT BLACK RIGHTWARDS ARROW")
+    (ucs               . #x27A7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY CONCAVE-POINTED BLACK RIGHTWARDS ARROW")
+    (ucs               . #x27A8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "RIGHT-SHADED WHITE RIGHTWARDS ARROW")
+    (ucs               . #x27A9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "LEFT-SHADED WHITE RIGHTWARDS ARROW")
+    (ucs               . #x27AA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BACK-TILTED SHADOWED WHITE RIGHTWARDS ARROW")
+    (ucs               . #x27AB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "FRONT-TILTED SHADOWED WHITE RIGHTWARDS ARROW")
+    (ucs               . #x27AC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "HEAVY LOWER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW")
+    (ucs               . #x27AD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "HEAVY UPPER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW")
+    (ucs               . #x27AE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "NOTCHED LOWER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW")
+    (ucs               . #x27AF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "NOTCHED UPPER RIGHT-SHADOWED WHITE RIGHTWARDS ARROW")
+    (ucs               . #x27B1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CIRCLED HEAVY WHITE RIGHTWARDS ARROW")
+    (ucs               . #x27B2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WHITE-FEATHERED RIGHTWARDS ARROW")
+    (ucs               . #x27B3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK-FEATHERED SOUTH EAST ARROW")
+    (ucs               . #x27B4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK-FEATHERED RIGHTWARDS ARROW")
+    (ucs               . #x27B5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BLACK-FEATHERED NORTH EAST ARROW")
+    (ucs               . #x27B6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY BLACK-FEATHERED SOUTH EAST ARROW")
+    (ucs               . #x27B7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY BLACK-FEATHERED RIGHTWARDS ARROW")
+    (ucs               . #x27B8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY BLACK-FEATHERED NORTH EAST ARROW")
+    (ucs               . #x27B9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "TEARDROP-BARBED RIGHTWARDS ARROW")
+    (ucs               . #x27BA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY TEARDROP-SHANKED RIGHTWARDS ARROW")
+    (ucs               . #x27BB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WEDGE-TAILED RIGHTWARDS ARROW")
+    (ucs               . #x27BC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HEAVY WEDGE-TAILED RIGHTWARDS ARROW")
+    (ucs               . #x27BD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "OPEN-OUTLINED RIGHTWARDS ARROW")
+    (ucs               . #x27BE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u02800-Braille-Patterns.el b/lisp/utf-2000/u02800-Braille-Patterns.el
new file mode 100644 (file)
index 0000000..4953176
--- /dev/null
@@ -0,0 +1,1792 @@
+(define-char
+  '((name              . "BRAILLE PATTERN BLANK")
+    (ucs               . #x2800)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1")
+    (ucs               . #x2801)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-2")
+    (ucs               . #x2802)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-12")
+    (ucs               . #x2803)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-3")
+    (ucs               . #x2804)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-13")
+    (ucs               . #x2805)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-23")
+    (ucs               . #x2806)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-123")
+    (ucs               . #x2807)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-4")
+    (ucs               . #x2808)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-14")
+    (ucs               . #x2809)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-24")
+    (ucs               . #x280A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-124")
+    (ucs               . #x280B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-34")
+    (ucs               . #x280C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-134")
+    (ucs               . #x280D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-234")
+    (ucs               . #x280E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1234")
+    (ucs               . #x280F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-5")
+    (ucs               . #x2810)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-15")
+    (ucs               . #x2811)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-25")
+    (ucs               . #x2812)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-125")
+    (ucs               . #x2813)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-35")
+    (ucs               . #x2814)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-135")
+    (ucs               . #x2815)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-235")
+    (ucs               . #x2816)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1235")
+    (ucs               . #x2817)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-45")
+    (ucs               . #x2818)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-145")
+    (ucs               . #x2819)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-245")
+    (ucs               . #x281A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1245")
+    (ucs               . #x281B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-345")
+    (ucs               . #x281C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1345")
+    (ucs               . #x281D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-2345")
+    (ucs               . #x281E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-12345")
+    (ucs               . #x281F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-6")
+    (ucs               . #x2820)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-16")
+    (ucs               . #x2821)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-26")
+    (ucs               . #x2822)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-126")
+    (ucs               . #x2823)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-36")
+    (ucs               . #x2824)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-136")
+    (ucs               . #x2825)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-236")
+    (ucs               . #x2826)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1236")
+    (ucs               . #x2827)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-46")
+    (ucs               . #x2828)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-146")
+    (ucs               . #x2829)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-246")
+    (ucs               . #x282A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1246")
+    (ucs               . #x282B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-346")
+    (ucs               . #x282C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1346")
+    (ucs               . #x282D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-2346")
+    (ucs               . #x282E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-12346")
+    (ucs               . #x282F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-56")
+    (ucs               . #x2830)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-156")
+    (ucs               . #x2831)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-256")
+    (ucs               . #x2832)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1256")
+    (ucs               . #x2833)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-356")
+    (ucs               . #x2834)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1356")
+    (ucs               . #x2835)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-2356")
+    (ucs               . #x2836)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-12356")
+    (ucs               . #x2837)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-456")
+    (ucs               . #x2838)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1456")
+    (ucs               . #x2839)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-2456")
+    (ucs               . #x283A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-12456")
+    (ucs               . #x283B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-3456")
+    (ucs               . #x283C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-13456")
+    (ucs               . #x283D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-23456")
+    (ucs               . #x283E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-123456")
+    (ucs               . #x283F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-7")
+    (ucs               . #x2840)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-17")
+    (ucs               . #x2841)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-27")
+    (ucs               . #x2842)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-127")
+    (ucs               . #x2843)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-37")
+    (ucs               . #x2844)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-137")
+    (ucs               . #x2845)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-237")
+    (ucs               . #x2846)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1237")
+    (ucs               . #x2847)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-47")
+    (ucs               . #x2848)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-147")
+    (ucs               . #x2849)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-247")
+    (ucs               . #x284A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1247")
+    (ucs               . #x284B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-347")
+    (ucs               . #x284C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1347")
+    (ucs               . #x284D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-2347")
+    (ucs               . #x284E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-12347")
+    (ucs               . #x284F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-57")
+    (ucs               . #x2850)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-157")
+    (ucs               . #x2851)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-257")
+    (ucs               . #x2852)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1257")
+    (ucs               . #x2853)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-357")
+    (ucs               . #x2854)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1357")
+    (ucs               . #x2855)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-2357")
+    (ucs               . #x2856)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-12357")
+    (ucs               . #x2857)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-457")
+    (ucs               . #x2858)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1457")
+    (ucs               . #x2859)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-2457")
+    (ucs               . #x285A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-12457")
+    (ucs               . #x285B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-3457")
+    (ucs               . #x285C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-13457")
+    (ucs               . #x285D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-23457")
+    (ucs               . #x285E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-123457")
+    (ucs               . #x285F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-67")
+    (ucs               . #x2860)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-167")
+    (ucs               . #x2861)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-267")
+    (ucs               . #x2862)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1267")
+    (ucs               . #x2863)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-367")
+    (ucs               . #x2864)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1367")
+    (ucs               . #x2865)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-2367")
+    (ucs               . #x2866)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-12367")
+    (ucs               . #x2867)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-467")
+    (ucs               . #x2868)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1467")
+    (ucs               . #x2869)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-2467")
+    (ucs               . #x286A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-12467")
+    (ucs               . #x286B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-3467")
+    (ucs               . #x286C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-13467")
+    (ucs               . #x286D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-23467")
+    (ucs               . #x286E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-123467")
+    (ucs               . #x286F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-567")
+    (ucs               . #x2870)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1567")
+    (ucs               . #x2871)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-2567")
+    (ucs               . #x2872)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-12567")
+    (ucs               . #x2873)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-3567")
+    (ucs               . #x2874)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-13567")
+    (ucs               . #x2875)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-23567")
+    (ucs               . #x2876)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-123567")
+    (ucs               . #x2877)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-4567")
+    (ucs               . #x2878)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-14567")
+    (ucs               . #x2879)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-24567")
+    (ucs               . #x287A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-124567")
+    (ucs               . #x287B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-34567")
+    (ucs               . #x287C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-134567")
+    (ucs               . #x287D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-234567")
+    (ucs               . #x287E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1234567")
+    (ucs               . #x287F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-8")
+    (ucs               . #x2880)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-18")
+    (ucs               . #x2881)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-28")
+    (ucs               . #x2882)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-128")
+    (ucs               . #x2883)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-38")
+    (ucs               . #x2884)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-138")
+    (ucs               . #x2885)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-238")
+    (ucs               . #x2886)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1238")
+    (ucs               . #x2887)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-48")
+    (ucs               . #x2888)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-148")
+    (ucs               . #x2889)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-248")
+    (ucs               . #x288A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1248")
+    (ucs               . #x288B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-348")
+    (ucs               . #x288C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1348")
+    (ucs               . #x288D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-2348")
+    (ucs               . #x288E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-12348")
+    (ucs               . #x288F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-58")
+    (ucs               . #x2890)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-158")
+    (ucs               . #x2891)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-258")
+    (ucs               . #x2892)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1258")
+    (ucs               . #x2893)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-358")
+    (ucs               . #x2894)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1358")
+    (ucs               . #x2895)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-2358")
+    (ucs               . #x2896)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-12358")
+    (ucs               . #x2897)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-458")
+    (ucs               . #x2898)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1458")
+    (ucs               . #x2899)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-2458")
+    (ucs               . #x289A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-12458")
+    (ucs               . #x289B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-3458")
+    (ucs               . #x289C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-13458")
+    (ucs               . #x289D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-23458")
+    (ucs               . #x289E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-123458")
+    (ucs               . #x289F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-68")
+    (ucs               . #x28A0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-168")
+    (ucs               . #x28A1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-268")
+    (ucs               . #x28A2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1268")
+    (ucs               . #x28A3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-368")
+    (ucs               . #x28A4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1368")
+    (ucs               . #x28A5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-2368")
+    (ucs               . #x28A6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-12368")
+    (ucs               . #x28A7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-468")
+    (ucs               . #x28A8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1468")
+    (ucs               . #x28A9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-2468")
+    (ucs               . #x28AA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-12468")
+    (ucs               . #x28AB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-3468")
+    (ucs               . #x28AC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-13468")
+    (ucs               . #x28AD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-23468")
+    (ucs               . #x28AE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-123468")
+    (ucs               . #x28AF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-568")
+    (ucs               . #x28B0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1568")
+    (ucs               . #x28B1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-2568")
+    (ucs               . #x28B2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-12568")
+    (ucs               . #x28B3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-3568")
+    (ucs               . #x28B4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-13568")
+    (ucs               . #x28B5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-23568")
+    (ucs               . #x28B6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-123568")
+    (ucs               . #x28B7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-4568")
+    (ucs               . #x28B8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-14568")
+    (ucs               . #x28B9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-24568")
+    (ucs               . #x28BA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-124568")
+    (ucs               . #x28BB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-34568")
+    (ucs               . #x28BC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-134568")
+    (ucs               . #x28BD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-234568")
+    (ucs               . #x28BE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1234568")
+    (ucs               . #x28BF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-78")
+    (ucs               . #x28C0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-178")
+    (ucs               . #x28C1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-278")
+    (ucs               . #x28C2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1278")
+    (ucs               . #x28C3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-378")
+    (ucs               . #x28C4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1378")
+    (ucs               . #x28C5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-2378")
+    (ucs               . #x28C6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-12378")
+    (ucs               . #x28C7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-478")
+    (ucs               . #x28C8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1478")
+    (ucs               . #x28C9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-2478")
+    (ucs               . #x28CA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-12478")
+    (ucs               . #x28CB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-3478")
+    (ucs               . #x28CC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-13478")
+    (ucs               . #x28CD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-23478")
+    (ucs               . #x28CE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-123478")
+    (ucs               . #x28CF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-578")
+    (ucs               . #x28D0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1578")
+    (ucs               . #x28D1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-2578")
+    (ucs               . #x28D2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-12578")
+    (ucs               . #x28D3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-3578")
+    (ucs               . #x28D4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-13578")
+    (ucs               . #x28D5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-23578")
+    (ucs               . #x28D6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-123578")
+    (ucs               . #x28D7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-4578")
+    (ucs               . #x28D8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-14578")
+    (ucs               . #x28D9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-24578")
+    (ucs               . #x28DA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-124578")
+    (ucs               . #x28DB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-34578")
+    (ucs               . #x28DC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-134578")
+    (ucs               . #x28DD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-234578")
+    (ucs               . #x28DE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1234578")
+    (ucs               . #x28DF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-678")
+    (ucs               . #x28E0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1678")
+    (ucs               . #x28E1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-2678")
+    (ucs               . #x28E2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-12678")
+    (ucs               . #x28E3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-3678")
+    (ucs               . #x28E4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-13678")
+    (ucs               . #x28E5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-23678")
+    (ucs               . #x28E6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-123678")
+    (ucs               . #x28E7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-4678")
+    (ucs               . #x28E8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-14678")
+    (ucs               . #x28E9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-24678")
+    (ucs               . #x28EA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-124678")
+    (ucs               . #x28EB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-34678")
+    (ucs               . #x28EC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-134678")
+    (ucs               . #x28ED)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-234678")
+    (ucs               . #x28EE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1234678")
+    (ucs               . #x28EF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-5678")
+    (ucs               . #x28F0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-15678")
+    (ucs               . #x28F1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-25678")
+    (ucs               . #x28F2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-125678")
+    (ucs               . #x28F3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-35678")
+    (ucs               . #x28F4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-135678")
+    (ucs               . #x28F5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-235678")
+    (ucs               . #x28F6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1235678")
+    (ucs               . #x28F7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-45678")
+    (ucs               . #x28F8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-145678")
+    (ucs               . #x28F9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-245678")
+    (ucs               . #x28FA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1245678")
+    (ucs               . #x28FB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-345678")
+    (ucs               . #x28FC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-1345678")
+    (ucs               . #x28FD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-2345678")
+    (ucs               . #x28FE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BRAILLE PATTERN DOTS-12345678")
+    (ucs               . #x28FF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u02E00-CJK-Radical-Supplement.el b/lisp/utf-2000/u02E00-CJK-Radical-Supplement.el
new file mode 100644 (file)
index 0000000..006b7d2
--- /dev/null
@@ -0,0 +1,807 @@
+(define-char
+  '((name              . "CJK RADICAL REPEAT")
+    (ucs               . #x2E80)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL CLIFF")
+    (ucs               . #x2E81)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL SECOND ONE")
+    (ucs               . #x2E82)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL SECOND TWO")
+    (ucs               . #x2E83)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL SECOND THREE")
+    (ucs               . #x2E84)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL PERSON")
+    (ucs               . #x2E85)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL BOX")
+    (ucs               . #x2E86)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL TABLE")
+    (ucs               . #x2E87)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL KNIFE ONE")
+    (ucs               . #x2E88)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL KNIFE TWO")
+    (ucs               . #x2E89)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL DIVINATION")
+    (ucs               . #x2E8A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL SEAL")
+    (ucs               . #x2E8B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL SMALL ONE")
+    (ucs               . #x2E8C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL SMALL TWO")
+    (ucs               . #x2E8D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL LAME ONE")
+    (ucs               . #x2E8E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL LAME TWO")
+    (ucs               . #x2E8F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL LAME THREE")
+    (ucs               . #x2E90)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL LAME FOUR")
+    (ucs               . #x2E91)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL SNAKE")
+    (ucs               . #x2E92)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL THREAD")
+    (ucs               . #x2E93)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL SNOUT ONE")
+    (ucs               . #x2E94)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL SNOUT TWO")
+    (ucs               . #x2E95)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL HEART ONE")
+    (ucs               . #x2E96)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL HEART TWO")
+    (ucs               . #x2E97)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL HAND")
+    (ucs               . #x2E98)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL RAP")
+    (ucs               . #x2E99)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL CHOKE")
+    (ucs               . #x2E9B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL SUN")
+    (ucs               . #x2E9C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL MOON")
+    (ucs               . #x2E9D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL DEATH")
+    (ucs               . #x2E9E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL MOTHER")
+    (ucs               . #x2E9F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x6BCD)
+    ))
+(define-char
+  '((name              . "CJK RADICAL CIVILIAN")
+    (ucs               . #x2EA0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL WATER ONE")
+    (ucs               . #x2EA1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL WATER TWO")
+    (ucs               . #x2EA2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL FIRE")
+    (ucs               . #x2EA3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL PAW ONE")
+    (ucs               . #x2EA4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL PAW TWO")
+    (ucs               . #x2EA5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL SIMPLIFIED HALF TREE TRUNK")
+    (ucs               . #x2EA6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL COW")
+    (ucs               . #x2EA7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL DOG")
+    (ucs               . #x2EA8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL JADE")
+    (ucs               . #x2EA9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL BOLT OF CLOTH")
+    (ucs               . #x2EAA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL EYE")
+    (ucs               . #x2EAB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL SPIRIT ONE")
+    (ucs               . #x2EAC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL SPIRIT TWO")
+    (ucs               . #x2EAD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL BAMBOO")
+    (ucs               . #x2EAE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL SILK")
+    (ucs               . #x2EAF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL C-SIMPLIFIED SILK")
+    (ucs               . #x2EB0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL NET ONE")
+    (ucs               . #x2EB1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL NET TWO")
+    (ucs               . #x2EB2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL NET THREE")
+    (ucs               . #x2EB3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL NET FOUR")
+    (ucs               . #x2EB4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL MESH")
+    (ucs               . #x2EB5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL SHEEP")
+    (ucs               . #x2EB6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL RAM")
+    (ucs               . #x2EB7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL EWE")
+    (ucs               . #x2EB8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL OLD")
+    (ucs               . #x2EB9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL BRUSH ONE")
+    (ucs               . #x2EBA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL BRUSH TWO")
+    (ucs               . #x2EBB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL MEAT")
+    (ucs               . #x2EBC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL MORTAR")
+    (ucs               . #x2EBD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL GRASS ONE")
+    (ucs               . #x2EBE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL GRASS TWO")
+    (ucs               . #x2EBF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL GRASS THREE")
+    (ucs               . #x2EC0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL TIGER")
+    (ucs               . #x2EC1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL CLOTHES")
+    (ucs               . #x2EC2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL WEST ONE")
+    (ucs               . #x2EC3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL WEST TWO")
+    (ucs               . #x2EC4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL C-SIMPLIFIED SEE")
+    (ucs               . #x2EC5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL SIMPLIFIED HORN")
+    (ucs               . #x2EC6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL HORN")
+    (ucs               . #x2EC7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL C-SIMPLIFIED SPEECH")
+    (ucs               . #x2EC8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL C-SIMPLIFIED SHELL")
+    (ucs               . #x2EC9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL FOOT")
+    (ucs               . #x2ECA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL C-SIMPLIFIED CART")
+    (ucs               . #x2ECB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL SIMPLIFIED WALK")
+    (ucs               . #x2ECC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL WALK ONE")
+    (ucs               . #x2ECD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL WALK TWO")
+    (ucs               . #x2ECE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL CITY")
+    (ucs               . #x2ECF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL C-SIMPLIFIED GOLD")
+    (ucs               . #x2ED0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL LONG ONE")
+    (ucs               . #x2ED1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL LONG TWO")
+    (ucs               . #x2ED2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL C-SIMPLIFIED LONG")
+    (ucs               . #x2ED3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL C-SIMPLIFIED GATE")
+    (ucs               . #x2ED4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL MOUND ONE")
+    (ucs               . #x2ED5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL MOUND TWO")
+    (ucs               . #x2ED6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL RAIN")
+    (ucs               . #x2ED7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL BLUE")
+    (ucs               . #x2ED8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL C-SIMPLIFIED TANNED LEATHER")
+    (ucs               . #x2ED9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL C-SIMPLIFIED LEAF")
+    (ucs               . #x2EDA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL C-SIMPLIFIED WIND")
+    (ucs               . #x2EDB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL C-SIMPLIFIED FLY")
+    (ucs               . #x2EDC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL EAT ONE")
+    (ucs               . #x2EDD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL EAT TWO")
+    (ucs               . #x2EDE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL EAT THREE")
+    (ucs               . #x2EDF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL C-SIMPLIFIED EAT")
+    (ucs               . #x2EE0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL HEAD")
+    (ucs               . #x2EE1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL C-SIMPLIFIED HORSE")
+    (ucs               . #x2EE2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL BONE")
+    (ucs               . #x2EE3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL GHOST")
+    (ucs               . #x2EE4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL C-SIMPLIFIED FISH")
+    (ucs               . #x2EE5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL C-SIMPLIFIED BIRD")
+    (ucs               . #x2EE6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL C-SIMPLIFIED SALT")
+    (ucs               . #x2EE7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL SIMPLIFIED WHEAT")
+    (ucs               . #x2EE8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL SIMPLIFIED YELLOW")
+    (ucs               . #x2EE9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL C-SIMPLIFIED FROG")
+    (ucs               . #x2EEA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL J-SIMPLIFIED EVEN")
+    (ucs               . #x2EEB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL C-SIMPLIFIED EVEN")
+    (ucs               . #x2EEC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL J-SIMPLIFIED TOOTH")
+    (ucs               . #x2EED)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL C-SIMPLIFIED TOOTH")
+    (ucs               . #x2EEE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL J-SIMPLIFIED DRAGON")
+    (ucs               . #x2EEF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL C-SIMPLIFIED DRAGON")
+    (ucs               . #x2EF0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL TURTLE")
+    (ucs               . #x2EF1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL J-SIMPLIFIED TURTLE")
+    (ucs               . #x2EF2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CJK RADICAL C-SIMPLIFIED TURTLE")
+    (ucs               . #x2EF3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9F9F)
+    ))
diff --git a/lisp/utf-2000/u02F00-Kangxi-Radicals.el b/lisp/utf-2000/u02F00-Kangxi-Radicals.el
new file mode 100644 (file)
index 0000000..f4dacd8
--- /dev/null
@@ -0,0 +1,1925 @@
+(define-char
+  '((name              . "KANGXI RADICAL ONE")
+    (ucs               . #x2F00)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x4E00)
+    (chinese-cns11643-1 #x27 #x21)     ; \e$(G'!\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL LINE")
+    (ucs               . #x2F01)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x4E28)
+    (chinese-cns11643-1 #x27 #x22)     ; \e$(G'"\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL DOT")
+    (ucs               . #x2F02)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x4E36)
+    (chinese-cns11643-1 #x27 #x23)     ; \e$(G'#\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SLASH")
+    (ucs               . #x2F03)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x4E3F)
+    (chinese-cns11643-1 #x27 #x24)     ; \e$(G'$\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SECOND")
+    (ucs               . #x2F04)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x4E59)
+    (chinese-cns11643-1 #x27 #x25)     ; \e$(G'%\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL HOOK")
+    (ucs               . #x2F05)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x4E85)
+    (chinese-cns11643-1 #x27 #x26)     ; \e$(G'&\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL TWO")
+    (ucs               . #x2F06)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x4E8C)
+    (chinese-cns11643-1 #x27 #x27)     ; \e$(G''\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL LID")
+    (ucs               . #x2F07)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x4EA0)
+    (chinese-cns11643-1 #x27 #x28)     ; \e$(G'(\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL MAN")
+    (ucs               . #x2F08)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x4EBA)
+    (chinese-cns11643-1 #x27 #x29)     ; \e$(G')\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL LEGS")
+    (ucs               . #x2F09)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x513F)
+    (chinese-cns11643-1 #x27 #x2A)     ; \e$(G'*\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL ENTER")
+    (ucs               . #x2F0A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5165)
+    (chinese-cns11643-1 #x27 #x2B)     ; \e$(G'+\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL EIGHT")
+    (ucs               . #x2F0B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x516B)
+    (chinese-cns11643-1 #x27 #x2C)     ; \e$(G',\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL DOWN BOX")
+    (ucs               . #x2F0C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5182)
+    (chinese-cns11643-1 #x27 #x2D)     ; \e$(G'-\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL COVER")
+    (ucs               . #x2F0D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5196)
+    (chinese-cns11643-1 #x27 #x2E)     ; \e$(G'.\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL ICE")
+    (ucs               . #x2F0E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x51AB)
+    (chinese-cns11643-1 #x27 #x2F)     ; \e$(G'/\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL TABLE")
+    (ucs               . #x2F0F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x51E0)
+    (chinese-cns11643-1 #x27 #x30)     ; \e$(G'0\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL OPEN BOX")
+    (ucs               . #x2F10)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x51F5)
+    (chinese-cns11643-1 #x27 #x31)     ; \e$(G'1\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL KNIFE")
+    (ucs               . #x2F11)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5200)
+    (chinese-cns11643-1 #x27 #x32)     ; \e$(G'2\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL POWER")
+    (ucs               . #x2F12)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x529B)
+    (chinese-cns11643-1 #x27 #x33)     ; \e$(G'3\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL WRAP")
+    (ucs               . #x2F13)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x52F9)
+    (chinese-cns11643-1 #x27 #x34)     ; \e$(G'4\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SPOON")
+    (ucs               . #x2F14)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5315)
+    (chinese-cns11643-1 #x27 #x35)     ; \e$(G'5\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL RIGHT OPEN BOX")
+    (ucs               . #x2F15)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x531A)
+    (chinese-cns11643-1 #x27 #x36)     ; \e$(G'6\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL HIDING ENCLOSURE")
+    (ucs               . #x2F16)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5338)
+    (chinese-cns11643-1 #x27 #x37)     ; \e$(G'7\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL TEN")
+    (ucs               . #x2F17)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5341)
+    (chinese-cns11643-1 #x27 #x38)     ; \e$(G'8\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL DIVINATION")
+    (ucs               . #x2F18)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x535C)
+    (chinese-cns11643-1 #x27 #x39)     ; \e$(G'9\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SEAL")
+    (ucs               . #x2F19)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5369)
+    (chinese-cns11643-1 #x27 #x3A)     ; \e$(G':\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL CLIFF")
+    (ucs               . #x2F1A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5382)
+    (chinese-cns11643-1 #x27 #x3B)     ; \e$(G';\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL PRIVATE")
+    (ucs               . #x2F1B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x53B6)
+    (chinese-cns11643-1 #x27 #x3C)     ; \e$(G'<\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL AGAIN")
+    (ucs               . #x2F1C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x53C8)
+    (chinese-cns11643-1 #x27 #x3D)     ; \e$(G'=\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL MOUTH")
+    (ucs               . #x2F1D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x53E3)
+    (chinese-cns11643-1 #x27 #x3E)     ; \e$(G'>\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL ENCLOSURE")
+    (ucs               . #x2F1E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x56D7)
+    (chinese-cns11643-1 #x27 #x3F)     ; \e$(G'?\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL EARTH")
+    (ucs               . #x2F1F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x571F)
+    (chinese-cns11643-1 #x27 #x40)     ; \e$(G'@\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SCHOLAR")
+    (ucs               . #x2F20)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x58EB)
+    (chinese-cns11643-1 #x27 #x41)     ; \e$(G'A\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL GO")
+    (ucs               . #x2F21)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5902)
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL GO SLOWLY")
+    (ucs               . #x2F22)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x590A)
+    (chinese-cns11643-1 #x27 #x42)     ; \e$(G'B\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL EVENING")
+    (ucs               . #x2F23)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5915)
+    (chinese-cns11643-1 #x27 #x43)     ; \e$(G'C\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL BIG")
+    (ucs               . #x2F24)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5927)
+    (chinese-cns11643-1 #x27 #x44)     ; \e$(G'D\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL WOMAN")
+    (ucs               . #x2F25)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5973)
+    (chinese-cns11643-1 #x27 #x45)     ; \e$(G'E\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL CHILD")
+    (ucs               . #x2F26)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5B50)
+    (chinese-cns11643-1 #x27 #x46)     ; \e$(G'F\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL ROOF")
+    (ucs               . #x2F27)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5B80)
+    (chinese-cns11643-1 #x27 #x47)     ; \e$(G'G\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL INCH")
+    (ucs               . #x2F28)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5BF8)
+    (chinese-cns11643-1 #x27 #x48)     ; \e$(G'H\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SMALL")
+    (ucs               . #x2F29)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5C0F)
+    (chinese-cns11643-1 #x27 #x49)     ; \e$(G'I\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL LAME")
+    (ucs               . #x2F2A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5C22)
+    (chinese-cns11643-1 #x27 #x4A)     ; \e$(G'J\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL CORPSE")
+    (ucs               . #x2F2B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5C38)
+    (chinese-cns11643-1 #x27 #x4B)     ; \e$(G'K\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SPROUT")
+    (ucs               . #x2F2C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5C6E)
+    (chinese-cns11643-1 #x27 #x4C)     ; \e$(G'L\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL MOUNTAIN")
+    (ucs               . #x2F2D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5C71)
+    (chinese-cns11643-1 #x27 #x4D)     ; \e$(G'M\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL RIVER")
+    (ucs               . #x2F2E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5DDB)
+    (chinese-cns11643-1 #x27 #x4E)     ; \e$(G'N\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL WORK")
+    (ucs               . #x2F2F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5DE5)
+    (chinese-cns11643-1 #x27 #x4F)     ; \e$(G'O\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL ONESELF")
+    (ucs               . #x2F30)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5DF1)
+    (chinese-cns11643-1 #x27 #x50)     ; \e$(G'P\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL TURBAN")
+    (ucs               . #x2F31)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5DFE)
+    (chinese-cns11643-1 #x27 #x51)     ; \e$(G'Q\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL DRY")
+    (ucs               . #x2F32)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5E72)
+    (chinese-cns11643-1 #x27 #x52)     ; \e$(G'R\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SHORT THREAD")
+    (ucs               . #x2F33)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5E7A)
+    (chinese-cns11643-1 #x27 #x53)     ; \e$(G'S\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL DOTTED CLIFF")
+    (ucs               . #x2F34)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5E7F)
+    (chinese-cns11643-1 #x27 #x54)     ; \e$(G'T\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL LONG STRIDE")
+    (ucs               . #x2F35)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5EF4)
+    (chinese-cns11643-1 #x27 #x55)     ; \e$(G'U\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL TWO HANDS")
+    (ucs               . #x2F36)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5EFE)
+    (chinese-cns11643-1 #x27 #x56)     ; \e$(G'V\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SHOOT")
+    (ucs               . #x2F37)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5F0B)
+    (chinese-cns11643-1 #x27 #x57)     ; \e$(G'W\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL BOW")
+    (ucs               . #x2F38)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5F13)
+    (chinese-cns11643-1 #x27 #x58)     ; \e$(G'X\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SNOUT")
+    (ucs               . #x2F39)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5F50)
+    (chinese-cns11643-1 #x27 #x59)     ; \e$(G'Y\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL BRISTLE")
+    (ucs               . #x2F3A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5F61)
+    (chinese-cns11643-1 #x27 #x5A)     ; \e$(G'Z\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL STEP")
+    (ucs               . #x2F3B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5F73)
+    (chinese-cns11643-1 #x27 #x5B)     ; \e$(G'[\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL HEART")
+    (ucs               . #x2F3C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x5FC3)
+    (chinese-cns11643-1 #x27 #x5C)     ; \e$(G'\\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL HALBERD")
+    (ucs               . #x2F3D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x6208)
+    (chinese-cns11643-1 #x27 #x5D)     ; \e$(G']\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL DOOR")
+    (ucs               . #x2F3E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x6236)
+    (chinese-cns11643-1 #x27 #x5E)     ; \e$(G'^\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL HAND")
+    (ucs               . #x2F3F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x624B)
+    (chinese-cns11643-1 #x27 #x5F)     ; \e$(G'_\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL BRANCH")
+    (ucs               . #x2F40)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x652F)
+    (chinese-cns11643-1 #x27 #x60)     ; \e$(G'`\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL RAP")
+    (ucs               . #x2F41)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x6534)
+    (chinese-cns11643-1 #x27 #x61)     ; \e$(G'a\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SCRIPT")
+    (ucs               . #x2F42)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x6587)
+    (chinese-cns11643-1 #x27 #x62)     ; \e$(G'b\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL DIPPER")
+    (ucs               . #x2F43)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x6597)
+    (chinese-cns11643-1 #x27 #x63)     ; \e$(G'c\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL AXE")
+    (ucs               . #x2F44)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x65A4)
+    (chinese-cns11643-1 #x27 #x64)     ; \e$(G'd\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SQUARE")
+    (ucs               . #x2F45)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x65B9)
+    (chinese-cns11643-1 #x27 #x65)     ; \e$(G'e\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL NOT")
+    (ucs               . #x2F46)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x65E0)
+    (chinese-cns11643-1 #x27 #x66)     ; \e$(G'f\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SUN")
+    (ucs               . #x2F47)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x65E5)
+    (chinese-cns11643-1 #x27 #x67)     ; \e$(G'g\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SAY")
+    (ucs               . #x2F48)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x66F0)
+    (chinese-cns11643-1 #x27 #x68)     ; \e$(G'h\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL MOON")
+    (ucs               . #x2F49)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x6708)
+    (chinese-cns11643-1 #x27 #x69)     ; \e$(G'i\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL TREE")
+    (ucs               . #x2F4A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x6728)
+    (chinese-cns11643-1 #x27 #x6A)     ; \e$(G'j\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL LACK")
+    (ucs               . #x2F4B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x6B20)
+    (chinese-cns11643-1 #x27 #x6B)     ; \e$(G'k\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL STOP")
+    (ucs               . #x2F4C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x6B62)
+    (chinese-cns11643-1 #x27 #x6C)     ; \e$(G'l\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL DEATH")
+    (ucs               . #x2F4D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x6B79)
+    (chinese-cns11643-1 #x27 #x6D)     ; \e$(G'm\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL WEAPON")
+    (ucs               . #x2F4E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x6BB3)
+    (chinese-cns11643-1 #x27 #x6E)     ; \e$(G'n\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL DO NOT")
+    (ucs               . #x2F4F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x6BCB)
+    (chinese-cns11643-1 #x27 #x6F)     ; \e$(G'o\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL COMPARE")
+    (ucs               . #x2F50)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x6BD4)
+    (chinese-cns11643-1 #x27 #x70)     ; \e$(G'p\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL FUR")
+    (ucs               . #x2F51)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x6BDB)
+    (chinese-cns11643-1 #x27 #x71)     ; \e$(G'q\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL CLAN")
+    (ucs               . #x2F52)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x6C0F)
+    (chinese-cns11643-1 #x27 #x72)     ; \e$(G'r\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL STEAM")
+    (ucs               . #x2F53)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x6C14)
+    (chinese-cns11643-1 #x27 #x73)     ; \e$(G's\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL WATER")
+    (ucs               . #x2F54)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x6C34)
+    (chinese-cns11643-1 #x27 #x74)     ; \e$(G't\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL FIRE")
+    (ucs               . #x2F55)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x706B)
+    (chinese-cns11643-1 #x27 #x75)     ; \e$(G'u\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL CLAW")
+    (ucs               . #x2F56)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x722A)
+    (chinese-cns11643-1 #x27 #x76)     ; \e$(G'v\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL FATHER")
+    (ucs               . #x2F57)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x7236)
+    (chinese-cns11643-1 #x27 #x77)     ; \e$(G'w\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL DOUBLE X")
+    (ucs               . #x2F58)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x723B)
+    (chinese-cns11643-1 #x27 #x78)     ; \e$(G'x\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL HALF TREE TRUNK")
+    (ucs               . #x2F59)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x723F)
+    (chinese-cns11643-1 #x27 #x79)     ; \e$(G'y\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SLICE")
+    (ucs               . #x2F5A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x7247)
+    (chinese-cns11643-1 #x27 #x7A)     ; \e$(G'z\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL FANG")
+    (ucs               . #x2F5B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x7259)
+    (chinese-cns11643-1 #x27 #x7B)     ; \e$(G'{\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL COW")
+    (ucs               . #x2F5C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x725B)
+    (chinese-cns11643-1 #x27 #x7C)     ; \e$(G'|\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL DOG")
+    (ucs               . #x2F5D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x72AC)
+    (chinese-cns11643-1 #x27 #x7D)     ; \e$(G'}\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL PROFOUND")
+    (ucs               . #x2F5E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x7384)
+    (chinese-cns11643-1 #x27 #x7E)     ; \e$(G'~\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL JADE")
+    (ucs               . #x2F5F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x7389)
+    (chinese-cns11643-1 #x28 #x21)     ; \e$(G(!\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL MELON")
+    (ucs               . #x2F60)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x74DC)
+    (chinese-cns11643-1 #x28 #x22)     ; \e$(G("\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL TILE")
+    (ucs               . #x2F61)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x74E6)
+    (chinese-cns11643-1 #x28 #x23)     ; \e$(G(#\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SWEET")
+    (ucs               . #x2F62)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x7518)
+    (chinese-cns11643-1 #x28 #x24)     ; \e$(G($\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL LIFE")
+    (ucs               . #x2F63)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x751F)
+    (chinese-cns11643-1 #x28 #x25)     ; \e$(G(%\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL USE")
+    (ucs               . #x2F64)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x7528)
+    (chinese-cns11643-1 #x28 #x26)     ; \e$(G(&\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL FIELD")
+    (ucs               . #x2F65)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x7530)
+    (chinese-cns11643-1 #x28 #x27)     ; \e$(G('\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL BOLT OF CLOTH")
+    (ucs               . #x2F66)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x758B)
+    (chinese-cns11643-1 #x28 #x28)     ; \e$(G((\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SICKNESS")
+    (ucs               . #x2F67)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x7592)
+    (chinese-cns11643-1 #x28 #x29)     ; \e$(G()\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL DOTTED TENT")
+    (ucs               . #x2F68)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x7676)
+    (chinese-cns11643-1 #x28 #x2A)     ; \e$(G(*\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL WHITE")
+    (ucs               . #x2F69)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x767D)
+    (chinese-cns11643-1 #x28 #x2B)     ; \e$(G(+\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SKIN")
+    (ucs               . #x2F6A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x76AE)
+    (chinese-cns11643-1 #x28 #x2C)     ; \e$(G(,\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL DISH")
+    (ucs               . #x2F6B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x76BF)
+    (chinese-cns11643-1 #x28 #x2D)     ; \e$(G(-\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL EYE")
+    (ucs               . #x2F6C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x76EE)
+    (chinese-cns11643-1 #x28 #x2E)     ; \e$(G(.\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SPEAR")
+    (ucs               . #x2F6D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x77DB)
+    (chinese-cns11643-1 #x28 #x2F)     ; \e$(G(/\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL ARROW")
+    (ucs               . #x2F6E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x77E2)
+    (chinese-cns11643-1 #x28 #x30)     ; \e$(G(0\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL STONE")
+    (ucs               . #x2F6F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x77F3)
+    (chinese-cns11643-1 #x28 #x31)     ; \e$(G(1\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SPIRIT")
+    (ucs               . #x2F70)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x793A)
+    (chinese-cns11643-1 #x28 #x32)     ; \e$(G(2\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL TRACK")
+    (ucs               . #x2F71)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x79B8)
+    (chinese-cns11643-1 #x28 #x33)     ; \e$(G(3\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL GRAIN")
+    (ucs               . #x2F72)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x79BE)
+    (chinese-cns11643-1 #x28 #x34)     ; \e$(G(4\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL CAVE")
+    (ucs               . #x2F73)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x7A74)
+    (chinese-cns11643-1 #x28 #x35)     ; \e$(G(5\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL STAND")
+    (ucs               . #x2F74)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x7ACB)
+    (chinese-cns11643-1 #x28 #x36)     ; \e$(G(6\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL BAMBOO")
+    (ucs               . #x2F75)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x7AF9)
+    (chinese-cns11643-1 #x28 #x37)     ; \e$(G(7\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL RICE")
+    (ucs               . #x2F76)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x7C73)
+    (chinese-cns11643-1 #x28 #x38)     ; \e$(G(8\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SILK")
+    (ucs               . #x2F77)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x7CF8)
+    (chinese-cns11643-1 #x28 #x39)     ; \e$(G(9\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL JAR")
+    (ucs               . #x2F78)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x7F36)
+    (chinese-cns11643-1 #x28 #x3A)     ; \e$(G(:\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL NET")
+    (ucs               . #x2F79)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x7F51)
+    (chinese-cns11643-1 #x28 #x3B)     ; \e$(G(;\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SHEEP")
+    (ucs               . #x2F7A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x7F8A)
+    (chinese-cns11643-1 #x28 #x3C)     ; \e$(G(<\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL FEATHER")
+    (ucs               . #x2F7B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x7FBD)
+    (chinese-cns11643-1 #x28 #x3D)     ; \e$(G(=\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL OLD")
+    (ucs               . #x2F7C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x8001)
+    (chinese-cns11643-1 #x28 #x3E)     ; \e$(G(>\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL AND")
+    (ucs               . #x2F7D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x800C)
+    (chinese-cns11643-1 #x28 #x3F)     ; \e$(G(?\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL PLOW")
+    (ucs               . #x2F7E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x8012)
+    (chinese-cns11643-1 #x28 #x40)     ; \e$(G(@\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL EAR")
+    (ucs               . #x2F7F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x8033)
+    (chinese-cns11643-1 #x28 #x41)     ; \e$(G(A\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL BRUSH")
+    (ucs               . #x2F80)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x807F)
+    (chinese-cns11643-1 #x28 #x42)     ; \e$(G(B\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL MEAT")
+    (ucs               . #x2F81)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x8089)
+    (chinese-cns11643-1 #x28 #x43)     ; \e$(G(C\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL MINISTER")
+    (ucs               . #x2F82)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x81E3)
+    (chinese-cns11643-1 #x28 #x44)     ; \e$(G(D\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SELF")
+    (ucs               . #x2F83)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x81EA)
+    (chinese-cns11643-1 #x28 #x45)     ; \e$(G(E\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL ARRIVE")
+    (ucs               . #x2F84)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x81F3)
+    (chinese-cns11643-1 #x28 #x46)     ; \e$(G(F\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL MORTAR")
+    (ucs               . #x2F85)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x81FC)
+    (chinese-cns11643-1 #x28 #x47)     ; \e$(G(G\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL TONGUE")
+    (ucs               . #x2F86)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x820C)
+    (chinese-cns11643-1 #x28 #x48)     ; \e$(G(H\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL OPPOSE")
+    (ucs               . #x2F87)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x821B)
+    (chinese-cns11643-1 #x28 #x49)     ; \e$(G(I\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL BOAT")
+    (ucs               . #x2F88)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x821F)
+    (chinese-cns11643-1 #x28 #x4A)     ; \e$(G(J\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL STOPPING")
+    (ucs               . #x2F89)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x826E)
+    (chinese-cns11643-1 #x28 #x4B)     ; \e$(G(K\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL COLOR")
+    (ucs               . #x2F8A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x8272)
+    (chinese-cns11643-1 #x28 #x4C)     ; \e$(G(L\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL GRASS")
+    (ucs               . #x2F8B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x8278)
+    (chinese-cns11643-1 #x28 #x4D)     ; \e$(G(M\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL TIGER")
+    (ucs               . #x2F8C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x864D)
+    (chinese-cns11643-1 #x28 #x4E)     ; \e$(G(N\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL INSECT")
+    (ucs               . #x2F8D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x866B)
+    (chinese-cns11643-1 #x28 #x4F)     ; \e$(G(O\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL BLOOD")
+    (ucs               . #x2F8E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x8840)
+    (chinese-cns11643-1 #x28 #x50)     ; \e$(G(P\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL WALK ENCLOSURE")
+    (ucs               . #x2F8F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x884C)
+    (chinese-cns11643-1 #x28 #x51)     ; \e$(G(Q\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL CLOTHES")
+    (ucs               . #x2F90)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x8863)
+    (chinese-cns11643-1 #x28 #x52)     ; \e$(G(R\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL WEST")
+    (ucs               . #x2F91)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x897E)
+    (chinese-cns11643-1 #x28 #x53)     ; \e$(G(S\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SEE")
+    (ucs               . #x2F92)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x898B)
+    (chinese-cns11643-1 #x28 #x54)     ; \e$(G(T\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL HORN")
+    (ucs               . #x2F93)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x89D2)
+    (chinese-cns11643-1 #x28 #x55)     ; \e$(G(U\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SPEECH")
+    (ucs               . #x2F94)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x8A00)
+    (chinese-cns11643-1 #x28 #x56)     ; \e$(G(V\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL VALLEY")
+    (ucs               . #x2F95)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x8C37)
+    (chinese-cns11643-1 #x28 #x57)     ; \e$(G(W\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL BEAN")
+    (ucs               . #x2F96)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x8C46)
+    (chinese-cns11643-1 #x28 #x58)     ; \e$(G(X\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL PIG")
+    (ucs               . #x2F97)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x8C55)
+    (chinese-cns11643-1 #x28 #x59)     ; \e$(G(Y\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL BADGER")
+    (ucs               . #x2F98)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x8C78)
+    (chinese-cns11643-1 #x28 #x5A)     ; \e$(G(Z\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SHELL")
+    (ucs               . #x2F99)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x8C9D)
+    (chinese-cns11643-1 #x28 #x5B)     ; \e$(G([\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL RED")
+    (ucs               . #x2F9A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x8D64)
+    (chinese-cns11643-1 #x28 #x5C)     ; \e$(G(\\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL RUN")
+    (ucs               . #x2F9B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x8D70)
+    (chinese-cns11643-1 #x28 #x5D)     ; \e$(G(]\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL FOOT")
+    (ucs               . #x2F9C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x8DB3)
+    (chinese-cns11643-1 #x28 #x5E)     ; \e$(G(^\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL BODY")
+    (ucs               . #x2F9D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x8EAB)
+    (chinese-cns11643-1 #x28 #x5F)     ; \e$(G(_\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL CART")
+    (ucs               . #x2F9E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x8ECA)
+    (chinese-cns11643-1 #x28 #x60)     ; \e$(G(`\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL BITTER")
+    (ucs               . #x2F9F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x8F9B)
+    (chinese-cns11643-1 #x28 #x61)     ; \e$(G(a\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL MORNING")
+    (ucs               . #x2FA0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x8FB0)
+    (chinese-cns11643-1 #x28 #x62)     ; \e$(G(b\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL WALK")
+    (ucs               . #x2FA1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x8FB5)
+    (chinese-cns11643-1 #x28 #x63)     ; \e$(G(c\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL CITY")
+    (ucs               . #x2FA2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9091)
+    (chinese-cns11643-1 #x28 #x64)     ; \e$(G(d\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL WINE")
+    (ucs               . #x2FA3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9149)
+    (chinese-cns11643-1 #x28 #x65)     ; \e$(G(e\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL DISTINGUISH")
+    (ucs               . #x2FA4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x91C6)
+    (chinese-cns11643-1 #x28 #x66)     ; \e$(G(f\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL VILLAGE")
+    (ucs               . #x2FA5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x91CC)
+    (chinese-cns11643-1 #x28 #x67)     ; \e$(G(g\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL GOLD")
+    (ucs               . #x2FA6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x91D1)
+    (chinese-cns11643-1 #x28 #x68)     ; \e$(G(h\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL LONG")
+    (ucs               . #x2FA7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9577)
+    (chinese-cns11643-1 #x28 #x69)     ; \e$(G(i\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL GATE")
+    (ucs               . #x2FA8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9580)
+    (chinese-cns11643-1 #x28 #x6A)     ; \e$(G(j\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL MOUND")
+    (ucs               . #x2FA9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x961C)
+    (chinese-cns11643-1 #x28 #x6B)     ; \e$(G(k\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SLAVE")
+    (ucs               . #x2FAA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x96B6)
+    (chinese-cns11643-1 #x28 #x6C)     ; \e$(G(l\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SHORT TAILED BIRD")
+    (ucs               . #x2FAB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x96B9)
+    (chinese-cns11643-1 #x28 #x6D)     ; \e$(G(m\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL RAIN")
+    (ucs               . #x2FAC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x96E8)
+    (chinese-cns11643-1 #x28 #x6E)     ; \e$(G(n\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL BLUE")
+    (ucs               . #x2FAD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9751)
+    (chinese-cns11643-1 #x28 #x6F)     ; \e$(G(o\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL WRONG")
+    (ucs               . #x2FAE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x975E)
+    (chinese-cns11643-1 #x28 #x70)     ; \e$(G(p\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL FACE")
+    (ucs               . #x2FAF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9762)
+    (chinese-cns11643-1 #x28 #x71)     ; \e$(G(q\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL LEATHER")
+    (ucs               . #x2FB0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9769)
+    (chinese-cns11643-1 #x28 #x72)     ; \e$(G(r\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL TANNED LEATHER")
+    (ucs               . #x2FB1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x97CB)
+    (chinese-cns11643-1 #x28 #x73)     ; \e$(G(s\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL LEEK")
+    (ucs               . #x2FB2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x97ED)
+    (chinese-cns11643-1 #x28 #x74)     ; \e$(G(t\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SOUND")
+    (ucs               . #x2FB3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x97F3)
+    (chinese-cns11643-1 #x28 #x75)     ; \e$(G(u\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL LEAF")
+    (ucs               . #x2FB4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9801)
+    (chinese-cns11643-1 #x28 #x76)     ; \e$(G(v\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL WIND")
+    (ucs               . #x2FB5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x98A8)
+    (chinese-cns11643-1 #x28 #x77)     ; \e$(G(w\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL FLY")
+    (ucs               . #x2FB6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x98DB)
+    (chinese-cns11643-1 #x28 #x78)     ; \e$(G(x\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL EAT")
+    (ucs               . #x2FB7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x98DF)
+    (chinese-cns11643-1 #x28 #x79)     ; \e$(G(y\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL HEAD")
+    (ucs               . #x2FB8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9996)
+    (chinese-cns11643-1 #x28 #x7A)     ; \e$(G(z\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL FRAGRANT")
+    (ucs               . #x2FB9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9999)
+    (chinese-cns11643-1 #x28 #x7B)     ; \e$(G({\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL HORSE")
+    (ucs               . #x2FBA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x99AC)
+    (chinese-cns11643-1 #x28 #x7C)     ; \e$(G(|\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL BONE")
+    (ucs               . #x2FBB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9AA8)
+    (chinese-cns11643-1 #x28 #x7D)     ; \e$(G(}\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL TALL")
+    (ucs               . #x2FBC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9AD8)
+    (chinese-cns11643-1 #x28 #x7E)     ; \e$(G(~\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL HAIR")
+    (ucs               . #x2FBD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9ADF)
+    (chinese-cns11643-1 #x29 #x21)     ; \e$(G)!\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL FIGHT")
+    (ucs               . #x2FBE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9B25)
+    (chinese-cns11643-1 #x29 #x22)     ; \e$(G)"\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SACRIFICIAL WINE")
+    (ucs               . #x2FBF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9B2F)
+    (chinese-cns11643-1 #x29 #x23)     ; \e$(G)#\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL CAULDRON")
+    (ucs               . #x2FC0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9B32)
+    (chinese-cns11643-1 #x29 #x24)     ; \e$(G)$\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL GHOST")
+    (ucs               . #x2FC1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9B3C)
+    (chinese-cns11643-1 #x29 #x25)     ; \e$(G)%\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL FISH")
+    (ucs               . #x2FC2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9B5A)
+    (chinese-cns11643-1 #x29 #x26)     ; \e$(G)&\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL BIRD")
+    (ucs               . #x2FC3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9CE5)
+    (chinese-cns11643-1 #x29 #x27)     ; \e$(G)'\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL SALT")
+    (ucs               . #x2FC4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9E75)
+    (chinese-cns11643-1 #x29 #x28)     ; \e$(G)(\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL DEER")
+    (ucs               . #x2FC5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9E7F)
+    (chinese-cns11643-1 #x29 #x29)     ; \e$(G))\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL WHEAT")
+    (ucs               . #x2FC6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9EA5)
+    (chinese-cns11643-1 #x29 #x2A)     ; \e$(G)*\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL HEMP")
+    (ucs               . #x2FC7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9EBB)
+    (chinese-cns11643-1 #x29 #x2B)     ; \e$(G)+\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL YELLOW")
+    (ucs               . #x2FC8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9EC3)
+    (chinese-cns11643-1 #x29 #x2C)     ; \e$(G),\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL MILLET")
+    (ucs               . #x2FC9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9ECD)
+    (chinese-cns11643-1 #x29 #x2D)     ; \e$(G)-\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL BLACK")
+    (ucs               . #x2FCA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9ED1)
+    (chinese-cns11643-1 #x29 #x2E)     ; \e$(G).\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL EMBROIDERY")
+    (ucs               . #x2FCB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9EF9)
+    (chinese-cns11643-1 #x29 #x2F)     ; \e$(G)/\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL FROG")
+    (ucs               . #x2FCC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9EFD)
+    (chinese-cns11643-1 #x29 #x30)     ; \e$(G)0\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL TRIPOD")
+    (ucs               . #x2FCD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9F0E)
+    (chinese-cns11643-1 #x29 #x31)     ; \e$(G)1\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL DRUM")
+    (ucs               . #x2FCE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9F13)
+    (chinese-cns11643-1 #x29 #x32)     ; \e$(G)2\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL RAT")
+    (ucs               . #x2FCF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9F20)
+    (chinese-cns11643-1 #x29 #x33)     ; \e$(G)3\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL NOSE")
+    (ucs               . #x2FD0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9F3B)
+    (chinese-cns11643-1 #x29 #x34)     ; \e$(G)4\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL EVEN")
+    (ucs               . #x2FD1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9F4A)
+    (chinese-cns11643-1 #x29 #x35)     ; \e$(G)5\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL TOOTH")
+    (ucs               . #x2FD2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9F52)
+    (chinese-cns11643-1 #x29 #x36)     ; \e$(G)6\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL DRAGON")
+    (ucs               . #x2FD3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9F8D)
+    (chinese-cns11643-1 #x29 #x37)     ; \e$(G)7\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL TURTLE")
+    (ucs               . #x2FD4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9F9C)
+    (chinese-cns11643-1 #x29 #x38)     ; \e$(G)8\e(B
+    ))
+(define-char
+  '((name              . "KANGXI RADICAL FLUTE")
+    (ucs               . #x2FD5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x9FA0)
+    (chinese-cns11643-1 #x29 #x39)     ; \e$(G)9\e(B
+    ))
diff --git a/lisp/utf-2000/u02FF0-Ideographic-Description-Characters.el b/lisp/utf-2000/u02FF0-Ideographic-Description-Characters.el
new file mode 100644 (file)
index 0000000..194d9bc
--- /dev/null
@@ -0,0 +1,84 @@
+(define-char
+  '((name              . "IDEOGRAPHIC DESCRIPTION CHARACTER LEFT TO RIGHT")
+    (ucs               . #x2FF0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "IDEOGRAPHIC DESCRIPTION CHARACTER ABOVE TO BELOW")
+    (ucs               . #x2FF1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "IDEOGRAPHIC DESCRIPTION CHARACTER LEFT TO MIDDLE AND RIGHT")
+    (ucs               . #x2FF2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "IDEOGRAPHIC DESCRIPTION CHARACTER ABOVE TO MIDDLE AND BELOW")
+    (ucs               . #x2FF3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC DESCRIPTION CHARACTER FULL SURROUND")
+    (ucs               . #x2FF4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM ABOVE")
+    (ucs               . #x2FF5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM BELOW")
+    (ucs               . #x2FF6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM LEFT")
+    (ucs               . #x2FF7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM UPPER LEFT")
+    (ucs               . #x2FF8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM UPPER RIGHT")
+    (ucs               . #x2FF9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM LOWER LEFT")
+    (ucs               . #x2FFA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC DESCRIPTION CHARACTER OVERLAID")
+    (ucs               . #x2FFB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u03000-CJK-Symbols-and-Punctuation.el b/lisp/utf-2000/u03000-CJK-Symbols-and-Punctuation.el
new file mode 100644 (file)
index 0000000..0d53285
--- /dev/null
@@ -0,0 +1,555 @@
+(define-char
+  '((name              . "IDEOGRAPHIC SPACE")
+    (ucs               . #x3000)
+    (general-category  separator space) ; Normative Category
+    (bidi-category     . "WS")
+    (mirrored          . nil)
+    (->decomposition   wide #x0020)
+    (japanese-jisx0208-1978    #x21 #x21)      ; \e$(@!!\e(B
+    (chinese-gb2312            #x21 #x21)      ; \e$(A!!\e(B
+    (japanese-jisx0208         #x21 #x21)      ; \e$(B!!\e(B
+    (korean-ksc5601            #x21 #x21)      ; \e$(C!!\e(B
+    (chinese-cns11643-1                #x21 #x21)      ; \e$(G!!\e(B
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC COMMA")
+    (ucs               . #x3001)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x22)      ; \e$(@!"\e(B
+    (chinese-gb2312            #x21 #x22)      ; \e$(A!"\e(B
+    (japanese-jisx0208         #x21 #x22)      ; \e$(B!"\e(B
+    (korean-ksc5601            #x21 #x22)      ; \e$(C!"\e(B
+    (chinese-cns11643-1                #x21 #x23)      ; \e$(G!#\e(B
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC FULL STOP")
+    (ucs               . #x3002)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x23)      ; \e$(@!#\e(B
+    (chinese-gb2312            #x21 #x23)      ; \e$(A!#\e(B
+    (japanese-jisx0208         #x21 #x23)      ; \e$(B!#\e(B
+    (korean-ksc5601            #x21 #x23)      ; \e$(C!#\e(B
+    (chinese-cns11643-1                #x21 #x24)      ; \e$(G!$\e(B
+    ))
+(define-char
+  '((name              . "DITTO MARK")
+    (ucs               . #x3003)
+    (general-category  punctuation other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x37)      ; \e$(@!7\e(B
+    (chinese-gb2312            #x21 #x28)      ; \e$(A!(\e(B
+    (japanese-jisx0208         #x21 #x37)      ; \e$(B!7\e(B
+    (korean-ksc5601            #x21 #x28)      ; \e$(C!(\e(B
+    (chinese-cns11643-1                #x21 #x71)      ; \e$(G!q\e(B
+    ))
+(define-char
+  '((name              . "JAPANESE INDUSTRIAL STANDARD SYMBOL")
+    (ucs               . #x3004)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC ITERATION MARK")
+    (ucs               . #x3005)
+    (general-category  letter modifier) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x39)      ; \e$(@!9\e(B
+    (chinese-gb2312            #x21 #x29)      ; \e$(A!)\e(B
+    (japanese-jisx0208         #x21 #x39)      ; \e$(B!9\e(B
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC CLOSING MARK")
+    (ucs               . #x3006)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x3A)      ; \e$(@!:\e(B
+    (japanese-jisx0208         #x21 #x3A)      ; \e$(B!:\e(B
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC NUMBER ZERO")
+    (ucs               . #x3007)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 0)
+    (japanese-jisx0208-1978    #x21 #x3B)      ; \e$(@!;\e(B
+    (japanese-jisx0208         #x21 #x3B)      ; \e$(B!;\e(B
+    ))
+(define-char
+  '((name              . "LEFT ANGLE BRACKET")
+    (ucs               . #x3008)
+    (general-category  punctuation open) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208-1978    #x21 #x52)      ; \e$(@!R\e(B
+    (chinese-gb2312            #x21 #x34)      ; \e$(A!4\e(B
+    (japanese-jisx0208         #x21 #x52)      ; \e$(B!R\e(B
+    (korean-ksc5601            #x21 #x34)      ; \e$(C!4\e(B
+    (chinese-cns11643-1                #x21 #x52)      ; \e$(G!R\e(B
+    ))
+(define-char
+  '((name              . "RIGHT ANGLE BRACKET")
+    (ucs               . #x3009)
+    (general-category  punctuation close) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208-1978    #x21 #x53)      ; \e$(@!S\e(B
+    (chinese-gb2312            #x21 #x35)      ; \e$(A!5\e(B
+    (japanese-jisx0208         #x21 #x53)      ; \e$(B!S\e(B
+    (korean-ksc5601            #x21 #x35)      ; \e$(C!5\e(B
+    (chinese-cns11643-1                #x21 #x53)      ; \e$(G!S\e(B
+    ))
+(define-char
+  '((name              . "LEFT DOUBLE ANGLE BRACKET")
+    (ucs               . #x300A)
+    (general-category  punctuation open) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208-1978    #x21 #x54)      ; \e$(@!T\e(B
+    (chinese-gb2312            #x21 #x36)      ; \e$(A!6\e(B
+    (japanese-jisx0208         #x21 #x54)      ; \e$(B!T\e(B
+    (korean-ksc5601            #x21 #x36)      ; \e$(C!6\e(B
+    (chinese-cns11643-1                #x21 #x4E)      ; \e$(G!N\e(B
+    ))
+(define-char
+  '((name              . "RIGHT DOUBLE ANGLE BRACKET")
+    (ucs               . #x300B)
+    (general-category  punctuation close) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208-1978    #x21 #x55)      ; \e$(@!U\e(B
+    (chinese-gb2312            #x21 #x37)      ; \e$(A!7\e(B
+    (japanese-jisx0208         #x21 #x55)      ; \e$(B!U\e(B
+    (korean-ksc5601            #x21 #x37)      ; \e$(C!7\e(B
+    (chinese-cns11643-1                #x21 #x4F)      ; \e$(G!O\e(B
+    ))
+(define-char
+  '((name              . "LEFT CORNER BRACKET")
+    (ucs               . #x300C)
+    (general-category  punctuation open) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208-1978    #x21 #x56)      ; \e$(@!V\e(B
+    (chinese-gb2312            #x21 #x38)      ; \e$(A!8\e(B
+    (japanese-jisx0208         #x21 #x56)      ; \e$(B!V\e(B
+    (korean-ksc5601            #x21 #x38)      ; \e$(C!8\e(B
+    (chinese-cns11643-1                #x21 #x56)      ; \e$(G!V\e(B
+    ))
+(define-char
+  '((name              . "RIGHT CORNER BRACKET")
+    (ucs               . #x300D)
+    (general-category  punctuation close) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208-1978    #x21 #x57)      ; \e$(@!W\e(B
+    (chinese-gb2312            #x21 #x39)      ; \e$(A!9\e(B
+    (japanese-jisx0208         #x21 #x57)      ; \e$(B!W\e(B
+    (korean-ksc5601            #x21 #x39)      ; \e$(C!9\e(B
+    (chinese-cns11643-1                #x21 #x57)      ; \e$(G!W\e(B
+    ))
+(define-char
+  '((name              . "LEFT WHITE CORNER BRACKET")
+    (ucs               . #x300E)
+    (general-category  punctuation open) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208-1978    #x21 #x58)      ; \e$(@!X\e(B
+    (chinese-gb2312            #x21 #x3A)      ; \e$(A!:\e(B
+    (japanese-jisx0208         #x21 #x58)      ; \e$(B!X\e(B
+    (korean-ksc5601            #x21 #x3A)      ; \e$(C!:\e(B
+    (chinese-cns11643-1                #x21 #x5A)      ; \e$(G!Z\e(B
+    ))
+(define-char
+  '((name              . "RIGHT WHITE CORNER BRACKET")
+    (ucs               . #x300F)
+    (general-category  punctuation close) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208-1978    #x21 #x59)      ; \e$(@!Y\e(B
+    (chinese-gb2312            #x21 #x3B)      ; \e$(A!;\e(B
+    (japanese-jisx0208         #x21 #x59)      ; \e$(B!Y\e(B
+    (korean-ksc5601            #x21 #x3B)      ; \e$(C!;\e(B
+    (chinese-cns11643-1                #x21 #x5B)      ; \e$(G![\e(B
+    ))
+(define-char
+  '((name              . "LEFT BLACK LENTICULAR BRACKET")
+    (ucs               . #x3010)
+    (general-category  punctuation open) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208-1978    #x21 #x5A)      ; \e$(@!Z\e(B
+    (chinese-gb2312            #x21 #x3E)      ; \e$(A!>\e(B
+    (japanese-jisx0208         #x21 #x5A)      ; \e$(B!Z\e(B
+    (korean-ksc5601            #x21 #x3C)      ; \e$(C!<\e(B
+    (chinese-cns11643-1                #x21 #x4A)      ; \e$(G!J\e(B
+    ))
+(define-char
+  '((name              . "RIGHT BLACK LENTICULAR BRACKET")
+    (ucs               . #x3011)
+    (general-category  punctuation close) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208-1978    #x21 #x5B)      ; \e$(@![\e(B
+    (chinese-gb2312            #x21 #x3F)      ; \e$(A!?\e(B
+    (japanese-jisx0208         #x21 #x5B)      ; \e$(B![\e(B
+    (korean-ksc5601            #x21 #x3D)      ; \e$(C!=\e(B
+    (chinese-cns11643-1                #x21 #x4B)      ; \e$(G!K\e(B
+    ))
+(define-char
+  '((name              . "POSTAL MARK")
+    (ucs               . #x3012)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x22 #x29)      ; \e$(@")\e(B
+    (japanese-jisx0208         #x22 #x29)      ; \e$(B")\e(B
+    (chinese-cns11643-1                #x22 #x65)      ; \e$(G"e\e(B
+    ))
+(define-char
+  '((name              . "GETA MARK")
+    (ucs               . #x3013)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x22 #x2E)      ; \e$(@".\e(B
+    (chinese-gb2312            #x21 #x7E)      ; \e$(A!~\e(B
+    (japanese-jisx0208         #x22 #x2E)      ; \e$(B".\e(B
+    (korean-ksc5601            #x21 #x6B)      ; \e$(C!k\e(B
+    ))
+(define-char
+  '((name              . "LEFT TORTOISE SHELL BRACKET")
+    (ucs               . #x3014)
+    (general-category  punctuation open) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208-1978    #x21 #x4C)      ; \e$(@!L\e(B
+    (chinese-gb2312            #x21 #x32)      ; \e$(A!2\e(B
+    (japanese-jisx0208         #x21 #x4C)      ; \e$(B!L\e(B
+    (korean-ksc5601            #x21 #x32)      ; \e$(C!2\e(B
+    (chinese-cns11643-1                #x21 #x46)      ; \e$(G!F\e(B
+    ))
+(define-char
+  '((name              . "RIGHT TORTOISE SHELL BRACKET")
+    (ucs               . #x3015)
+    (general-category  punctuation close) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (japanese-jisx0208-1978    #x21 #x4D)      ; \e$(@!M\e(B
+    (chinese-gb2312            #x21 #x33)      ; \e$(A!3\e(B
+    (japanese-jisx0208         #x21 #x4D)      ; \e$(B!M\e(B
+    (korean-ksc5601            #x21 #x33)      ; \e$(C!3\e(B
+    (chinese-cns11643-1                #x21 #x47)      ; \e$(G!G\e(B
+    ))
+(define-char
+  '((name              . "LEFT WHITE LENTICULAR BRACKET")
+    (ucs               . #x3016)
+    (general-category  punctuation open) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (chinese-gb2312    #x21 #x3C)      ; \e$(A!<\e(B
+    ))
+(define-char
+  '((name              . "RIGHT WHITE LENTICULAR BRACKET")
+    (ucs               . #x3017)
+    (general-category  punctuation close) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    (chinese-gb2312    #x21 #x3D)      ; \e$(A!=\e(B
+    ))
+(define-char
+  '((name              . "LEFT WHITE TORTOISE SHELL BRACKET")
+    (ucs               . #x3018)
+    (general-category  punctuation open) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "RIGHT WHITE TORTOISE SHELL BRACKET")
+    (ucs               . #x3019)
+    (general-category  punctuation close) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "LEFT WHITE SQUARE BRACKET")
+    (ucs               . #x301A)
+    (general-category  punctuation open) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "RIGHT WHITE SQUARE BRACKET")
+    (ucs               . #x301B)
+    (general-category  punctuation close) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . t)
+    ))
+(define-char
+  '((name              . "WAVE DASH")
+    (ucs               . #x301C)
+    (general-category  punctuation dash) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x41)      ; \e$(@!A\e(B
+    (japanese-jisx0208         #x21 #x41)      ; \e$(B!A\e(B
+    (chinese-cns11643-1                #x22 #x44)      ; \e$(G"D\e(B
+    ))
+(define-char
+  '((name              . "REVERSED DOUBLE PRIME QUOTATION MARK")
+    (ucs               . #x301D)
+    (general-category  punctuation open) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x21 #x68)     ; \e$(G!h\e(B
+    ))
+(define-char
+  '((name              . "DOUBLE PRIME QUOTATION MARK")
+    (ucs               . #x301E)
+    (general-category  punctuation close) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (chinese-cns11643-1 #x21 #x69)     ; \e$(G!i\e(B
+    ))
+(define-char
+  '((name              . "LOW DOUBLE PRIME QUOTATION MARK")
+    (ucs               . #x301F)
+    (general-category  punctuation close) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "POSTAL MARK FACE")
+    (ucs               . #x3020)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGZHOU NUMERAL ONE")
+    (ucs               . #x3021)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 1)
+    (chinese-cns11643-1 #x24 #x35)     ; \e$(G$5\e(B
+    ))
+(define-char
+  '((name              . "HANGZHOU NUMERAL TWO")
+    (ucs               . #x3022)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 2)
+    (chinese-cns11643-1 #x24 #x36)     ; \e$(G$6\e(B
+    ))
+(define-char
+  '((name              . "HANGZHOU NUMERAL THREE")
+    (ucs               . #x3023)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 3)
+    (chinese-cns11643-1 #x24 #x37)     ; \e$(G$7\e(B
+    ))
+(define-char
+  '((name              . "HANGZHOU NUMERAL FOUR")
+    (ucs               . #x3024)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 4)
+    (chinese-cns11643-1 #x24 #x38)     ; \e$(G$8\e(B
+    ))
+(define-char
+  '((name              . "HANGZHOU NUMERAL FIVE")
+    (ucs               . #x3025)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 5)
+    (chinese-cns11643-1 #x24 #x39)     ; \e$(G$9\e(B
+    ))
+(define-char
+  '((name              . "HANGZHOU NUMERAL SIX")
+    (ucs               . #x3026)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 6)
+    (chinese-cns11643-1 #x24 #x3A)     ; \e$(G$:\e(B
+    ))
+(define-char
+  '((name              . "HANGZHOU NUMERAL SEVEN")
+    (ucs               . #x3027)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 7)
+    (chinese-cns11643-1 #x24 #x3B)     ; \e$(G$;\e(B
+    ))
+(define-char
+  '((name              . "HANGZHOU NUMERAL EIGHT")
+    (ucs               . #x3028)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 8)
+    (chinese-cns11643-1 #x24 #x3C)     ; \e$(G$<\e(B
+    ))
+(define-char
+  '((name              . "HANGZHOU NUMERAL NINE")
+    (ucs               . #x3029)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 9)
+    (chinese-cns11643-1 #x24 #x3D)     ; \e$(G$=\e(B
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC LEVEL TONE MARK")
+    (ucs               . #x302A)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC RISING TONE MARK")
+    (ucs               . #x302B)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC DEPARTING TONE MARK")
+    (ucs               . #x302C)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC ENTERING TONE MARK")
+    (ucs               . #x302D)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL SINGLE DOT TONE MARK")
+    (ucs               . #x302E)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGUL DOUBLE DOT TONE MARK")
+    (ucs               . #x302F)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "WAVY DASH")
+    (ucs               . #x3030)
+    (general-category  punctuation dash) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "VERTICAL KANA REPEAT MARK")
+    (ucs               . #x3031)
+    (general-category  letter modifier) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "VERTICAL KANA REPEAT WITH VOICED SOUND MARK")
+    (ucs               . #x3032)
+    (general-category  letter modifier) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "VERTICAL KANA REPEAT MARK UPPER HALF")
+    (ucs               . #x3033)
+    (general-category  letter modifier) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "VERTICAL KANA REPEAT WITH VOICED SOUND MARK UPPER HALF")
+    (ucs               . #x3034)
+    (general-category  letter modifier) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "VERTICAL KANA REPEAT MARK LOWER HALF")
+    (ucs               . #x3035)
+    (general-category  letter modifier) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "CIRCLED POSTAL MARK")
+    (ucs               . #x3036)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x3012)
+    ))
+(define-char
+  '((name . "IDEOGRAPHIC TELEGRAPH LINE FEED SEPARATOR SYMBOL")
+    (ucs               . #x3037)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "HANGZHOU NUMERAL TEN")
+    (ucs               . #x3038)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 10)
+    (->decomposition   compat #x5341)
+    ))
+(define-char
+  '((name              . "HANGZHOU NUMERAL TWENTY")
+    (ucs               . #x3039)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 20)
+    (->decomposition   compat #x5344)
+    ))
+(define-char
+  '((name              . "HANGZHOU NUMERAL THIRTY")
+    (ucs               . #x303A)
+    (general-category  number letter) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 30)
+    (->decomposition   compat #x5345)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC VARIATION INDICATOR")
+    (ucs               . #x303E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC HALF FILL SPACE")
+    (ucs               . #x303F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u03040-Hiragana.el b/lisp/utf-2000/u03040-Hiragana.el
new file mode 100644 (file)
index 0000000..b50dc67
--- /dev/null
@@ -0,0 +1,999 @@
+(define-char
+  '((name              . "HIRAGANA LETTER SMALL A")
+    (ucs               . #x3041)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x21)      ; \e$(@$!\e(B
+    (chinese-gb2312            #x24 #x21)      ; \e$(A$!\e(B
+    (japanese-jisx0208         #x24 #x21)      ; \e$(B$!\e(B
+    (korean-ksc5601            #x2A #x21)      ; \e$(C*!\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER A")
+    (ucs               . #x3042)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x22)      ; \e$(@$"\e(B
+    (chinese-gb2312            #x24 #x22)      ; \e$(A$"\e(B
+    (japanese-jisx0208         #x24 #x22)      ; \e$(B$"\e(B
+    (korean-ksc5601            #x2A #x22)      ; \e$(C*"\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER SMALL I")
+    (ucs               . #x3043)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x23)      ; \e$(@$#\e(B
+    (chinese-gb2312            #x24 #x23)      ; \e$(A$#\e(B
+    (japanese-jisx0208         #x24 #x23)      ; \e$(B$#\e(B
+    (korean-ksc5601            #x2A #x23)      ; \e$(C*#\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER I")
+    (ucs               . #x3044)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x24)      ; \e$(@$$\e(B
+    (chinese-gb2312            #x24 #x24)      ; \e$(A$$\e(B
+    (japanese-jisx0208         #x24 #x24)      ; \e$(B$$\e(B
+    (korean-ksc5601            #x2A #x24)      ; \e$(C*$\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER SMALL U")
+    (ucs               . #x3045)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x25)      ; \e$(@$%\e(B
+    (chinese-gb2312            #x24 #x25)      ; \e$(A$%\e(B
+    (japanese-jisx0208         #x24 #x25)      ; \e$(B$%\e(B
+    (korean-ksc5601            #x2A #x25)      ; \e$(C*%\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER U")
+    (ucs               . #x3046)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x26)      ; \e$(@$&\e(B
+    (chinese-gb2312            #x24 #x26)      ; \e$(A$&\e(B
+    (japanese-jisx0208         #x24 #x26)      ; \e$(B$&\e(B
+    (korean-ksc5601            #x2A #x26)      ; \e$(C*&\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER SMALL E")
+    (ucs               . #x3047)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x27)      ; \e$(@$'\e(B
+    (chinese-gb2312            #x24 #x27)      ; \e$(A$'\e(B
+    (japanese-jisx0208         #x24 #x27)      ; \e$(B$'\e(B
+    (korean-ksc5601            #x2A #x27)      ; \e$(C*'\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER E")
+    (ucs               . #x3048)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x28)      ; \e$(@$(\e(B
+    (chinese-gb2312            #x24 #x28)      ; \e$(A$(\e(B
+    (japanese-jisx0208         #x24 #x28)      ; \e$(B$(\e(B
+    (korean-ksc5601            #x2A #x28)      ; \e$(C*(\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER SMALL O")
+    (ucs               . #x3049)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x29)      ; \e$(@$)\e(B
+    (chinese-gb2312            #x24 #x29)      ; \e$(A$)\e(B
+    (japanese-jisx0208         #x24 #x29)      ; \e$(B$)\e(B
+    (korean-ksc5601            #x2A #x29)      ; \e$(C*)\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER O")
+    (ucs               . #x304A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x2A)      ; \e$(@$*\e(B
+    (chinese-gb2312            #x24 #x2A)      ; \e$(A$*\e(B
+    (japanese-jisx0208         #x24 #x2A)      ; \e$(B$*\e(B
+    (korean-ksc5601            #x2A #x2A)      ; \e$(C**\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER KA")
+    (ucs               . #x304B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x2B)      ; \e$(@$+\e(B
+    (chinese-gb2312            #x24 #x2B)      ; \e$(A$+\e(B
+    (japanese-jisx0208         #x24 #x2B)      ; \e$(B$+\e(B
+    (korean-ksc5601            #x2A #x2B)      ; \e$(C*+\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER GA")
+    (ucs               . #x304C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x304B #x3099)
+    (japanese-jisx0208-1978    #x24 #x2C)      ; \e$(@$,\e(B
+    (chinese-gb2312            #x24 #x2C)      ; \e$(A$,\e(B
+    (japanese-jisx0208         #x24 #x2C)      ; \e$(B$,\e(B
+    (korean-ksc5601            #x2A #x2C)      ; \e$(C*,\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER KI")
+    (ucs               . #x304D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x2D)      ; \e$(@$-\e(B
+    (chinese-gb2312            #x24 #x2D)      ; \e$(A$-\e(B
+    (japanese-jisx0208         #x24 #x2D)      ; \e$(B$-\e(B
+    (korean-ksc5601            #x2A #x2D)      ; \e$(C*-\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER GI")
+    (ucs               . #x304E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x304D #x3099)
+    (japanese-jisx0208-1978    #x24 #x2E)      ; \e$(@$.\e(B
+    (chinese-gb2312            #x24 #x2E)      ; \e$(A$.\e(B
+    (japanese-jisx0208         #x24 #x2E)      ; \e$(B$.\e(B
+    (korean-ksc5601            #x2A #x2E)      ; \e$(C*.\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER KU")
+    (ucs               . #x304F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x2F)      ; \e$(@$/\e(B
+    (chinese-gb2312            #x24 #x2F)      ; \e$(A$/\e(B
+    (japanese-jisx0208         #x24 #x2F)      ; \e$(B$/\e(B
+    (korean-ksc5601            #x2A #x2F)      ; \e$(C*/\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER GU")
+    (ucs               . #x3050)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x304F #x3099)
+    (japanese-jisx0208-1978    #x24 #x30)      ; \e$(@$0\e(B
+    (chinese-gb2312            #x24 #x30)      ; \e$(A$0\e(B
+    (japanese-jisx0208         #x24 #x30)      ; \e$(B$0\e(B
+    (korean-ksc5601            #x2A #x30)      ; \e$(C*0\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER KE")
+    (ucs               . #x3051)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x31)      ; \e$(@$1\e(B
+    (chinese-gb2312            #x24 #x31)      ; \e$(A$1\e(B
+    (japanese-jisx0208         #x24 #x31)      ; \e$(B$1\e(B
+    (korean-ksc5601            #x2A #x31)      ; \e$(C*1\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER GE")
+    (ucs               . #x3052)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x3051 #x3099)
+    (japanese-jisx0208-1978    #x24 #x32)      ; \e$(@$2\e(B
+    (chinese-gb2312            #x24 #x32)      ; \e$(A$2\e(B
+    (japanese-jisx0208         #x24 #x32)      ; \e$(B$2\e(B
+    (korean-ksc5601            #x2A #x32)      ; \e$(C*2\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER KO")
+    (ucs               . #x3053)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x33)      ; \e$(@$3\e(B
+    (chinese-gb2312            #x24 #x33)      ; \e$(A$3\e(B
+    (japanese-jisx0208         #x24 #x33)      ; \e$(B$3\e(B
+    (korean-ksc5601            #x2A #x33)      ; \e$(C*3\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER GO")
+    (ucs               . #x3054)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x3053 #x3099)
+    (japanese-jisx0208-1978    #x24 #x34)      ; \e$(@$4\e(B
+    (chinese-gb2312            #x24 #x34)      ; \e$(A$4\e(B
+    (japanese-jisx0208         #x24 #x34)      ; \e$(B$4\e(B
+    (korean-ksc5601            #x2A #x34)      ; \e$(C*4\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER SA")
+    (ucs               . #x3055)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x35)      ; \e$(@$5\e(B
+    (chinese-gb2312            #x24 #x35)      ; \e$(A$5\e(B
+    (japanese-jisx0208         #x24 #x35)      ; \e$(B$5\e(B
+    (korean-ksc5601            #x2A #x35)      ; \e$(C*5\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER ZA")
+    (ucs               . #x3056)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x3055 #x3099)
+    (japanese-jisx0208-1978    #x24 #x36)      ; \e$(@$6\e(B
+    (chinese-gb2312            #x24 #x36)      ; \e$(A$6\e(B
+    (japanese-jisx0208         #x24 #x36)      ; \e$(B$6\e(B
+    (korean-ksc5601            #x2A #x36)      ; \e$(C*6\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER SI")
+    (ucs               . #x3057)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x37)      ; \e$(@$7\e(B
+    (chinese-gb2312            #x24 #x37)      ; \e$(A$7\e(B
+    (japanese-jisx0208         #x24 #x37)      ; \e$(B$7\e(B
+    (korean-ksc5601            #x2A #x37)      ; \e$(C*7\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER ZI")
+    (ucs               . #x3058)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x3057 #x3099)
+    (japanese-jisx0208-1978    #x24 #x38)      ; \e$(@$8\e(B
+    (chinese-gb2312            #x24 #x38)      ; \e$(A$8\e(B
+    (japanese-jisx0208         #x24 #x38)      ; \e$(B$8\e(B
+    (korean-ksc5601            #x2A #x38)      ; \e$(C*8\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER SU")
+    (ucs               . #x3059)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x39)      ; \e$(@$9\e(B
+    (chinese-gb2312            #x24 #x39)      ; \e$(A$9\e(B
+    (japanese-jisx0208         #x24 #x39)      ; \e$(B$9\e(B
+    (korean-ksc5601            #x2A #x39)      ; \e$(C*9\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER ZU")
+    (ucs               . #x305A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x3059 #x3099)
+    (japanese-jisx0208-1978    #x24 #x3A)      ; \e$(@$:\e(B
+    (chinese-gb2312            #x24 #x3A)      ; \e$(A$:\e(B
+    (japanese-jisx0208         #x24 #x3A)      ; \e$(B$:\e(B
+    (korean-ksc5601            #x2A #x3A)      ; \e$(C*:\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER SE")
+    (ucs               . #x305B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x3B)      ; \e$(@$;\e(B
+    (chinese-gb2312            #x24 #x3B)      ; \e$(A$;\e(B
+    (japanese-jisx0208         #x24 #x3B)      ; \e$(B$;\e(B
+    (korean-ksc5601            #x2A #x3B)      ; \e$(C*;\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER ZE")
+    (ucs               . #x305C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x305B #x3099)
+    (japanese-jisx0208-1978    #x24 #x3C)      ; \e$(@$<\e(B
+    (chinese-gb2312            #x24 #x3C)      ; \e$(A$<\e(B
+    (japanese-jisx0208         #x24 #x3C)      ; \e$(B$<\e(B
+    (korean-ksc5601            #x2A #x3C)      ; \e$(C*<\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER SO")
+    (ucs               . #x305D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x3D)      ; \e$(@$=\e(B
+    (chinese-gb2312            #x24 #x3D)      ; \e$(A$=\e(B
+    (japanese-jisx0208         #x24 #x3D)      ; \e$(B$=\e(B
+    (korean-ksc5601            #x2A #x3D)      ; \e$(C*=\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER ZO")
+    (ucs               . #x305E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x305D #x3099)
+    (japanese-jisx0208-1978    #x24 #x3E)      ; \e$(@$>\e(B
+    (chinese-gb2312            #x24 #x3E)      ; \e$(A$>\e(B
+    (japanese-jisx0208         #x24 #x3E)      ; \e$(B$>\e(B
+    (korean-ksc5601            #x2A #x3E)      ; \e$(C*>\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER TA")
+    (ucs               . #x305F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x3F)      ; \e$(@$?\e(B
+    (chinese-gb2312            #x24 #x3F)      ; \e$(A$?\e(B
+    (japanese-jisx0208         #x24 #x3F)      ; \e$(B$?\e(B
+    (korean-ksc5601            #x2A #x3F)      ; \e$(C*?\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER DA")
+    (ucs               . #x3060)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x305F #x3099)
+    (japanese-jisx0208-1978    #x24 #x40)      ; \e$(@$@\e(B
+    (chinese-gb2312            #x24 #x40)      ; \e$(A$@\e(B
+    (japanese-jisx0208         #x24 #x40)      ; \e$(B$@\e(B
+    (korean-ksc5601            #x2A #x40)      ; \e$(C*@\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER TI")
+    (ucs               . #x3061)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x41)      ; \e$(@$A\e(B
+    (chinese-gb2312            #x24 #x41)      ; \e$(A$A\e(B
+    (japanese-jisx0208         #x24 #x41)      ; \e$(B$A\e(B
+    (korean-ksc5601            #x2A #x41)      ; \e$(C*A\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER DI")
+    (ucs               . #x3062)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x3061 #x3099)
+    (japanese-jisx0208-1978    #x24 #x42)      ; \e$(@$B\e(B
+    (chinese-gb2312            #x24 #x42)      ; \e$(A$B\e(B
+    (japanese-jisx0208         #x24 #x42)      ; \e$(B$B\e(B
+    (korean-ksc5601            #x2A #x42)      ; \e$(C*B\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER SMALL TU")
+    (ucs               . #x3063)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x43)      ; \e$(@$C\e(B
+    (chinese-gb2312            #x24 #x43)      ; \e$(A$C\e(B
+    (japanese-jisx0208         #x24 #x43)      ; \e$(B$C\e(B
+    (korean-ksc5601            #x2A #x43)      ; \e$(C*C\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER TU")
+    (ucs               . #x3064)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x44)      ; \e$(@$D\e(B
+    (chinese-gb2312            #x24 #x44)      ; \e$(A$D\e(B
+    (japanese-jisx0208         #x24 #x44)      ; \e$(B$D\e(B
+    (korean-ksc5601            #x2A #x44)      ; \e$(C*D\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER DU")
+    (ucs               . #x3065)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x3064 #x3099)
+    (japanese-jisx0208-1978    #x24 #x45)      ; \e$(@$E\e(B
+    (chinese-gb2312            #x24 #x45)      ; \e$(A$E\e(B
+    (japanese-jisx0208         #x24 #x45)      ; \e$(B$E\e(B
+    (korean-ksc5601            #x2A #x45)      ; \e$(C*E\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER TE")
+    (ucs               . #x3066)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x46)      ; \e$(@$F\e(B
+    (chinese-gb2312            #x24 #x46)      ; \e$(A$F\e(B
+    (japanese-jisx0208         #x24 #x46)      ; \e$(B$F\e(B
+    (korean-ksc5601            #x2A #x46)      ; \e$(C*F\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER DE")
+    (ucs               . #x3067)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x3066 #x3099)
+    (japanese-jisx0208-1978    #x24 #x47)      ; \e$(@$G\e(B
+    (chinese-gb2312            #x24 #x47)      ; \e$(A$G\e(B
+    (japanese-jisx0208         #x24 #x47)      ; \e$(B$G\e(B
+    (korean-ksc5601            #x2A #x47)      ; \e$(C*G\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER TO")
+    (ucs               . #x3068)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x48)      ; \e$(@$H\e(B
+    (chinese-gb2312            #x24 #x48)      ; \e$(A$H\e(B
+    (japanese-jisx0208         #x24 #x48)      ; \e$(B$H\e(B
+    (korean-ksc5601            #x2A #x48)      ; \e$(C*H\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER DO")
+    (ucs               . #x3069)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x3068 #x3099)
+    (japanese-jisx0208-1978    #x24 #x49)      ; \e$(@$I\e(B
+    (chinese-gb2312            #x24 #x49)      ; \e$(A$I\e(B
+    (japanese-jisx0208         #x24 #x49)      ; \e$(B$I\e(B
+    (korean-ksc5601            #x2A #x49)      ; \e$(C*I\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER NA")
+    (ucs               . #x306A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x4A)      ; \e$(@$J\e(B
+    (chinese-gb2312            #x24 #x4A)      ; \e$(A$J\e(B
+    (japanese-jisx0208         #x24 #x4A)      ; \e$(B$J\e(B
+    (korean-ksc5601            #x2A #x4A)      ; \e$(C*J\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER NI")
+    (ucs               . #x306B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x4B)      ; \e$(@$K\e(B
+    (chinese-gb2312            #x24 #x4B)      ; \e$(A$K\e(B
+    (japanese-jisx0208         #x24 #x4B)      ; \e$(B$K\e(B
+    (korean-ksc5601            #x2A #x4B)      ; \e$(C*K\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER NU")
+    (ucs               . #x306C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x4C)      ; \e$(@$L\e(B
+    (chinese-gb2312            #x24 #x4C)      ; \e$(A$L\e(B
+    (japanese-jisx0208         #x24 #x4C)      ; \e$(B$L\e(B
+    (korean-ksc5601            #x2A #x4C)      ; \e$(C*L\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER NE")
+    (ucs               . #x306D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x4D)      ; \e$(@$M\e(B
+    (chinese-gb2312            #x24 #x4D)      ; \e$(A$M\e(B
+    (japanese-jisx0208         #x24 #x4D)      ; \e$(B$M\e(B
+    (korean-ksc5601            #x2A #x4D)      ; \e$(C*M\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER NO")
+    (ucs               . #x306E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x4E)      ; \e$(@$N\e(B
+    (chinese-gb2312            #x24 #x4E)      ; \e$(A$N\e(B
+    (japanese-jisx0208         #x24 #x4E)      ; \e$(B$N\e(B
+    (korean-ksc5601            #x2A #x4E)      ; \e$(C*N\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER HA")
+    (ucs               . #x306F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x4F)      ; \e$(@$O\e(B
+    (chinese-gb2312            #x24 #x4F)      ; \e$(A$O\e(B
+    (japanese-jisx0208         #x24 #x4F)      ; \e$(B$O\e(B
+    (korean-ksc5601            #x2A #x4F)      ; \e$(C*O\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER BA")
+    (ucs               . #x3070)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x306F #x3099)
+    (japanese-jisx0208-1978    #x24 #x50)      ; \e$(@$P\e(B
+    (chinese-gb2312            #x24 #x50)      ; \e$(A$P\e(B
+    (japanese-jisx0208         #x24 #x50)      ; \e$(B$P\e(B
+    (korean-ksc5601            #x2A #x50)      ; \e$(C*P\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER PA")
+    (ucs               . #x3071)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x306F #x309A)
+    (japanese-jisx0208-1978    #x24 #x51)      ; \e$(@$Q\e(B
+    (chinese-gb2312            #x24 #x51)      ; \e$(A$Q\e(B
+    (japanese-jisx0208         #x24 #x51)      ; \e$(B$Q\e(B
+    (korean-ksc5601            #x2A #x51)      ; \e$(C*Q\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER HI")
+    (ucs               . #x3072)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x52)      ; \e$(@$R\e(B
+    (chinese-gb2312            #x24 #x52)      ; \e$(A$R\e(B
+    (japanese-jisx0208         #x24 #x52)      ; \e$(B$R\e(B
+    (korean-ksc5601            #x2A #x52)      ; \e$(C*R\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER BI")
+    (ucs               . #x3073)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x3072 #x3099)
+    (japanese-jisx0208-1978    #x24 #x53)      ; \e$(@$S\e(B
+    (chinese-gb2312            #x24 #x53)      ; \e$(A$S\e(B
+    (japanese-jisx0208         #x24 #x53)      ; \e$(B$S\e(B
+    (korean-ksc5601            #x2A #x53)      ; \e$(C*S\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER PI")
+    (ucs               . #x3074)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x3072 #x309A)
+    (japanese-jisx0208-1978    #x24 #x54)      ; \e$(@$T\e(B
+    (chinese-gb2312            #x24 #x54)      ; \e$(A$T\e(B
+    (japanese-jisx0208         #x24 #x54)      ; \e$(B$T\e(B
+    (korean-ksc5601            #x2A #x54)      ; \e$(C*T\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER HU")
+    (ucs               . #x3075)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x55)      ; \e$(@$U\e(B
+    (chinese-gb2312            #x24 #x55)      ; \e$(A$U\e(B
+    (japanese-jisx0208         #x24 #x55)      ; \e$(B$U\e(B
+    (korean-ksc5601            #x2A #x55)      ; \e$(C*U\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER BU")
+    (ucs               . #x3076)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x3075 #x3099)
+    (japanese-jisx0208-1978    #x24 #x56)      ; \e$(@$V\e(B
+    (chinese-gb2312            #x24 #x56)      ; \e$(A$V\e(B
+    (japanese-jisx0208         #x24 #x56)      ; \e$(B$V\e(B
+    (korean-ksc5601            #x2A #x56)      ; \e$(C*V\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER PU")
+    (ucs               . #x3077)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x3075 #x309A)
+    (japanese-jisx0208-1978    #x24 #x57)      ; \e$(@$W\e(B
+    (chinese-gb2312            #x24 #x57)      ; \e$(A$W\e(B
+    (japanese-jisx0208         #x24 #x57)      ; \e$(B$W\e(B
+    (korean-ksc5601            #x2A #x57)      ; \e$(C*W\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER HE")
+    (ucs               . #x3078)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x58)      ; \e$(@$X\e(B
+    (chinese-gb2312            #x24 #x58)      ; \e$(A$X\e(B
+    (japanese-jisx0208         #x24 #x58)      ; \e$(B$X\e(B
+    (korean-ksc5601            #x2A #x58)      ; \e$(C*X\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER BE")
+    (ucs               . #x3079)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x3078 #x3099)
+    (japanese-jisx0208-1978    #x24 #x59)      ; \e$(@$Y\e(B
+    (chinese-gb2312            #x24 #x59)      ; \e$(A$Y\e(B
+    (japanese-jisx0208         #x24 #x59)      ; \e$(B$Y\e(B
+    (korean-ksc5601            #x2A #x59)      ; \e$(C*Y\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER PE")
+    (ucs               . #x307A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x3078 #x309A)
+    (japanese-jisx0208-1978    #x24 #x5A)      ; \e$(@$Z\e(B
+    (chinese-gb2312            #x24 #x5A)      ; \e$(A$Z\e(B
+    (japanese-jisx0208         #x24 #x5A)      ; \e$(B$Z\e(B
+    (korean-ksc5601            #x2A #x5A)      ; \e$(C*Z\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER HO")
+    (ucs               . #x307B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x5B)      ; \e$(@$[\e(B
+    (chinese-gb2312            #x24 #x5B)      ; \e$(A$[\e(B
+    (japanese-jisx0208         #x24 #x5B)      ; \e$(B$[\e(B
+    (korean-ksc5601            #x2A #x5B)      ; \e$(C*[\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER BO")
+    (ucs               . #x307C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x307B #x3099)
+    (japanese-jisx0208-1978    #x24 #x5C)      ; \e$(@$\\e(B
+    (chinese-gb2312            #x24 #x5C)      ; \e$(A$\\e(B
+    (japanese-jisx0208         #x24 #x5C)      ; \e$(B$\\e(B
+    (korean-ksc5601            #x2A #x5C)      ; \e$(C*\\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER PO")
+    (ucs               . #x307D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x307B #x309A)
+    (japanese-jisx0208-1978    #x24 #x5D)      ; \e$(@$]\e(B
+    (chinese-gb2312            #x24 #x5D)      ; \e$(A$]\e(B
+    (japanese-jisx0208         #x24 #x5D)      ; \e$(B$]\e(B
+    (korean-ksc5601            #x2A #x5D)      ; \e$(C*]\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER MA")
+    (ucs               . #x307E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x5E)      ; \e$(@$^\e(B
+    (chinese-gb2312            #x24 #x5E)      ; \e$(A$^\e(B
+    (japanese-jisx0208         #x24 #x5E)      ; \e$(B$^\e(B
+    (korean-ksc5601            #x2A #x5E)      ; \e$(C*^\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER MI")
+    (ucs               . #x307F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x5F)      ; \e$(@$_\e(B
+    (chinese-gb2312            #x24 #x5F)      ; \e$(A$_\e(B
+    (japanese-jisx0208         #x24 #x5F)      ; \e$(B$_\e(B
+    (korean-ksc5601            #x2A #x5F)      ; \e$(C*_\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER MU")
+    (ucs               . #x3080)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x60)      ; \e$(@$`\e(B
+    (chinese-gb2312            #x24 #x60)      ; \e$(A$`\e(B
+    (japanese-jisx0208         #x24 #x60)      ; \e$(B$`\e(B
+    (korean-ksc5601            #x2A #x60)      ; \e$(C*`\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER ME")
+    (ucs               . #x3081)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x61)      ; \e$(@$a\e(B
+    (chinese-gb2312            #x24 #x61)      ; \e$(A$a\e(B
+    (japanese-jisx0208         #x24 #x61)      ; \e$(B$a\e(B
+    (korean-ksc5601            #x2A #x61)      ; \e$(C*a\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER MO")
+    (ucs               . #x3082)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x62)      ; \e$(@$b\e(B
+    (chinese-gb2312            #x24 #x62)      ; \e$(A$b\e(B
+    (japanese-jisx0208         #x24 #x62)      ; \e$(B$b\e(B
+    (korean-ksc5601            #x2A #x62)      ; \e$(C*b\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER SMALL YA")
+    (ucs               . #x3083)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x63)      ; \e$(@$c\e(B
+    (chinese-gb2312            #x24 #x63)      ; \e$(A$c\e(B
+    (japanese-jisx0208         #x24 #x63)      ; \e$(B$c\e(B
+    (korean-ksc5601            #x2A #x63)      ; \e$(C*c\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER YA")
+    (ucs               . #x3084)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x64)      ; \e$(@$d\e(B
+    (chinese-gb2312            #x24 #x64)      ; \e$(A$d\e(B
+    (japanese-jisx0208         #x24 #x64)      ; \e$(B$d\e(B
+    (korean-ksc5601            #x2A #x64)      ; \e$(C*d\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER SMALL YU")
+    (ucs               . #x3085)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x65)      ; \e$(@$e\e(B
+    (chinese-gb2312            #x24 #x65)      ; \e$(A$e\e(B
+    (japanese-jisx0208         #x24 #x65)      ; \e$(B$e\e(B
+    (korean-ksc5601            #x2A #x65)      ; \e$(C*e\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER YU")
+    (ucs               . #x3086)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x66)      ; \e$(@$f\e(B
+    (chinese-gb2312            #x24 #x66)      ; \e$(A$f\e(B
+    (japanese-jisx0208         #x24 #x66)      ; \e$(B$f\e(B
+    (korean-ksc5601            #x2A #x66)      ; \e$(C*f\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER SMALL YO")
+    (ucs               . #x3087)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x67)      ; \e$(@$g\e(B
+    (chinese-gb2312            #x24 #x67)      ; \e$(A$g\e(B
+    (japanese-jisx0208         #x24 #x67)      ; \e$(B$g\e(B
+    (korean-ksc5601            #x2A #x67)      ; \e$(C*g\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER YO")
+    (ucs               . #x3088)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x68)      ; \e$(@$h\e(B
+    (chinese-gb2312            #x24 #x68)      ; \e$(A$h\e(B
+    (japanese-jisx0208         #x24 #x68)      ; \e$(B$h\e(B
+    (korean-ksc5601            #x2A #x68)      ; \e$(C*h\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER RA")
+    (ucs               . #x3089)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x69)      ; \e$(@$i\e(B
+    (chinese-gb2312            #x24 #x69)      ; \e$(A$i\e(B
+    (japanese-jisx0208         #x24 #x69)      ; \e$(B$i\e(B
+    (korean-ksc5601            #x2A #x69)      ; \e$(C*i\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER RI")
+    (ucs               . #x308A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x6A)      ; \e$(@$j\e(B
+    (chinese-gb2312            #x24 #x6A)      ; \e$(A$j\e(B
+    (japanese-jisx0208         #x24 #x6A)      ; \e$(B$j\e(B
+    (korean-ksc5601            #x2A #x6A)      ; \e$(C*j\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER RU")
+    (ucs               . #x308B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x6B)      ; \e$(@$k\e(B
+    (chinese-gb2312            #x24 #x6B)      ; \e$(A$k\e(B
+    (japanese-jisx0208         #x24 #x6B)      ; \e$(B$k\e(B
+    (korean-ksc5601            #x2A #x6B)      ; \e$(C*k\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER RE")
+    (ucs               . #x308C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x6C)      ; \e$(@$l\e(B
+    (chinese-gb2312            #x24 #x6C)      ; \e$(A$l\e(B
+    (japanese-jisx0208         #x24 #x6C)      ; \e$(B$l\e(B
+    (korean-ksc5601            #x2A #x6C)      ; \e$(C*l\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER RO")
+    (ucs               . #x308D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x6D)      ; \e$(@$m\e(B
+    (chinese-gb2312            #x24 #x6D)      ; \e$(A$m\e(B
+    (japanese-jisx0208         #x24 #x6D)      ; \e$(B$m\e(B
+    (korean-ksc5601            #x2A #x6D)      ; \e$(C*m\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER SMALL WA")
+    (ucs               . #x308E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x6E)      ; \e$(@$n\e(B
+    (chinese-gb2312            #x24 #x6E)      ; \e$(A$n\e(B
+    (japanese-jisx0208         #x24 #x6E)      ; \e$(B$n\e(B
+    (korean-ksc5601            #x2A #x6E)      ; \e$(C*n\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER WA")
+    (ucs               . #x308F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x6F)      ; \e$(@$o\e(B
+    (chinese-gb2312            #x24 #x6F)      ; \e$(A$o\e(B
+    (japanese-jisx0208         #x24 #x6F)      ; \e$(B$o\e(B
+    (korean-ksc5601            #x2A #x6F)      ; \e$(C*o\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER WI")
+    (ucs               . #x3090)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x70)      ; \e$(@$p\e(B
+    (chinese-gb2312            #x24 #x70)      ; \e$(A$p\e(B
+    (japanese-jisx0208         #x24 #x70)      ; \e$(B$p\e(B
+    (korean-ksc5601            #x2A #x70)      ; \e$(C*p\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER WE")
+    (ucs               . #x3091)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x71)      ; \e$(@$q\e(B
+    (chinese-gb2312            #x24 #x71)      ; \e$(A$q\e(B
+    (japanese-jisx0208         #x24 #x71)      ; \e$(B$q\e(B
+    (korean-ksc5601            #x2A #x71)      ; \e$(C*q\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER WO")
+    (ucs               . #x3092)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x72)      ; \e$(@$r\e(B
+    (chinese-gb2312            #x24 #x72)      ; \e$(A$r\e(B
+    (japanese-jisx0208         #x24 #x72)      ; \e$(B$r\e(B
+    (korean-ksc5601            #x2A #x72)      ; \e$(C*r\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER N")
+    (ucs               . #x3093)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x24 #x73)      ; \e$(@$s\e(B
+    (chinese-gb2312            #x24 #x73)      ; \e$(A$s\e(B
+    (japanese-jisx0208         #x24 #x73)      ; \e$(B$s\e(B
+    (korean-ksc5601            #x2A #x73)      ; \e$(C*s\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA LETTER VU")
+    (ucs               . #x3094)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x3046 #x3099)
+    ))
+(define-char
+  '((name              . "COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK")
+    (ucs               . #x3099)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name . "COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK")
+    (ucs               . #x309A)
+    (general-category  mark non-spacing) ; Normative Category
+    (bidi-category     . "NSM")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "KATAKANA-HIRAGANA VOICED SOUND MARK")
+    (ucs               . #x309B)
+    (general-category  symbol modifier) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x0020 #x3099)
+    (japanese-jisx0208-1978    #x21 #x2B)      ; \e$(@!+\e(B
+    (japanese-jisx0208         #x21 #x2B)      ; \e$(B!+\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK")
+    (ucs               . #x309C)
+    (general-category  symbol modifier) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (->decomposition   compat #x0020 #x309A)
+    (japanese-jisx0208-1978    #x21 #x2C)      ; \e$(@!,\e(B
+    (japanese-jisx0208         #x21 #x2C)      ; \e$(B!,\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA ITERATION MARK")
+    (ucs               . #x309D)
+    (general-category  letter modifier) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x35)      ; \e$(@!5\e(B
+    (japanese-jisx0208         #x21 #x35)      ; \e$(B!5\e(B
+    ))
+(define-char
+  '((name              . "HIRAGANA VOICED ITERATION MARK")
+    (ucs               . #x309E)
+    (general-category  letter modifier) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x309D #x3099)
+    (japanese-jisx0208-1978    #x21 #x36)      ; \e$(@!6\e(B
+    (japanese-jisx0208         #x21 #x36)      ; \e$(B!6\e(B
+    ))
diff --git a/lisp/utf-2000/u030A0-Katakana.el b/lisp/utf-2000/u030A0-Katakana.el
new file mode 100644 (file)
index 0000000..db81cca
--- /dev/null
@@ -0,0 +1,1042 @@
+(define-char
+  '((name              . "KATAKANA LETTER SMALL A")
+    (ucs               . #x30A1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x21)      ; \e$(@%!\e(B
+    (chinese-gb2312            #x25 #x21)      ; \e$(A%!\e(B
+    (japanese-jisx0208         #x25 #x21)      ; \e$(B%!\e(B
+    (korean-ksc5601            #x2B #x21)      ; \e$(C+!\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER A")
+    (ucs               . #x30A2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x22)      ; \e$(@%"\e(B
+    (chinese-gb2312            #x25 #x22)      ; \e$(A%"\e(B
+    (japanese-jisx0208         #x25 #x22)      ; \e$(B%"\e(B
+    (korean-ksc5601            #x2B #x22)      ; \e$(C+"\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER SMALL I")
+    (ucs               . #x30A3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x23)      ; \e$(@%#\e(B
+    (chinese-gb2312            #x25 #x23)      ; \e$(A%#\e(B
+    (japanese-jisx0208         #x25 #x23)      ; \e$(B%#\e(B
+    (korean-ksc5601            #x2B #x23)      ; \e$(C+#\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER I")
+    (ucs               . #x30A4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x24)      ; \e$(@%$\e(B
+    (chinese-gb2312            #x25 #x24)      ; \e$(A%$\e(B
+    (japanese-jisx0208         #x25 #x24)      ; \e$(B%$\e(B
+    (korean-ksc5601            #x2B #x24)      ; \e$(C+$\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER SMALL U")
+    (ucs               . #x30A5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x25)      ; \e$(@%%\e(B
+    (chinese-gb2312            #x25 #x25)      ; \e$(A%%\e(B
+    (japanese-jisx0208         #x25 #x25)      ; \e$(B%%\e(B
+    (korean-ksc5601            #x2B #x25)      ; \e$(C+%\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER U")
+    (ucs               . #x30A6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x26)      ; \e$(@%&\e(B
+    (chinese-gb2312            #x25 #x26)      ; \e$(A%&\e(B
+    (japanese-jisx0208         #x25 #x26)      ; \e$(B%&\e(B
+    (korean-ksc5601            #x2B #x26)      ; \e$(C+&\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER SMALL E")
+    (ucs               . #x30A7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x27)      ; \e$(@%'\e(B
+    (chinese-gb2312            #x25 #x27)      ; \e$(A%'\e(B
+    (japanese-jisx0208         #x25 #x27)      ; \e$(B%'\e(B
+    (korean-ksc5601            #x2B #x27)      ; \e$(C+'\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER E")
+    (ucs               . #x30A8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x28)      ; \e$(@%(\e(B
+    (chinese-gb2312            #x25 #x28)      ; \e$(A%(\e(B
+    (japanese-jisx0208         #x25 #x28)      ; \e$(B%(\e(B
+    (korean-ksc5601            #x2B #x28)      ; \e$(C+(\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER SMALL O")
+    (ucs               . #x30A9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x29)      ; \e$(@%)\e(B
+    (chinese-gb2312            #x25 #x29)      ; \e$(A%)\e(B
+    (japanese-jisx0208         #x25 #x29)      ; \e$(B%)\e(B
+    (korean-ksc5601            #x2B #x29)      ; \e$(C+)\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER O")
+    (ucs               . #x30AA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x2A)      ; \e$(@%*\e(B
+    (chinese-gb2312            #x25 #x2A)      ; \e$(A%*\e(B
+    (japanese-jisx0208         #x25 #x2A)      ; \e$(B%*\e(B
+    (korean-ksc5601            #x2B #x2A)      ; \e$(C+*\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER KA")
+    (ucs               . #x30AB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x2B)      ; \e$(@%+\e(B
+    (chinese-gb2312            #x25 #x2B)      ; \e$(A%+\e(B
+    (japanese-jisx0208         #x25 #x2B)      ; \e$(B%+\e(B
+    (korean-ksc5601            #x2B #x2B)      ; \e$(C++\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER GA")
+    (ucs               . #x30AC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30AB #x3099)
+    (japanese-jisx0208-1978    #x25 #x2C)      ; \e$(@%,\e(B
+    (chinese-gb2312            #x25 #x2C)      ; \e$(A%,\e(B
+    (japanese-jisx0208         #x25 #x2C)      ; \e$(B%,\e(B
+    (korean-ksc5601            #x2B #x2C)      ; \e$(C+,\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER KI")
+    (ucs               . #x30AD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x2D)      ; \e$(@%-\e(B
+    (chinese-gb2312            #x25 #x2D)      ; \e$(A%-\e(B
+    (japanese-jisx0208         #x25 #x2D)      ; \e$(B%-\e(B
+    (korean-ksc5601            #x2B #x2D)      ; \e$(C+-\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER GI")
+    (ucs               . #x30AE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30AD #x3099)
+    (japanese-jisx0208-1978    #x25 #x2E)      ; \e$(@%.\e(B
+    (chinese-gb2312            #x25 #x2E)      ; \e$(A%.\e(B
+    (japanese-jisx0208         #x25 #x2E)      ; \e$(B%.\e(B
+    (korean-ksc5601            #x2B #x2E)      ; \e$(C+.\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER KU")
+    (ucs               . #x30AF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x2F)      ; \e$(@%/\e(B
+    (chinese-gb2312            #x25 #x2F)      ; \e$(A%/\e(B
+    (japanese-jisx0208         #x25 #x2F)      ; \e$(B%/\e(B
+    (korean-ksc5601            #x2B #x2F)      ; \e$(C+/\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER GU")
+    (ucs               . #x30B0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30AF #x3099)
+    (japanese-jisx0208-1978    #x25 #x30)      ; \e$(@%0\e(B
+    (chinese-gb2312            #x25 #x30)      ; \e$(A%0\e(B
+    (japanese-jisx0208         #x25 #x30)      ; \e$(B%0\e(B
+    (korean-ksc5601            #x2B #x30)      ; \e$(C+0\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER KE")
+    (ucs               . #x30B1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x31)      ; \e$(@%1\e(B
+    (chinese-gb2312            #x25 #x31)      ; \e$(A%1\e(B
+    (japanese-jisx0208         #x25 #x31)      ; \e$(B%1\e(B
+    (korean-ksc5601            #x2B #x31)      ; \e$(C+1\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER GE")
+    (ucs               . #x30B2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30B1 #x3099)
+    (japanese-jisx0208-1978    #x25 #x32)      ; \e$(@%2\e(B
+    (chinese-gb2312            #x25 #x32)      ; \e$(A%2\e(B
+    (japanese-jisx0208         #x25 #x32)      ; \e$(B%2\e(B
+    (korean-ksc5601            #x2B #x32)      ; \e$(C+2\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER KO")
+    (ucs               . #x30B3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x33)      ; \e$(@%3\e(B
+    (chinese-gb2312            #x25 #x33)      ; \e$(A%3\e(B
+    (japanese-jisx0208         #x25 #x33)      ; \e$(B%3\e(B
+    (korean-ksc5601            #x2B #x33)      ; \e$(C+3\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER GO")
+    (ucs               . #x30B4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30B3 #x3099)
+    (japanese-jisx0208-1978    #x25 #x34)      ; \e$(@%4\e(B
+    (chinese-gb2312            #x25 #x34)      ; \e$(A%4\e(B
+    (japanese-jisx0208         #x25 #x34)      ; \e$(B%4\e(B
+    (korean-ksc5601            #x2B #x34)      ; \e$(C+4\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER SA")
+    (ucs               . #x30B5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x35)      ; \e$(@%5\e(B
+    (chinese-gb2312            #x25 #x35)      ; \e$(A%5\e(B
+    (japanese-jisx0208         #x25 #x35)      ; \e$(B%5\e(B
+    (korean-ksc5601            #x2B #x35)      ; \e$(C+5\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER ZA")
+    (ucs               . #x30B6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30B5 #x3099)
+    (japanese-jisx0208-1978    #x25 #x36)      ; \e$(@%6\e(B
+    (chinese-gb2312            #x25 #x36)      ; \e$(A%6\e(B
+    (japanese-jisx0208         #x25 #x36)      ; \e$(B%6\e(B
+    (korean-ksc5601            #x2B #x36)      ; \e$(C+6\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER SI")
+    (ucs               . #x30B7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x37)      ; \e$(@%7\e(B
+    (chinese-gb2312            #x25 #x37)      ; \e$(A%7\e(B
+    (japanese-jisx0208         #x25 #x37)      ; \e$(B%7\e(B
+    (korean-ksc5601            #x2B #x37)      ; \e$(C+7\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER ZI")
+    (ucs               . #x30B8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30B7 #x3099)
+    (japanese-jisx0208-1978    #x25 #x38)      ; \e$(@%8\e(B
+    (chinese-gb2312            #x25 #x38)      ; \e$(A%8\e(B
+    (japanese-jisx0208         #x25 #x38)      ; \e$(B%8\e(B
+    (korean-ksc5601            #x2B #x38)      ; \e$(C+8\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER SU")
+    (ucs               . #x30B9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x39)      ; \e$(@%9\e(B
+    (chinese-gb2312            #x25 #x39)      ; \e$(A%9\e(B
+    (japanese-jisx0208         #x25 #x39)      ; \e$(B%9\e(B
+    (korean-ksc5601            #x2B #x39)      ; \e$(C+9\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER ZU")
+    (ucs               . #x30BA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30B9 #x3099)
+    (japanese-jisx0208-1978    #x25 #x3A)      ; \e$(@%:\e(B
+    (chinese-gb2312            #x25 #x3A)      ; \e$(A%:\e(B
+    (japanese-jisx0208         #x25 #x3A)      ; \e$(B%:\e(B
+    (korean-ksc5601            #x2B #x3A)      ; \e$(C+:\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER SE")
+    (ucs               . #x30BB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x3B)      ; \e$(@%;\e(B
+    (chinese-gb2312            #x25 #x3B)      ; \e$(A%;\e(B
+    (japanese-jisx0208         #x25 #x3B)      ; \e$(B%;\e(B
+    (korean-ksc5601            #x2B #x3B)      ; \e$(C+;\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER ZE")
+    (ucs               . #x30BC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30BB #x3099)
+    (japanese-jisx0208-1978    #x25 #x3C)      ; \e$(@%<\e(B
+    (chinese-gb2312            #x25 #x3C)      ; \e$(A%<\e(B
+    (japanese-jisx0208         #x25 #x3C)      ; \e$(B%<\e(B
+    (korean-ksc5601            #x2B #x3C)      ; \e$(C+<\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER SO")
+    (ucs               . #x30BD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x3D)      ; \e$(@%=\e(B
+    (chinese-gb2312            #x25 #x3D)      ; \e$(A%=\e(B
+    (japanese-jisx0208         #x25 #x3D)      ; \e$(B%=\e(B
+    (korean-ksc5601            #x2B #x3D)      ; \e$(C+=\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER ZO")
+    (ucs               . #x30BE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30BD #x3099)
+    (japanese-jisx0208-1978    #x25 #x3E)      ; \e$(@%>\e(B
+    (chinese-gb2312            #x25 #x3E)      ; \e$(A%>\e(B
+    (japanese-jisx0208         #x25 #x3E)      ; \e$(B%>\e(B
+    (korean-ksc5601            #x2B #x3E)      ; \e$(C+>\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER TA")
+    (ucs               . #x30BF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x3F)      ; \e$(@%?\e(B
+    (chinese-gb2312            #x25 #x3F)      ; \e$(A%?\e(B
+    (japanese-jisx0208         #x25 #x3F)      ; \e$(B%?\e(B
+    (korean-ksc5601            #x2B #x3F)      ; \e$(C+?\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER DA")
+    (ucs               . #x30C0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30BF #x3099)
+    (japanese-jisx0208-1978    #x25 #x40)      ; \e$(@%@\e(B
+    (chinese-gb2312            #x25 #x40)      ; \e$(A%@\e(B
+    (japanese-jisx0208         #x25 #x40)      ; \e$(B%@\e(B
+    (korean-ksc5601            #x2B #x40)      ; \e$(C+@\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER TI")
+    (ucs               . #x30C1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x41)      ; \e$(@%A\e(B
+    (chinese-gb2312            #x25 #x41)      ; \e$(A%A\e(B
+    (japanese-jisx0208         #x25 #x41)      ; \e$(B%A\e(B
+    (korean-ksc5601            #x2B #x41)      ; \e$(C+A\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER DI")
+    (ucs               . #x30C2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30C1 #x3099)
+    (japanese-jisx0208-1978    #x25 #x42)      ; \e$(@%B\e(B
+    (chinese-gb2312            #x25 #x42)      ; \e$(A%B\e(B
+    (japanese-jisx0208         #x25 #x42)      ; \e$(B%B\e(B
+    (korean-ksc5601            #x2B #x42)      ; \e$(C+B\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER SMALL TU")
+    (ucs               . #x30C3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x43)      ; \e$(@%C\e(B
+    (chinese-gb2312            #x25 #x43)      ; \e$(A%C\e(B
+    (japanese-jisx0208         #x25 #x43)      ; \e$(B%C\e(B
+    (korean-ksc5601            #x2B #x43)      ; \e$(C+C\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER TU")
+    (ucs               . #x30C4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x44)      ; \e$(@%D\e(B
+    (chinese-gb2312            #x25 #x44)      ; \e$(A%D\e(B
+    (japanese-jisx0208         #x25 #x44)      ; \e$(B%D\e(B
+    (korean-ksc5601            #x2B #x44)      ; \e$(C+D\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER DU")
+    (ucs               . #x30C5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30C4 #x3099)
+    (japanese-jisx0208-1978    #x25 #x45)      ; \e$(@%E\e(B
+    (chinese-gb2312            #x25 #x45)      ; \e$(A%E\e(B
+    (japanese-jisx0208         #x25 #x45)      ; \e$(B%E\e(B
+    (korean-ksc5601            #x2B #x45)      ; \e$(C+E\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER TE")
+    (ucs               . #x30C6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x46)      ; \e$(@%F\e(B
+    (chinese-gb2312            #x25 #x46)      ; \e$(A%F\e(B
+    (japanese-jisx0208         #x25 #x46)      ; \e$(B%F\e(B
+    (korean-ksc5601            #x2B #x46)      ; \e$(C+F\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER DE")
+    (ucs               . #x30C7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30C6 #x3099)
+    (japanese-jisx0208-1978    #x25 #x47)      ; \e$(@%G\e(B
+    (chinese-gb2312            #x25 #x47)      ; \e$(A%G\e(B
+    (japanese-jisx0208         #x25 #x47)      ; \e$(B%G\e(B
+    (korean-ksc5601            #x2B #x47)      ; \e$(C+G\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER TO")
+    (ucs               . #x30C8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x48)      ; \e$(@%H\e(B
+    (chinese-gb2312            #x25 #x48)      ; \e$(A%H\e(B
+    (japanese-jisx0208         #x25 #x48)      ; \e$(B%H\e(B
+    (korean-ksc5601            #x2B #x48)      ; \e$(C+H\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER DO")
+    (ucs               . #x30C9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30C8 #x3099)
+    (japanese-jisx0208-1978    #x25 #x49)      ; \e$(@%I\e(B
+    (chinese-gb2312            #x25 #x49)      ; \e$(A%I\e(B
+    (japanese-jisx0208         #x25 #x49)      ; \e$(B%I\e(B
+    (korean-ksc5601            #x2B #x49)      ; \e$(C+I\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER NA")
+    (ucs               . #x30CA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x4A)      ; \e$(@%J\e(B
+    (chinese-gb2312            #x25 #x4A)      ; \e$(A%J\e(B
+    (japanese-jisx0208         #x25 #x4A)      ; \e$(B%J\e(B
+    (korean-ksc5601            #x2B #x4A)      ; \e$(C+J\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER NI")
+    (ucs               . #x30CB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x4B)      ; \e$(@%K\e(B
+    (chinese-gb2312            #x25 #x4B)      ; \e$(A%K\e(B
+    (japanese-jisx0208         #x25 #x4B)      ; \e$(B%K\e(B
+    (korean-ksc5601            #x2B #x4B)      ; \e$(C+K\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER NU")
+    (ucs               . #x30CC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x4C)      ; \e$(@%L\e(B
+    (chinese-gb2312            #x25 #x4C)      ; \e$(A%L\e(B
+    (japanese-jisx0208         #x25 #x4C)      ; \e$(B%L\e(B
+    (korean-ksc5601            #x2B #x4C)      ; \e$(C+L\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER NE")
+    (ucs               . #x30CD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x4D)      ; \e$(@%M\e(B
+    (chinese-gb2312            #x25 #x4D)      ; \e$(A%M\e(B
+    (japanese-jisx0208         #x25 #x4D)      ; \e$(B%M\e(B
+    (korean-ksc5601            #x2B #x4D)      ; \e$(C+M\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER NO")
+    (ucs               . #x30CE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x4E)      ; \e$(@%N\e(B
+    (chinese-gb2312            #x25 #x4E)      ; \e$(A%N\e(B
+    (japanese-jisx0208         #x25 #x4E)      ; \e$(B%N\e(B
+    (korean-ksc5601            #x2B #x4E)      ; \e$(C+N\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER HA")
+    (ucs               . #x30CF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x4F)      ; \e$(@%O\e(B
+    (chinese-gb2312            #x25 #x4F)      ; \e$(A%O\e(B
+    (japanese-jisx0208         #x25 #x4F)      ; \e$(B%O\e(B
+    (korean-ksc5601            #x2B #x4F)      ; \e$(C+O\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER BA")
+    (ucs               . #x30D0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30CF #x3099)
+    (japanese-jisx0208-1978    #x25 #x50)      ; \e$(@%P\e(B
+    (chinese-gb2312            #x25 #x50)      ; \e$(A%P\e(B
+    (japanese-jisx0208         #x25 #x50)      ; \e$(B%P\e(B
+    (korean-ksc5601            #x2B #x50)      ; \e$(C+P\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER PA")
+    (ucs               . #x30D1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30CF #x309A)
+    (japanese-jisx0208-1978    #x25 #x51)      ; \e$(@%Q\e(B
+    (chinese-gb2312            #x25 #x51)      ; \e$(A%Q\e(B
+    (japanese-jisx0208         #x25 #x51)      ; \e$(B%Q\e(B
+    (korean-ksc5601            #x2B #x51)      ; \e$(C+Q\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER HI")
+    (ucs               . #x30D2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x52)      ; \e$(@%R\e(B
+    (chinese-gb2312            #x25 #x52)      ; \e$(A%R\e(B
+    (japanese-jisx0208         #x25 #x52)      ; \e$(B%R\e(B
+    (korean-ksc5601            #x2B #x52)      ; \e$(C+R\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER BI")
+    (ucs               . #x30D3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30D2 #x3099)
+    (japanese-jisx0208-1978    #x25 #x53)      ; \e$(@%S\e(B
+    (chinese-gb2312            #x25 #x53)      ; \e$(A%S\e(B
+    (japanese-jisx0208         #x25 #x53)      ; \e$(B%S\e(B
+    (korean-ksc5601            #x2B #x53)      ; \e$(C+S\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER PI")
+    (ucs               . #x30D4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30D2 #x309A)
+    (japanese-jisx0208-1978    #x25 #x54)      ; \e$(@%T\e(B
+    (chinese-gb2312            #x25 #x54)      ; \e$(A%T\e(B
+    (japanese-jisx0208         #x25 #x54)      ; \e$(B%T\e(B
+    (korean-ksc5601            #x2B #x54)      ; \e$(C+T\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER HU")
+    (ucs               . #x30D5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x55)      ; \e$(@%U\e(B
+    (chinese-gb2312            #x25 #x55)      ; \e$(A%U\e(B
+    (japanese-jisx0208         #x25 #x55)      ; \e$(B%U\e(B
+    (korean-ksc5601            #x2B #x55)      ; \e$(C+U\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER BU")
+    (ucs               . #x30D6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30D5 #x3099)
+    (japanese-jisx0208-1978    #x25 #x56)      ; \e$(@%V\e(B
+    (chinese-gb2312            #x25 #x56)      ; \e$(A%V\e(B
+    (japanese-jisx0208         #x25 #x56)      ; \e$(B%V\e(B
+    (korean-ksc5601            #x2B #x56)      ; \e$(C+V\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER PU")
+    (ucs               . #x30D7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30D5 #x309A)
+    (japanese-jisx0208-1978    #x25 #x57)      ; \e$(@%W\e(B
+    (chinese-gb2312            #x25 #x57)      ; \e$(A%W\e(B
+    (japanese-jisx0208         #x25 #x57)      ; \e$(B%W\e(B
+    (korean-ksc5601            #x2B #x57)      ; \e$(C+W\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER HE")
+    (ucs               . #x30D8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x58)      ; \e$(@%X\e(B
+    (chinese-gb2312            #x25 #x58)      ; \e$(A%X\e(B
+    (japanese-jisx0208         #x25 #x58)      ; \e$(B%X\e(B
+    (korean-ksc5601            #x2B #x58)      ; \e$(C+X\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER BE")
+    (ucs               . #x30D9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30D8 #x3099)
+    (japanese-jisx0208-1978    #x25 #x59)      ; \e$(@%Y\e(B
+    (chinese-gb2312            #x25 #x59)      ; \e$(A%Y\e(B
+    (japanese-jisx0208         #x25 #x59)      ; \e$(B%Y\e(B
+    (korean-ksc5601            #x2B #x59)      ; \e$(C+Y\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER PE")
+    (ucs               . #x30DA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30D8 #x309A)
+    (japanese-jisx0208-1978    #x25 #x5A)      ; \e$(@%Z\e(B
+    (chinese-gb2312            #x25 #x5A)      ; \e$(A%Z\e(B
+    (japanese-jisx0208         #x25 #x5A)      ; \e$(B%Z\e(B
+    (korean-ksc5601            #x2B #x5A)      ; \e$(C+Z\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER HO")
+    (ucs               . #x30DB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x5B)      ; \e$(@%[\e(B
+    (chinese-gb2312            #x25 #x5B)      ; \e$(A%[\e(B
+    (japanese-jisx0208         #x25 #x5B)      ; \e$(B%[\e(B
+    (korean-ksc5601            #x2B #x5B)      ; \e$(C+[\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER BO")
+    (ucs               . #x30DC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30DB #x3099)
+    (japanese-jisx0208-1978    #x25 #x5C)      ; \e$(@%\\e(B
+    (chinese-gb2312            #x25 #x5C)      ; \e$(A%\\e(B
+    (japanese-jisx0208         #x25 #x5C)      ; \e$(B%\\e(B
+    (korean-ksc5601            #x2B #x5C)      ; \e$(C+\\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER PO")
+    (ucs               . #x30DD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30DB #x309A)
+    (japanese-jisx0208-1978    #x25 #x5D)      ; \e$(@%]\e(B
+    (chinese-gb2312            #x25 #x5D)      ; \e$(A%]\e(B
+    (japanese-jisx0208         #x25 #x5D)      ; \e$(B%]\e(B
+    (korean-ksc5601            #x2B #x5D)      ; \e$(C+]\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER MA")
+    (ucs               . #x30DE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x5E)      ; \e$(@%^\e(B
+    (chinese-gb2312            #x25 #x5E)      ; \e$(A%^\e(B
+    (japanese-jisx0208         #x25 #x5E)      ; \e$(B%^\e(B
+    (korean-ksc5601            #x2B #x5E)      ; \e$(C+^\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER MI")
+    (ucs               . #x30DF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x5F)      ; \e$(@%_\e(B
+    (chinese-gb2312            #x25 #x5F)      ; \e$(A%_\e(B
+    (japanese-jisx0208         #x25 #x5F)      ; \e$(B%_\e(B
+    (korean-ksc5601            #x2B #x5F)      ; \e$(C+_\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER MU")
+    (ucs               . #x30E0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x60)      ; \e$(@%`\e(B
+    (chinese-gb2312            #x25 #x60)      ; \e$(A%`\e(B
+    (japanese-jisx0208         #x25 #x60)      ; \e$(B%`\e(B
+    (korean-ksc5601            #x2B #x60)      ; \e$(C+`\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER ME")
+    (ucs               . #x30E1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x61)      ; \e$(@%a\e(B
+    (chinese-gb2312            #x25 #x61)      ; \e$(A%a\e(B
+    (japanese-jisx0208         #x25 #x61)      ; \e$(B%a\e(B
+    (korean-ksc5601            #x2B #x61)      ; \e$(C+a\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER MO")
+    (ucs               . #x30E2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x62)      ; \e$(@%b\e(B
+    (chinese-gb2312            #x25 #x62)      ; \e$(A%b\e(B
+    (japanese-jisx0208         #x25 #x62)      ; \e$(B%b\e(B
+    (korean-ksc5601            #x2B #x62)      ; \e$(C+b\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER SMALL YA")
+    (ucs               . #x30E3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x63)      ; \e$(@%c\e(B
+    (chinese-gb2312            #x25 #x63)      ; \e$(A%c\e(B
+    (japanese-jisx0208         #x25 #x63)      ; \e$(B%c\e(B
+    (korean-ksc5601            #x2B #x63)      ; \e$(C+c\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER YA")
+    (ucs               . #x30E4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x64)      ; \e$(@%d\e(B
+    (chinese-gb2312            #x25 #x64)      ; \e$(A%d\e(B
+    (japanese-jisx0208         #x25 #x64)      ; \e$(B%d\e(B
+    (korean-ksc5601            #x2B #x64)      ; \e$(C+d\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER SMALL YU")
+    (ucs               . #x30E5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x65)      ; \e$(@%e\e(B
+    (chinese-gb2312            #x25 #x65)      ; \e$(A%e\e(B
+    (japanese-jisx0208         #x25 #x65)      ; \e$(B%e\e(B
+    (korean-ksc5601            #x2B #x65)      ; \e$(C+e\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER YU")
+    (ucs               . #x30E6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x66)      ; \e$(@%f\e(B
+    (chinese-gb2312            #x25 #x66)      ; \e$(A%f\e(B
+    (japanese-jisx0208         #x25 #x66)      ; \e$(B%f\e(B
+    (korean-ksc5601            #x2B #x66)      ; \e$(C+f\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER SMALL YO")
+    (ucs               . #x30E7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x67)      ; \e$(@%g\e(B
+    (chinese-gb2312            #x25 #x67)      ; \e$(A%g\e(B
+    (japanese-jisx0208         #x25 #x67)      ; \e$(B%g\e(B
+    (korean-ksc5601            #x2B #x67)      ; \e$(C+g\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER YO")
+    (ucs               . #x30E8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x68)      ; \e$(@%h\e(B
+    (chinese-gb2312            #x25 #x68)      ; \e$(A%h\e(B
+    (japanese-jisx0208         #x25 #x68)      ; \e$(B%h\e(B
+    (korean-ksc5601            #x2B #x68)      ; \e$(C+h\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER RA")
+    (ucs               . #x30E9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x69)      ; \e$(@%i\e(B
+    (chinese-gb2312            #x25 #x69)      ; \e$(A%i\e(B
+    (japanese-jisx0208         #x25 #x69)      ; \e$(B%i\e(B
+    (korean-ksc5601            #x2B #x69)      ; \e$(C+i\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER RI")
+    (ucs               . #x30EA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x6A)      ; \e$(@%j\e(B
+    (chinese-gb2312            #x25 #x6A)      ; \e$(A%j\e(B
+    (japanese-jisx0208         #x25 #x6A)      ; \e$(B%j\e(B
+    (korean-ksc5601            #x2B #x6A)      ; \e$(C+j\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER RU")
+    (ucs               . #x30EB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x6B)      ; \e$(@%k\e(B
+    (chinese-gb2312            #x25 #x6B)      ; \e$(A%k\e(B
+    (japanese-jisx0208         #x25 #x6B)      ; \e$(B%k\e(B
+    (korean-ksc5601            #x2B #x6B)      ; \e$(C+k\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER RE")
+    (ucs               . #x30EC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x6C)      ; \e$(@%l\e(B
+    (chinese-gb2312            #x25 #x6C)      ; \e$(A%l\e(B
+    (japanese-jisx0208         #x25 #x6C)      ; \e$(B%l\e(B
+    (korean-ksc5601            #x2B #x6C)      ; \e$(C+l\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER RO")
+    (ucs               . #x30ED)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x6D)      ; \e$(@%m\e(B
+    (chinese-gb2312            #x25 #x6D)      ; \e$(A%m\e(B
+    (japanese-jisx0208         #x25 #x6D)      ; \e$(B%m\e(B
+    (korean-ksc5601            #x2B #x6D)      ; \e$(C+m\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER SMALL WA")
+    (ucs               . #x30EE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x6E)      ; \e$(@%n\e(B
+    (chinese-gb2312            #x25 #x6E)      ; \e$(A%n\e(B
+    (japanese-jisx0208         #x25 #x6E)      ; \e$(B%n\e(B
+    (korean-ksc5601            #x2B #x6E)      ; \e$(C+n\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER WA")
+    (ucs               . #x30EF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x6F)      ; \e$(@%o\e(B
+    (chinese-gb2312            #x25 #x6F)      ; \e$(A%o\e(B
+    (japanese-jisx0208         #x25 #x6F)      ; \e$(B%o\e(B
+    (korean-ksc5601            #x2B #x6F)      ; \e$(C+o\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER WI")
+    (ucs               . #x30F0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x70)      ; \e$(@%p\e(B
+    (chinese-gb2312            #x25 #x70)      ; \e$(A%p\e(B
+    (japanese-jisx0208         #x25 #x70)      ; \e$(B%p\e(B
+    (korean-ksc5601            #x2B #x70)      ; \e$(C+p\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER WE")
+    (ucs               . #x30F1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x71)      ; \e$(@%q\e(B
+    (chinese-gb2312            #x25 #x71)      ; \e$(A%q\e(B
+    (japanese-jisx0208         #x25 #x71)      ; \e$(B%q\e(B
+    (korean-ksc5601            #x2B #x71)      ; \e$(C+q\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER WO")
+    (ucs               . #x30F2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x72)      ; \e$(@%r\e(B
+    (chinese-gb2312            #x25 #x72)      ; \e$(A%r\e(B
+    (japanese-jisx0208         #x25 #x72)      ; \e$(B%r\e(B
+    (korean-ksc5601            #x2B #x72)      ; \e$(C+r\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER N")
+    (ucs               . #x30F3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x73)      ; \e$(@%s\e(B
+    (chinese-gb2312            #x25 #x73)      ; \e$(A%s\e(B
+    (japanese-jisx0208         #x25 #x73)      ; \e$(B%s\e(B
+    (korean-ksc5601            #x2B #x73)      ; \e$(C+s\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER VU")
+    (ucs               . #x30F4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30A6 #x3099)
+    (japanese-jisx0208-1978    #x25 #x74)      ; \e$(@%t\e(B
+    (chinese-gb2312            #x25 #x74)      ; \e$(A%t\e(B
+    (japanese-jisx0208         #x25 #x74)      ; \e$(B%t\e(B
+    (korean-ksc5601            #x2B #x74)      ; \e$(C+t\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER SMALL KA")
+    (ucs               . #x30F5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x75)      ; \e$(@%u\e(B
+    (chinese-gb2312            #x25 #x75)      ; \e$(A%u\e(B
+    (japanese-jisx0208         #x25 #x75)      ; \e$(B%u\e(B
+    (korean-ksc5601            #x2B #x75)      ; \e$(C+u\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER SMALL KE")
+    (ucs               . #x30F6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x25 #x76)      ; \e$(@%v\e(B
+    (chinese-gb2312            #x25 #x76)      ; \e$(A%v\e(B
+    (japanese-jisx0208         #x25 #x76)      ; \e$(B%v\e(B
+    (korean-ksc5601            #x2B #x76)      ; \e$(C+v\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER VA")
+    (ucs               . #x30F7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30EF #x3099)
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER VI")
+    (ucs               . #x30F8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30F0 #x3099)
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER VE")
+    (ucs               . #x30F9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30F1 #x3099)
+    ))
+(define-char
+  '((name              . "KATAKANA LETTER VO")
+    (ucs               . #x30FA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30F2 #x3099)
+    ))
+(define-char
+  '((name              . "KATAKANA MIDDLE DOT")
+    (ucs               . #x30FB)
+    (general-category  punctuation connector) ; Informative Category
+    (bidi-category     . "ON")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x26)      ; \e$(@!&\e(B
+    (chinese-gb2312            #x21 #x24)      ; \e$(A!$\e(B
+    (japanese-jisx0208         #x21 #x26)      ; \e$(B!&\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA-HIRAGANA PROLONGED SOUND MARK")
+    (ucs               . #x30FC)
+    (general-category  letter modifier) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x3C)      ; \e$(@!<\e(B
+    (japanese-jisx0208         #x21 #x3C)      ; \e$(B!<\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA ITERATION MARK")
+    (ucs               . #x30FD)
+    (general-category  letter modifier) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (japanese-jisx0208-1978    #x21 #x33)      ; \e$(@!3\e(B
+    (japanese-jisx0208         #x21 #x33)      ; \e$(B!3\e(B
+    ))
+(define-char
+  '((name              . "KATAKANA VOICED ITERATION MARK")
+    (ucs               . #x30FE)
+    (general-category  letter modifier) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   #x30FD #x3099)
+    (japanese-jisx0208-1978    #x21 #x34)      ; \e$(@!4\e(B
+    (japanese-jisx0208         #x21 #x34)      ; \e$(B!4\e(B
+    ))
diff --git a/lisp/utf-2000/u03100-Bopomofo.el b/lisp/utf-2000/u03100-Bopomofo.el
new file mode 100644 (file)
index 0000000..1804a05
--- /dev/null
@@ -0,0 +1,354 @@
+(define-char
+  '((name              . "BOPOMOFO LETTER B")
+    (ucs               . #x3105)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x45)      ; \e$(A(E\e(B
+    (chinese-cns11643-1 #x25 #x47)     ; \e$(G%G\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER P")
+    (ucs               . #x3106)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x46)      ; \e$(A(F\e(B
+    (chinese-cns11643-1 #x25 #x48)     ; \e$(G%H\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER M")
+    (ucs               . #x3107)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x47)      ; \e$(A(G\e(B
+    (chinese-cns11643-1 #x25 #x49)     ; \e$(G%I\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER F")
+    (ucs               . #x3108)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x48)      ; \e$(A(H\e(B
+    (chinese-cns11643-1 #x25 #x4A)     ; \e$(G%J\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER D")
+    (ucs               . #x3109)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x49)      ; \e$(A(I\e(B
+    (chinese-cns11643-1 #x25 #x4B)     ; \e$(G%K\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER T")
+    (ucs               . #x310A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x4A)      ; \e$(A(J\e(B
+    (chinese-cns11643-1 #x25 #x4C)     ; \e$(G%L\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER N")
+    (ucs               . #x310B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x4B)      ; \e$(A(K\e(B
+    (chinese-cns11643-1 #x25 #x4D)     ; \e$(G%M\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER L")
+    (ucs               . #x310C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x4C)      ; \e$(A(L\e(B
+    (chinese-cns11643-1 #x25 #x4E)     ; \e$(G%N\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER G")
+    (ucs               . #x310D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x4D)      ; \e$(A(M\e(B
+    (chinese-cns11643-1 #x25 #x4F)     ; \e$(G%O\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER K")
+    (ucs               . #x310E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x4E)      ; \e$(A(N\e(B
+    (chinese-cns11643-1 #x25 #x50)     ; \e$(G%P\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER H")
+    (ucs               . #x310F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x4F)      ; \e$(A(O\e(B
+    (chinese-cns11643-1 #x25 #x51)     ; \e$(G%Q\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER J")
+    (ucs               . #x3110)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x50)      ; \e$(A(P\e(B
+    (chinese-cns11643-1 #x25 #x52)     ; \e$(G%R\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER Q")
+    (ucs               . #x3111)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x51)      ; \e$(A(Q\e(B
+    (chinese-cns11643-1 #x25 #x53)     ; \e$(G%S\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER X")
+    (ucs               . #x3112)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x52)      ; \e$(A(R\e(B
+    (chinese-cns11643-1 #x25 #x54)     ; \e$(G%T\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER ZH")
+    (ucs               . #x3113)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x53)      ; \e$(A(S\e(B
+    (chinese-cns11643-1 #x25 #x55)     ; \e$(G%U\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER CH")
+    (ucs               . #x3114)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x54)      ; \e$(A(T\e(B
+    (chinese-cns11643-1 #x25 #x56)     ; \e$(G%V\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER SH")
+    (ucs               . #x3115)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x55)      ; \e$(A(U\e(B
+    (chinese-cns11643-1 #x25 #x57)     ; \e$(G%W\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER R")
+    (ucs               . #x3116)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x56)      ; \e$(A(V\e(B
+    (chinese-cns11643-1 #x25 #x58)     ; \e$(G%X\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER Z")
+    (ucs               . #x3117)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x57)      ; \e$(A(W\e(B
+    (chinese-cns11643-1 #x25 #x59)     ; \e$(G%Y\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER C")
+    (ucs               . #x3118)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x58)      ; \e$(A(X\e(B
+    (chinese-cns11643-1 #x25 #x5A)     ; \e$(G%Z\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER S")
+    (ucs               . #x3119)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x59)      ; \e$(A(Y\e(B
+    (chinese-cns11643-1 #x25 #x5B)     ; \e$(G%[\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER A")
+    (ucs               . #x311A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x5A)      ; \e$(A(Z\e(B
+    (chinese-cns11643-1 #x25 #x5C)     ; \e$(G%\\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER O")
+    (ucs               . #x311B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x5B)      ; \e$(A([\e(B
+    (chinese-cns11643-1 #x25 #x5D)     ; \e$(G%]\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER E")
+    (ucs               . #x311C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x5C)      ; \e$(A(\\e(B
+    (chinese-cns11643-1 #x25 #x5E)     ; \e$(G%^\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER EH")
+    (ucs               . #x311D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x5D)      ; \e$(A(]\e(B
+    (chinese-cns11643-1 #x25 #x5F)     ; \e$(G%_\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER AI")
+    (ucs               . #x311E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x5E)      ; \e$(A(^\e(B
+    (chinese-cns11643-1 #x25 #x60)     ; \e$(G%`\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER EI")
+    (ucs               . #x311F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x5F)      ; \e$(A(_\e(B
+    (chinese-cns11643-1 #x25 #x61)     ; \e$(G%a\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER AU")
+    (ucs               . #x3120)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x60)      ; \e$(A(`\e(B
+    (chinese-cns11643-1 #x25 #x62)     ; \e$(G%b\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER OU")
+    (ucs               . #x3121)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x61)      ; \e$(A(a\e(B
+    (chinese-cns11643-1 #x25 #x63)     ; \e$(G%c\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER AN")
+    (ucs               . #x3122)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x62)      ; \e$(A(b\e(B
+    (chinese-cns11643-1 #x25 #x64)     ; \e$(G%d\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER EN")
+    (ucs               . #x3123)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x63)      ; \e$(A(c\e(B
+    (chinese-cns11643-1 #x25 #x65)     ; \e$(G%e\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER ANG")
+    (ucs               . #x3124)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x64)      ; \e$(A(d\e(B
+    (chinese-cns11643-1 #x25 #x66)     ; \e$(G%f\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER ENG")
+    (ucs               . #x3125)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x65)      ; \e$(A(e\e(B
+    (chinese-cns11643-1 #x25 #x67)     ; \e$(G%g\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER ER")
+    (ucs               . #x3126)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x66)      ; \e$(A(f\e(B
+    (chinese-cns11643-1 #x25 #x68)     ; \e$(G%h\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER I")
+    (ucs               . #x3127)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x67)      ; \e$(A(g\e(B
+    (chinese-cns11643-1 #x25 #x69)     ; \e$(G%i\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER U")
+    (ucs               . #x3128)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x68)      ; \e$(A(h\e(B
+    (chinese-cns11643-1 #x25 #x6A)     ; \e$(G%j\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER IU")
+    (ucs               . #x3129)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (chinese-gb2312    #x28 #x69)      ; \e$(A(i\e(B
+    (chinese-cns11643-1 #x25 #x6B)     ; \e$(G%k\e(B
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER V")
+    (ucs               . #x312A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER NG")
+    (ucs               . #x312B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER GN")
+    (ucs               . #x312C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u03130-Hangul-Compatibility-Jamo.el b/lisp/utf-2000/u03130-Hangul-Compatibility-Jamo.el
new file mode 100644 (file)
index 0000000..df6811e
--- /dev/null
@@ -0,0 +1,846 @@
+(define-char
+  '((name              . "HANGUL LETTER KIYEOK")
+    (ucs               . #x3131)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1100)
+    (korean-ksc5601    #x24 #x21)      ; \e$(C$!\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER SSANGKIYEOK")
+    (ucs               . #x3132)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1101)
+    (korean-ksc5601    #x24 #x22)      ; \e$(C$"\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER KIYEOK-SIOS")
+    (ucs               . #x3133)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x11AA)
+    (korean-ksc5601    #x24 #x23)      ; \e$(C$#\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER NIEUN")
+    (ucs               . #x3134)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1102)
+    (korean-ksc5601    #x24 #x24)      ; \e$(C$$\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER NIEUN-CIEUC")
+    (ucs               . #x3135)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x11AC)
+    (korean-ksc5601    #x24 #x25)      ; \e$(C$%\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER NIEUN-HIEUH")
+    (ucs               . #x3136)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x11AD)
+    (korean-ksc5601    #x24 #x26)      ; \e$(C$&\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER TIKEUT")
+    (ucs               . #x3137)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1103)
+    (korean-ksc5601    #x24 #x27)      ; \e$(C$'\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER SSANGTIKEUT")
+    (ucs               . #x3138)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1104)
+    (korean-ksc5601    #x24 #x28)      ; \e$(C$(\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER RIEUL")
+    (ucs               . #x3139)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1105)
+    (korean-ksc5601    #x24 #x29)      ; \e$(C$)\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER RIEUL-KIYEOK")
+    (ucs               . #x313A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x11B0)
+    (korean-ksc5601    #x24 #x2A)      ; \e$(C$*\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER RIEUL-MIEUM")
+    (ucs               . #x313B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x11B1)
+    (korean-ksc5601    #x24 #x2B)      ; \e$(C$+\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER RIEUL-PIEUP")
+    (ucs               . #x313C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x11B2)
+    (korean-ksc5601    #x24 #x2C)      ; \e$(C$,\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER RIEUL-SIOS")
+    (ucs               . #x313D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x11B3)
+    (korean-ksc5601    #x24 #x2D)      ; \e$(C$-\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER RIEUL-THIEUTH")
+    (ucs               . #x313E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x11B4)
+    (korean-ksc5601    #x24 #x2E)      ; \e$(C$.\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER RIEUL-PHIEUPH")
+    (ucs               . #x313F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x11B5)
+    (korean-ksc5601    #x24 #x2F)      ; \e$(C$/\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER RIEUL-HIEUH")
+    (ucs               . #x3140)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x111A)
+    (korean-ksc5601    #x24 #x30)      ; \e$(C$0\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER MIEUM")
+    (ucs               . #x3141)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1106)
+    (korean-ksc5601    #x24 #x31)      ; \e$(C$1\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER PIEUP")
+    (ucs               . #x3142)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1107)
+    (korean-ksc5601    #x24 #x32)      ; \e$(C$2\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER SSANGPIEUP")
+    (ucs               . #x3143)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1108)
+    (korean-ksc5601    #x24 #x33)      ; \e$(C$3\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER PIEUP-SIOS")
+    (ucs               . #x3144)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1121)
+    (korean-ksc5601    #x24 #x34)      ; \e$(C$4\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER SIOS")
+    (ucs               . #x3145)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1109)
+    (korean-ksc5601    #x24 #x35)      ; \e$(C$5\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER SSANGSIOS")
+    (ucs               . #x3146)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x110A)
+    (korean-ksc5601    #x24 #x36)      ; \e$(C$6\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER IEUNG")
+    (ucs               . #x3147)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x110B)
+    (korean-ksc5601    #x24 #x37)      ; \e$(C$7\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER CIEUC")
+    (ucs               . #x3148)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x110C)
+    (korean-ksc5601    #x24 #x38)      ; \e$(C$8\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER SSANGCIEUC")
+    (ucs               . #x3149)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x110D)
+    (korean-ksc5601    #x24 #x39)      ; \e$(C$9\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER CHIEUCH")
+    (ucs               . #x314A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x110E)
+    (korean-ksc5601    #x24 #x3A)      ; \e$(C$:\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER KHIEUKH")
+    (ucs               . #x314B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x110F)
+    (korean-ksc5601    #x24 #x3B)      ; \e$(C$;\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER THIEUTH")
+    (ucs               . #x314C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1110)
+    (korean-ksc5601    #x24 #x3C)      ; \e$(C$<\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER PHIEUPH")
+    (ucs               . #x314D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1111)
+    (korean-ksc5601    #x24 #x3D)      ; \e$(C$=\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER HIEUH")
+    (ucs               . #x314E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1112)
+    (korean-ksc5601    #x24 #x3E)      ; \e$(C$>\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER A")
+    (ucs               . #x314F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1161)
+    (korean-ksc5601    #x24 #x3F)      ; \e$(C$?\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER AE")
+    (ucs               . #x3150)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1162)
+    (korean-ksc5601    #x24 #x40)      ; \e$(C$@\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER YA")
+    (ucs               . #x3151)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1163)
+    (korean-ksc5601    #x24 #x41)      ; \e$(C$A\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER YAE")
+    (ucs               . #x3152)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1164)
+    (korean-ksc5601    #x24 #x42)      ; \e$(C$B\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER EO")
+    (ucs               . #x3153)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1165)
+    (korean-ksc5601    #x24 #x43)      ; \e$(C$C\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER E")
+    (ucs               . #x3154)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1166)
+    (korean-ksc5601    #x24 #x44)      ; \e$(C$D\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER YEO")
+    (ucs               . #x3155)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1167)
+    (korean-ksc5601    #x24 #x45)      ; \e$(C$E\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER YE")
+    (ucs               . #x3156)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1168)
+    (korean-ksc5601    #x24 #x46)      ; \e$(C$F\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER O")
+    (ucs               . #x3157)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1169)
+    (korean-ksc5601    #x24 #x47)      ; \e$(C$G\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER WA")
+    (ucs               . #x3158)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x116A)
+    (korean-ksc5601    #x24 #x48)      ; \e$(C$H\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER WAE")
+    (ucs               . #x3159)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x116B)
+    (korean-ksc5601    #x24 #x49)      ; \e$(C$I\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER OE")
+    (ucs               . #x315A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x116C)
+    (korean-ksc5601    #x24 #x4A)      ; \e$(C$J\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER YO")
+    (ucs               . #x315B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x116D)
+    (korean-ksc5601    #x24 #x4B)      ; \e$(C$K\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER U")
+    (ucs               . #x315C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x116E)
+    (korean-ksc5601    #x24 #x4C)      ; \e$(C$L\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER WEO")
+    (ucs               . #x315D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x116F)
+    (korean-ksc5601    #x24 #x4D)      ; \e$(C$M\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER WE")
+    (ucs               . #x315E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1170)
+    (korean-ksc5601    #x24 #x4E)      ; \e$(C$N\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER WI")
+    (ucs               . #x315F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1171)
+    (korean-ksc5601    #x24 #x4F)      ; \e$(C$O\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER YU")
+    (ucs               . #x3160)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1172)
+    (korean-ksc5601    #x24 #x50)      ; \e$(C$P\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER EU")
+    (ucs               . #x3161)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1173)
+    (korean-ksc5601    #x24 #x51)      ; \e$(C$Q\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER YI")
+    (ucs               . #x3162)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1174)
+    (korean-ksc5601    #x24 #x52)      ; \e$(C$R\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER I")
+    (ucs               . #x3163)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1175)
+    (korean-ksc5601    #x24 #x53)      ; \e$(C$S\e(B
+    ))
+(define-char
+  '((name              . "HANGUL FILLER")
+    (ucs               . #x3164)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1160)
+    (korean-ksc5601    #x24 #x54)      ; \e$(C$T\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER SSANGNIEUN")
+    (ucs               . #x3165)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1114)
+    (korean-ksc5601    #x24 #x55)      ; \e$(C$U\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER NIEUN-TIKEUT")
+    (ucs               . #x3166)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1115)
+    (korean-ksc5601    #x24 #x56)      ; \e$(C$V\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER NIEUN-SIOS")
+    (ucs               . #x3167)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x11C7)
+    (korean-ksc5601    #x24 #x57)      ; \e$(C$W\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER NIEUN-PANSIOS")
+    (ucs               . #x3168)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x11C8)
+    (korean-ksc5601    #x24 #x58)      ; \e$(C$X\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER RIEUL-KIYEOK-SIOS")
+    (ucs               . #x3169)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x11CC)
+    (korean-ksc5601    #x24 #x59)      ; \e$(C$Y\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER RIEUL-TIKEUT")
+    (ucs               . #x316A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x11CE)
+    (korean-ksc5601    #x24 #x5A)      ; \e$(C$Z\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER RIEUL-PIEUP-SIOS")
+    (ucs               . #x316B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x11D3)
+    (korean-ksc5601    #x24 #x5B)      ; \e$(C$[\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER RIEUL-PANSIOS")
+    (ucs               . #x316C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x11D7)
+    (korean-ksc5601    #x24 #x5C)      ; \e$(C$\\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER RIEUL-YEORINHIEUH")
+    (ucs               . #x316D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x11D9)
+    (korean-ksc5601    #x24 #x5D)      ; \e$(C$]\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER MIEUM-PIEUP")
+    (ucs               . #x316E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x111C)
+    (korean-ksc5601    #x24 #x5E)      ; \e$(C$^\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER MIEUM-SIOS")
+    (ucs               . #x316F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x11DD)
+    (korean-ksc5601    #x24 #x5F)      ; \e$(C$_\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER MIEUM-PANSIOS")
+    (ucs               . #x3170)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x11DF)
+    (korean-ksc5601    #x24 #x60)      ; \e$(C$`\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER KAPYEOUNMIEUM")
+    (ucs               . #x3171)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x111D)
+    (korean-ksc5601    #x24 #x61)      ; \e$(C$a\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER PIEUP-KIYEOK")
+    (ucs               . #x3172)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x111E)
+    (korean-ksc5601    #x24 #x62)      ; \e$(C$b\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER PIEUP-TIKEUT")
+    (ucs               . #x3173)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1120)
+    (korean-ksc5601    #x24 #x63)      ; \e$(C$c\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER PIEUP-SIOS-KIYEOK")
+    (ucs               . #x3174)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1122)
+    (korean-ksc5601    #x24 #x64)      ; \e$(C$d\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER PIEUP-SIOS-TIKEUT")
+    (ucs               . #x3175)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1123)
+    (korean-ksc5601    #x24 #x65)      ; \e$(C$e\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER PIEUP-CIEUC")
+    (ucs               . #x3176)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1127)
+    (korean-ksc5601    #x24 #x66)      ; \e$(C$f\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER PIEUP-THIEUTH")
+    (ucs               . #x3177)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1129)
+    (korean-ksc5601    #x24 #x67)      ; \e$(C$g\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER KAPYEOUNPIEUP")
+    (ucs               . #x3178)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x112B)
+    (korean-ksc5601    #x24 #x68)      ; \e$(C$h\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER KAPYEOUNSSANGPIEUP")
+    (ucs               . #x3179)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x112C)
+    (korean-ksc5601    #x24 #x69)      ; \e$(C$i\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER SIOS-KIYEOK")
+    (ucs               . #x317A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x112D)
+    (korean-ksc5601    #x24 #x6A)      ; \e$(C$j\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER SIOS-NIEUN")
+    (ucs               . #x317B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x112E)
+    (korean-ksc5601    #x24 #x6B)      ; \e$(C$k\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER SIOS-TIKEUT")
+    (ucs               . #x317C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x112F)
+    (korean-ksc5601    #x24 #x6C)      ; \e$(C$l\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER SIOS-PIEUP")
+    (ucs               . #x317D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1132)
+    (korean-ksc5601    #x24 #x6D)      ; \e$(C$m\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER SIOS-CIEUC")
+    (ucs               . #x317E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1136)
+    (korean-ksc5601    #x24 #x6E)      ; \e$(C$n\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER PANSIOS")
+    (ucs               . #x317F)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1140)
+    (korean-ksc5601    #x24 #x6F)      ; \e$(C$o\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER SSANGIEUNG")
+    (ucs               . #x3180)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1147)
+    (korean-ksc5601    #x24 #x70)      ; \e$(C$p\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER YESIEUNG")
+    (ucs               . #x3181)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x114C)
+    (korean-ksc5601    #x24 #x71)      ; \e$(C$q\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER YESIEUNG-SIOS")
+    (ucs               . #x3182)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x11F1)
+    (korean-ksc5601    #x24 #x72)      ; \e$(C$r\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER YESIEUNG-PANSIOS")
+    (ucs               . #x3183)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x11F2)
+    (korean-ksc5601    #x24 #x73)      ; \e$(C$s\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER KAPYEOUNPHIEUPH")
+    (ucs               . #x3184)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1157)
+    (korean-ksc5601    #x24 #x74)      ; \e$(C$t\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER SSANGHIEUH")
+    (ucs               . #x3185)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1158)
+    (korean-ksc5601    #x24 #x75)      ; \e$(C$u\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER YEORINHIEUH")
+    (ucs               . #x3186)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1159)
+    (korean-ksc5601    #x24 #x76)      ; \e$(C$v\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER YO-YA")
+    (ucs               . #x3187)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1184)
+    (korean-ksc5601    #x24 #x77)      ; \e$(C$w\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER YO-YAE")
+    (ucs               . #x3188)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1185)
+    (korean-ksc5601    #x24 #x78)      ; \e$(C$x\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER YO-I")
+    (ucs               . #x3189)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1188)
+    (korean-ksc5601    #x24 #x79)      ; \e$(C$y\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER YU-YEO")
+    (ucs               . #x318A)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1191)
+    (korean-ksc5601    #x24 #x7A)      ; \e$(C$z\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER YU-YE")
+    (ucs               . #x318B)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1192)
+    (korean-ksc5601    #x24 #x7B)      ; \e$(C${\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER YU-I")
+    (ucs               . #x318C)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x1194)
+    (korean-ksc5601    #x24 #x7C)      ; \e$(C$|\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER ARAEA")
+    (ucs               . #x318D)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x119E)
+    (korean-ksc5601    #x24 #x7D)      ; \e$(C$}\e(B
+    ))
+(define-char
+  '((name              . "HANGUL LETTER ARAEAE")
+    (ucs               . #x318E)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x11A1)
+    (korean-ksc5601    #x24 #x7E)      ; \e$(C$~\e(B
+    ))
diff --git a/lisp/utf-2000/u03190-Kanbun.el b/lisp/utf-2000/u03190-Kanbun.el
new file mode 100644 (file)
index 0000000..1ac60c2
--- /dev/null
@@ -0,0 +1,142 @@
+(define-char
+  '((name              . "IDEOGRAPHIC ANNOTATION LINKING MARK")
+    (ucs               . #x3190)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Kanbun Tateten")
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC ANNOTATION REVERSE MARK")
+    (ucs               . #x3191)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Kaeriten")
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC ANNOTATION ONE MARK")
+    (ucs               . #x3192)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Kaeriten")
+    (->decomposition   super #x4E00)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC ANNOTATION TWO MARK")
+    (ucs               . #x3193)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Kaeriten")
+    (->decomposition   super #x4E8C)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC ANNOTATION THREE MARK")
+    (ucs               . #x3194)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Kaeriten")
+    (->decomposition   super #x4E09)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC ANNOTATION FOUR MARK")
+    (ucs               . #x3195)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Kaeriten")
+    (->decomposition   super #x56DB)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC ANNOTATION TOP MARK")
+    (ucs               . #x3196)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Kaeriten")
+    (->decomposition   super #x4E0A)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC ANNOTATION MIDDLE MARK")
+    (ucs               . #x3197)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Kaeriten")
+    (->decomposition   super #x4E2D)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC ANNOTATION BOTTOM MARK")
+    (ucs               . #x3198)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Kaeriten")
+    (->decomposition   super #x4E0B)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC ANNOTATION FIRST MARK")
+    (ucs               . #x3199)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Kaeriten")
+    (->decomposition   super #x7532)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC ANNOTATION SECOND MARK")
+    (ucs               . #x319A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Kaeriten")
+    (->decomposition   super #x4E59)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC ANNOTATION THIRD MARK")
+    (ucs               . #x319B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Kaeriten")
+    (->decomposition   super #x4E19)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC ANNOTATION FOURTH MARK")
+    (ucs               . #x319C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Kaeriten")
+    (->decomposition   super #x4E01)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC ANNOTATION HEAVEN MARK")
+    (ucs               . #x319D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Kaeriten")
+    (->decomposition   super #x5929)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC ANNOTATION EARTH MARK")
+    (ucs               . #x319E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Kaeriten")
+    (->decomposition   super #x5730)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC ANNOTATION MAN MARK")
+    (ucs               . #x319F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (iso-10646-comment . "Kaeriten")
+    (->decomposition   super #x4EBA)
+    ))
diff --git a/lisp/utf-2000/u031A0-Extended-Bopomofo.el b/lisp/utf-2000/u031A0-Extended-Bopomofo.el
new file mode 100644 (file)
index 0000000..1ac56c8
--- /dev/null
@@ -0,0 +1,168 @@
+(define-char
+  '((name              . "BOPOMOFO LETTER BU")
+    (ucs               . #x31A0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER ZI")
+    (ucs               . #x31A1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER JI")
+    (ucs               . #x31A2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER GU")
+    (ucs               . #x31A3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER EE")
+    (ucs               . #x31A4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER ENN")
+    (ucs               . #x31A5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER OO")
+    (ucs               . #x31A6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER ONN")
+    (ucs               . #x31A7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER IR")
+    (ucs               . #x31A8)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER ANN")
+    (ucs               . #x31A9)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER INN")
+    (ucs               . #x31AA)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER UNN")
+    (ucs               . #x31AB)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER IM")
+    (ucs               . #x31AC)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER NGG")
+    (ucs               . #x31AD)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER AINN")
+    (ucs               . #x31AE)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER AUNN")
+    (ucs               . #x31AF)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER AM")
+    (ucs               . #x31B0)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER OM")
+    (ucs               . #x31B1)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER ONG")
+    (ucs               . #x31B2)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO LETTER INNN")
+    (ucs               . #x31B3)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO FINAL LETTER P")
+    (ucs               . #x31B4)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO FINAL LETTER T")
+    (ucs               . #x31B5)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO FINAL LETTER K")
+    (ucs               . #x31B6)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
+(define-char
+  '((name              . "BOPOMOFO FINAL LETTER H")
+    (ucs               . #x31B7)
+    (general-category  letter other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    ))
diff --git a/lisp/utf-2000/u03200-Enclosed-CJK-Letters-and-Months.el b/lisp/utf-2000/u03200-Enclosed-CJK-Letters-and-Months.el
new file mode 100644 (file)
index 0000000..c33e509
--- /dev/null
@@ -0,0 +1,1694 @@
+(define-char
+  '((name              . "PARENTHESIZED HANGUL KIYEOK")
+    (ucs               . #x3200)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x1100 #x0029)
+    (korean-ksc5601    #x29 #x31)      ; \e$(C)1\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL NIEUN")
+    (ucs               . #x3201)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x1102 #x0029)
+    (korean-ksc5601    #x29 #x32)      ; \e$(C)2\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL TIKEUT")
+    (ucs               . #x3202)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x1103 #x0029)
+    (korean-ksc5601    #x29 #x33)      ; \e$(C)3\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL RIEUL")
+    (ucs               . #x3203)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x1105 #x0029)
+    (korean-ksc5601    #x29 #x34)      ; \e$(C)4\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL MIEUM")
+    (ucs               . #x3204)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x1106 #x0029)
+    (korean-ksc5601    #x29 #x35)      ; \e$(C)5\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL PIEUP")
+    (ucs               . #x3205)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x1107 #x0029)
+    (korean-ksc5601    #x29 #x36)      ; \e$(C)6\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL SIOS")
+    (ucs               . #x3206)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x1109 #x0029)
+    (korean-ksc5601    #x29 #x37)      ; \e$(C)7\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL IEUNG")
+    (ucs               . #x3207)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x110B #x0029)
+    (korean-ksc5601    #x29 #x38)      ; \e$(C)8\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL CIEUC")
+    (ucs               . #x3208)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x110C #x0029)
+    (korean-ksc5601    #x29 #x39)      ; \e$(C)9\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL CHIEUCH")
+    (ucs               . #x3209)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x110E #x0029)
+    (korean-ksc5601    #x29 #x3A)      ; \e$(C):\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL KHIEUKH")
+    (ucs               . #x320A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x110F #x0029)
+    (korean-ksc5601    #x29 #x3B)      ; \e$(C);\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL THIEUTH")
+    (ucs               . #x320B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x1110 #x0029)
+    (korean-ksc5601    #x29 #x3C)      ; \e$(C)<\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL PHIEUPH")
+    (ucs               . #x320C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x1111 #x0029)
+    (korean-ksc5601    #x29 #x3D)      ; \e$(C)=\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL HIEUH")
+    (ucs               . #x320D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x1112 #x0029)
+    (korean-ksc5601    #x29 #x3E)      ; \e$(C)>\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL KIYEOK A")
+    (ucs               . #x320E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x1100 #x1161 #x0029)
+    (korean-ksc5601    #x29 #x3F)      ; \e$(C)?\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL NIEUN A")
+    (ucs               . #x320F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x1102 #x1161 #x0029)
+    (korean-ksc5601    #x29 #x40)      ; \e$(C)@\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL TIKEUT A")
+    (ucs               . #x3210)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x1103 #x1161 #x0029)
+    (korean-ksc5601    #x29 #x41)      ; \e$(C)A\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL RIEUL A")
+    (ucs               . #x3211)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x1105 #x1161 #x0029)
+    (korean-ksc5601    #x29 #x42)      ; \e$(C)B\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL MIEUM A")
+    (ucs               . #x3212)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x1106 #x1161 #x0029)
+    (korean-ksc5601    #x29 #x43)      ; \e$(C)C\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL PIEUP A")
+    (ucs               . #x3213)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x1107 #x1161 #x0029)
+    (korean-ksc5601    #x29 #x44)      ; \e$(C)D\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL SIOS A")
+    (ucs               . #x3214)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x1109 #x1161 #x0029)
+    (korean-ksc5601    #x29 #x45)      ; \e$(C)E\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL IEUNG A")
+    (ucs               . #x3215)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x110B #x1161 #x0029)
+    (korean-ksc5601    #x29 #x46)      ; \e$(C)F\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL CIEUC A")
+    (ucs               . #x3216)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x110C #x1161 #x0029)
+    (korean-ksc5601    #x29 #x47)      ; \e$(C)G\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL CHIEUCH A")
+    (ucs               . #x3217)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x110E #x1161 #x0029)
+    (korean-ksc5601    #x29 #x48)      ; \e$(C)H\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL KHIEUKH A")
+    (ucs               . #x3218)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x110F #x1161 #x0029)
+    (korean-ksc5601    #x29 #x49)      ; \e$(C)I\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL THIEUTH A")
+    (ucs               . #x3219)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x1110 #x1161 #x0029)
+    (korean-ksc5601    #x29 #x4A)      ; \e$(C)J\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL PHIEUPH A")
+    (ucs               . #x321A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x1111 #x1161 #x0029)
+    (korean-ksc5601    #x29 #x4B)      ; \e$(C)K\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL HIEUH A")
+    (ucs               . #x321B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x1112 #x1161 #x0029)
+    (korean-ksc5601    #x29 #x4C)      ; \e$(C)L\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED HANGUL CIEUC U")
+    (ucs               . #x321C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x110C #x116E #x0029)
+    (korean-ksc5601    #x22 #x5F)      ; \e$(C"_\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH ONE")
+    (ucs               . #x3220)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x4E00 #x0029)
+    (chinese-gb2312    #x22 #x65)      ; \e$(A"e\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH TWO")
+    (ucs               . #x3221)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x4E8C #x0029)
+    (chinese-gb2312    #x22 #x66)      ; \e$(A"f\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH THREE")
+    (ucs               . #x3222)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x4E09 #x0029)
+    (chinese-gb2312    #x22 #x67)      ; \e$(A"g\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH FOUR")
+    (ucs               . #x3223)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x56DB #x0029)
+    (chinese-gb2312    #x22 #x68)      ; \e$(A"h\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH FIVE")
+    (ucs               . #x3224)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x4E94 #x0029)
+    (chinese-gb2312    #x22 #x69)      ; \e$(A"i\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH SIX")
+    (ucs               . #x3225)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x516D #x0029)
+    (chinese-gb2312    #x22 #x6A)      ; \e$(A"j\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH SEVEN")
+    (ucs               . #x3226)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x4E03 #x0029)
+    (chinese-gb2312    #x22 #x6B)      ; \e$(A"k\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH EIGHT")
+    (ucs               . #x3227)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x516B #x0029)
+    (chinese-gb2312    #x22 #x6C)      ; \e$(A"l\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH NINE")
+    (ucs               . #x3228)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x4E5D #x0029)
+    (chinese-gb2312    #x22 #x6D)      ; \e$(A"m\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH TEN")
+    (ucs               . #x3229)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x5341 #x0029)
+    (chinese-gb2312    #x22 #x6E)      ; \e$(A"n\e(B
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH MOON")
+    (ucs               . #x322A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x6708 #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH FIRE")
+    (ucs               . #x322B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x706B #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH WATER")
+    (ucs               . #x322C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x6C34 #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH WOOD")
+    (ucs               . #x322D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x6728 #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH METAL")
+    (ucs               . #x322E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x91D1 #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH EARTH")
+    (ucs               . #x322F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x571F #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH SUN")
+    (ucs               . #x3230)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x65E5 #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH STOCK")
+    (ucs               . #x3231)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x682A #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH HAVE")
+    (ucs               . #x3232)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x6709 #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH SOCIETY")
+    (ucs               . #x3233)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x793E #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH NAME")
+    (ucs               . #x3234)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x540D #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH SPECIAL")
+    (ucs               . #x3235)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x7279 #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH FINANCIAL")
+    (ucs               . #x3236)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x8CA1 #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH CONGRATULATION")
+    (ucs               . #x3237)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x795D #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH LABOR")
+    (ucs               . #x3238)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x52B4 #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH REPRESENT")
+    (ucs               . #x3239)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x4EE3 #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH CALL")
+    (ucs               . #x323A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x547C #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH STUDY")
+    (ucs               . #x323B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x5B66 #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH SUPERVISE")
+    (ucs               . #x323C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x76E3 #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH ENTERPRISE")
+    (ucs               . #x323D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x4F01 #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH RESOURCE")
+    (ucs               . #x323E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x8CC7 #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH ALLIANCE")
+    (ucs               . #x323F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x5354 #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH FESTIVAL")
+    (ucs               . #x3240)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x796D #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH REST")
+    (ucs               . #x3241)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x4F11 #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH SELF")
+    (ucs               . #x3242)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x81EA #x0029)
+    ))
+(define-char
+  '((name              . "PARENTHESIZED IDEOGRAPH REACH")
+    (ucs               . #x3243)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0028 #x81F3 #x0029)
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL KIYEOK")
+    (ucs               . #x3260)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x1100)
+    (korean-ksc5601    #x28 #x31)      ; \e$(C(1\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL NIEUN")
+    (ucs               . #x3261)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x1102)
+    (korean-ksc5601    #x28 #x32)      ; \e$(C(2\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL TIKEUT")
+    (ucs               . #x3262)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x1103)
+    (korean-ksc5601    #x28 #x33)      ; \e$(C(3\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL RIEUL")
+    (ucs               . #x3263)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x1105)
+    (korean-ksc5601    #x28 #x34)      ; \e$(C(4\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL MIEUM")
+    (ucs               . #x3264)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x1106)
+    (korean-ksc5601    #x28 #x35)      ; \e$(C(5\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL PIEUP")
+    (ucs               . #x3265)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x1107)
+    (korean-ksc5601    #x28 #x36)      ; \e$(C(6\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL SIOS")
+    (ucs               . #x3266)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x1109)
+    (korean-ksc5601    #x28 #x37)      ; \e$(C(7\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL IEUNG")
+    (ucs               . #x3267)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x110B)
+    (korean-ksc5601    #x28 #x38)      ; \e$(C(8\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL CIEUC")
+    (ucs               . #x3268)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x110C)
+    (korean-ksc5601    #x28 #x39)      ; \e$(C(9\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL CHIEUCH")
+    (ucs               . #x3269)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x110E)
+    (korean-ksc5601    #x28 #x3A)      ; \e$(C(:\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL KHIEUKH")
+    (ucs               . #x326A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x110F)
+    (korean-ksc5601    #x28 #x3B)      ; \e$(C(;\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL THIEUTH")
+    (ucs               . #x326B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x1110)
+    (korean-ksc5601    #x28 #x3C)      ; \e$(C(<\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL PHIEUPH")
+    (ucs               . #x326C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x1111)
+    (korean-ksc5601    #x28 #x3D)      ; \e$(C(=\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL HIEUH")
+    (ucs               . #x326D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x1112)
+    (korean-ksc5601    #x28 #x3E)      ; \e$(C(>\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL KIYEOK A")
+    (ucs               . #x326E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x1100 #x1161)
+    (korean-ksc5601    #x28 #x3F)      ; \e$(C(?\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL NIEUN A")
+    (ucs               . #x326F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x1102 #x1161)
+    (korean-ksc5601    #x28 #x40)      ; \e$(C(@\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL TIKEUT A")
+    (ucs               . #x3270)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x1103 #x1161)
+    (korean-ksc5601    #x28 #x41)      ; \e$(C(A\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL RIEUL A")
+    (ucs               . #x3271)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x1105 #x1161)
+    (korean-ksc5601    #x28 #x42)      ; \e$(C(B\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL MIEUM A")
+    (ucs               . #x3272)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x1106 #x1161)
+    (korean-ksc5601    #x28 #x43)      ; \e$(C(C\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL PIEUP A")
+    (ucs               . #x3273)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x1107 #x1161)
+    (korean-ksc5601    #x28 #x44)      ; \e$(C(D\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL SIOS A")
+    (ucs               . #x3274)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x1109 #x1161)
+    (korean-ksc5601    #x28 #x45)      ; \e$(C(E\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL IEUNG A")
+    (ucs               . #x3275)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x110B #x1161)
+    (korean-ksc5601    #x28 #x46)      ; \e$(C(F\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL CIEUC A")
+    (ucs               . #x3276)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x110C #x1161)
+    (korean-ksc5601    #x28 #x47)      ; \e$(C(G\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL CHIEUCH A")
+    (ucs               . #x3277)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x110E #x1161)
+    (korean-ksc5601    #x28 #x48)      ; \e$(C(H\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL KHIEUKH A")
+    (ucs               . #x3278)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x110F #x1161)
+    (korean-ksc5601    #x28 #x49)      ; \e$(C(I\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL THIEUTH A")
+    (ucs               . #x3279)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x1110 #x1161)
+    (korean-ksc5601    #x28 #x4A)      ; \e$(C(J\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL PHIEUPH A")
+    (ucs               . #x327A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x1111 #x1161)
+    (korean-ksc5601    #x28 #x4B)      ; \e$(C(K\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED HANGUL HIEUH A")
+    (ucs               . #x327B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x1112 #x1161)
+    (korean-ksc5601    #x28 #x4C)      ; \e$(C(L\e(B
+    ))
+(define-char
+  '((name              . "KOREAN STANDARD SYMBOL")
+    (ucs               . #x327F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (korean-ksc5601    #x22 #x5E)      ; \e$(C"^\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH ONE")
+    (ucs               . #x3280)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 1)
+    (->decomposition   circle #x4E00)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH TWO")
+    (ucs               . #x3281)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 2)
+    (->decomposition   circle #x4E8C)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH THREE")
+    (ucs               . #x3282)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 3)
+    (->decomposition   circle #x4E09)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH FOUR")
+    (ucs               . #x3283)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 4)
+    (->decomposition   circle #x56DB)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH FIVE")
+    (ucs               . #x3284)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 5)
+    (->decomposition   circle #x4E94)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH SIX")
+    (ucs               . #x3285)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 6)
+    (->decomposition   circle #x516D)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH SEVEN")
+    (ucs               . #x3286)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 7)
+    (->decomposition   circle #x4E03)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH EIGHT")
+    (ucs               . #x3287)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 8)
+    (->decomposition   circle #x516B)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH NINE")
+    (ucs               . #x3288)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 9)
+    (->decomposition   circle #x4E5D)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH TEN")
+    (ucs               . #x3289)
+    (general-category  number other) ; Normative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (numeric-value     . 10)
+    (->decomposition   circle #x5341)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH MOON")
+    (ucs               . #x328A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x6708)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH FIRE")
+    (ucs               . #x328B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x706B)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH WATER")
+    (ucs               . #x328C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x6C34)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH WOOD")
+    (ucs               . #x328D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x6728)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH METAL")
+    (ucs               . #x328E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x91D1)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH EARTH")
+    (ucs               . #x328F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x571F)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH SUN")
+    (ucs               . #x3290)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x65E5)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH STOCK")
+    (ucs               . #x3291)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x682A)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH HAVE")
+    (ucs               . #x3292)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x6709)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH SOCIETY")
+    (ucs               . #x3293)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x793E)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH NAME")
+    (ucs               . #x3294)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x540D)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH SPECIAL")
+    (ucs               . #x3295)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x7279)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH FINANCIAL")
+    (ucs               . #x3296)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x8CA1)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH CONGRATULATION")
+    (ucs               . #x3297)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x795D)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH LABOR")
+    (ucs               . #x3298)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x52B4)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH SECRET")
+    (ucs               . #x3299)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x79D8)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH MALE")
+    (ucs               . #x329A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x7537)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH FEMALE")
+    (ucs               . #x329B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x5973)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH SUITABLE")
+    (ucs               . #x329C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x9069)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH EXCELLENT")
+    (ucs               . #x329D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x512A)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH PRINT")
+    (ucs               . #x329E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x5370)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH ATTENTION")
+    (ucs               . #x329F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x6CE8)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH ITEM")
+    (ucs               . #x32A0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x9805)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH REST")
+    (ucs               . #x32A1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x4F11)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH COPY")
+    (ucs               . #x32A2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x5199)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH CORRECT")
+    (ucs               . #x32A3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x6B63)
+    (chinese-cns11643-1 #x22 #x21)     ; \e$(G"!\e(B
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH HIGH")
+    (ucs               . #x32A4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x4E0A)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH CENTRE")
+    (ucs               . #x32A5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x4E2D)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH LOW")
+    (ucs               . #x32A6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x4E0B)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH LEFT")
+    (ucs               . #x32A7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x5DE6)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH RIGHT")
+    (ucs               . #x32A8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x53F3)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH MEDICINE")
+    (ucs               . #x32A9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x533B)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH RELIGION")
+    (ucs               . #x32AA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x5B97)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH STUDY")
+    (ucs               . #x32AB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x5B66)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH SUPERVISE")
+    (ucs               . #x32AC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x76E3)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH ENTERPRISE")
+    (ucs               . #x32AD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x4F01)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH RESOURCE")
+    (ucs               . #x32AE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x8CC7)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH ALLIANCE")
+    (ucs               . #x32AF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x5354)
+    ))
+(define-char
+  '((name              . "CIRCLED IDEOGRAPH NIGHT")
+    (ucs               . #x32B0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x591C)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR JANUARY")
+    (ucs               . #x32C0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x6708)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR FEBRUARY")
+    (ucs               . #x32C1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0032 #x6708)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR MARCH")
+    (ucs               . #x32C2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0033 #x6708)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR APRIL")
+    (ucs               . #x32C3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0034 #x6708)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR MAY")
+    (ucs               . #x32C4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0035 #x6708)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR JUNE")
+    (ucs               . #x32C5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0036 #x6708)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR JULY")
+    (ucs               . #x32C6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0037 #x6708)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR AUGUST")
+    (ucs               . #x32C7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0038 #x6708)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR SEPTEMBER")
+    (ucs               . #x32C8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0039 #x6708)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR OCTOBER")
+    (ucs               . #x32C9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x0030 #x6708)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR NOVEMBER")
+    (ucs               . #x32CA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x0031 #x6708)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DECEMBER")
+    (ucs               . #x32CB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x0032 #x6708)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA A")
+    (ucs               . #x32D0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30A2)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA I")
+    (ucs               . #x32D1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30A4)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA U")
+    (ucs               . #x32D2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30A6)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA E")
+    (ucs               . #x32D3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30A8)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA O")
+    (ucs               . #x32D4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30AA)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA KA")
+    (ucs               . #x32D5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30AB)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA KI")
+    (ucs               . #x32D6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30AD)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA KU")
+    (ucs               . #x32D7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30AF)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA KE")
+    (ucs               . #x32D8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30B1)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA KO")
+    (ucs               . #x32D9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30B3)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA SA")
+    (ucs               . #x32DA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30B5)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA SI")
+    (ucs               . #x32DB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30B7)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA SU")
+    (ucs               . #x32DC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30B9)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA SE")
+    (ucs               . #x32DD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30BB)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA SO")
+    (ucs               . #x32DE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30BD)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA TA")
+    (ucs               . #x32DF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30BF)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA TI")
+    (ucs               . #x32E0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30C1)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA TU")
+    (ucs               . #x32E1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30C4)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA TE")
+    (ucs               . #x32E2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30C6)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA TO")
+    (ucs               . #x32E3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30C8)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA NA")
+    (ucs               . #x32E4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30CA)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA NI")
+    (ucs               . #x32E5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30CB)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA NU")
+    (ucs               . #x32E6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30CC)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA NE")
+    (ucs               . #x32E7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30CD)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA NO")
+    (ucs               . #x32E8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30CE)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA HA")
+    (ucs               . #x32E9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30CF)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA HI")
+    (ucs               . #x32EA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30D2)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA HU")
+    (ucs               . #x32EB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30D5)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA HE")
+    (ucs               . #x32EC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30D8)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA HO")
+    (ucs               . #x32ED)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30DB)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA MA")
+    (ucs               . #x32EE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30DE)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA MI")
+    (ucs               . #x32EF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30DF)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA MU")
+    (ucs               . #x32F0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30E0)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA ME")
+    (ucs               . #x32F1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30E1)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA MO")
+    (ucs               . #x32F2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30E2)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA YA")
+    (ucs               . #x32F3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30E4)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA YU")
+    (ucs               . #x32F4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30E6)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA YO")
+    (ucs               . #x32F5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30E8)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA RA")
+    (ucs               . #x32F6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30E9)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA RI")
+    (ucs               . #x32F7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30EA)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA RU")
+    (ucs               . #x32F8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30EB)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA RE")
+    (ucs               . #x32F9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30EC)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA RO")
+    (ucs               . #x32FA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30ED)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA WA")
+    (ucs               . #x32FB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30EF)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA WI")
+    (ucs               . #x32FC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30F0)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA WE")
+    (ucs               . #x32FD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30F1)
+    ))
+(define-char
+  '((name              . "CIRCLED KATAKANA WO")
+    (ucs               . #x32FE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   circle #x30F2)
+    ))
diff --git a/lisp/utf-2000/u03300-CJK-Compatibility.el b/lisp/utf-2000/u03300-CJK-Compatibility.el
new file mode 100644 (file)
index 0000000..41f5dcd
--- /dev/null
@@ -0,0 +1,2083 @@
+(define-char
+  '((name              . "SQUARE APAATO")
+    (ucs               . #x3300)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30A2 #x30D1 #x30FC #x30C8)
+    ))
+(define-char
+  '((name              . "SQUARE ARUHUA")
+    (ucs               . #x3301)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30A2 #x30EB #x30D5 #x30A1)
+    ))
+(define-char
+  '((name              . "SQUARE ANPEA")
+    (ucs               . #x3302)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30A2 #x30F3 #x30DA #x30A2)
+    ))
+(define-char
+  '((name              . "SQUARE AARU")
+    (ucs               . #x3303)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30A2 #x30FC #x30EB)
+    ))
+(define-char
+  '((name              . "SQUARE ININGU")
+    (ucs               . #x3304)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30A4 #x30CB #x30F3 #x30B0)
+    ))
+(define-char
+  '((name              . "SQUARE INTI")
+    (ucs               . #x3305)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30A4 #x30F3 #x30C1)
+    ))
+(define-char
+  '((name              . "SQUARE UON")
+    (ucs               . #x3306)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30A6 #x30A9 #x30F3)
+    ))
+(define-char
+  '((name              . "SQUARE ESUKUUDO")
+    (ucs               . #x3307)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30A8 #x30B9 #x30AF #x30FC #x30C9)
+    ))
+(define-char
+  '((name              . "SQUARE EEKAA")
+    (ucs               . #x3308)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30A8 #x30FC #x30AB #x30FC)
+    ))
+(define-char
+  '((name              . "SQUARE ONSU")
+    (ucs               . #x3309)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30AA #x30F3 #x30B9)
+    ))
+(define-char
+  '((name              . "SQUARE OOMU")
+    (ucs               . #x330A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30AA #x30FC #x30E0)
+    ))
+(define-char
+  '((name              . "SQUARE KAIRI")
+    (ucs               . #x330B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30AB #x30A4 #x30EA)
+    ))
+(define-char
+  '((name              . "SQUARE KARATTO")
+    (ucs               . #x330C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30AB #x30E9 #x30C3 #x30C8)
+    ))
+(define-char
+  '((name              . "SQUARE KARORII")
+    (ucs               . #x330D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30AB #x30ED #x30EA #x30FC)
+    ))
+(define-char
+  '((name              . "SQUARE GARON")
+    (ucs               . #x330E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30AC #x30ED #x30F3)
+    ))
+(define-char
+  '((name              . "SQUARE GANMA")
+    (ucs               . #x330F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30AC #x30F3 #x30DE)
+    ))
+(define-char
+  '((name              . "SQUARE GIGA")
+    (ucs               . #x3310)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30AE #x30AC)
+    ))
+(define-char
+  '((name              . "SQUARE GINII")
+    (ucs               . #x3311)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30AE #x30CB #x30FC)
+    ))
+(define-char
+  '((name              . "SQUARE KYURII")
+    (ucs               . #x3312)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30AD #x30E5 #x30EA #x30FC)
+    ))
+(define-char
+  '((name              . "SQUARE GIRUDAA")
+    (ucs               . #x3313)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30AE #x30EB #x30C0 #x30FC)
+    ))
+(define-char
+  '((name              . "SQUARE KIRO")
+    (ucs               . #x3314)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30AD #x30ED)
+    ))
+(define-char
+  '((name              . "SQUARE KIROGURAMU")
+    (ucs               . #x3315)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30AD #x30ED #x30B0 #x30E9 #x30E0)
+    ))
+(define-char
+  '((name              . "SQUARE KIROMEETORU")
+    (ucs               . #x3316)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30AD #x30ED #x30E1 #x30FC #x30C8 #x30EB)
+    ))
+(define-char
+  '((name              . "SQUARE KIROWATTO")
+    (ucs               . #x3317)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30AD #x30ED #x30EF #x30C3 #x30C8)
+    ))
+(define-char
+  '((name              . "SQUARE GURAMU")
+    (ucs               . #x3318)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30B0 #x30E9 #x30E0)
+    ))
+(define-char
+  '((name              . "SQUARE GURAMUTON")
+    (ucs               . #x3319)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30B0 #x30E9 #x30E0 #x30C8 #x30F3)
+    ))
+(define-char
+  '((name              . "SQUARE KURUZEIRO")
+    (ucs               . #x331A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30AF #x30EB #x30BC #x30A4 #x30ED)
+    ))
+(define-char
+  '((name              . "SQUARE KUROONE")
+    (ucs               . #x331B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30AF #x30ED #x30FC #x30CD)
+    ))
+(define-char
+  '((name              . "SQUARE KEESU")
+    (ucs               . #x331C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30B1 #x30FC #x30B9)
+    ))
+(define-char
+  '((name              . "SQUARE KORUNA")
+    (ucs               . #x331D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30B3 #x30EB #x30CA)
+    ))
+(define-char
+  '((name              . "SQUARE KOOPO")
+    (ucs               . #x331E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30B3 #x30FC #x30DD)
+    ))
+(define-char
+  '((name              . "SQUARE SAIKURU")
+    (ucs               . #x331F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30B5 #x30A4 #x30AF #x30EB)
+    ))
+(define-char
+  '((name              . "SQUARE SANTIIMU")
+    (ucs               . #x3320)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30B5 #x30F3 #x30C1 #x30FC #x30E0)
+    ))
+(define-char
+  '((name              . "SQUARE SIRINGU")
+    (ucs               . #x3321)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30B7 #x30EA #x30F3 #x30B0)
+    ))
+(define-char
+  '((name              . "SQUARE SENTI")
+    (ucs               . #x3322)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30BB #x30F3 #x30C1)
+    ))
+(define-char
+  '((name              . "SQUARE SENTO")
+    (ucs               . #x3323)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30BB #x30F3 #x30C8)
+    ))
+(define-char
+  '((name              . "SQUARE DAASU")
+    (ucs               . #x3324)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30C0 #x30FC #x30B9)
+    ))
+(define-char
+  '((name              . "SQUARE DESI")
+    (ucs               . #x3325)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30C7 #x30B7)
+    ))
+(define-char
+  '((name              . "SQUARE DORU")
+    (ucs               . #x3326)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30C9 #x30EB)
+    ))
+(define-char
+  '((name              . "SQUARE TON")
+    (ucs               . #x3327)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30C8 #x30F3)
+    ))
+(define-char
+  '((name              . "SQUARE NANO")
+    (ucs               . #x3328)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30CA #x30CE)
+    ))
+(define-char
+  '((name              . "SQUARE NOTTO")
+    (ucs               . #x3329)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30CE #x30C3 #x30C8)
+    ))
+(define-char
+  '((name              . "SQUARE HAITU")
+    (ucs               . #x332A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30CF #x30A4 #x30C4)
+    ))
+(define-char
+  '((name              . "SQUARE PAASENTO")
+    (ucs               . #x332B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30D1 #x30FC #x30BB #x30F3 #x30C8)
+    ))
+(define-char
+  '((name              . "SQUARE PAATU")
+    (ucs               . #x332C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30D1 #x30FC #x30C4)
+    ))
+(define-char
+  '((name              . "SQUARE BAARERU")
+    (ucs               . #x332D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30D0 #x30FC #x30EC #x30EB)
+    ))
+(define-char
+  '((name              . "SQUARE PIASUTORU")
+    (ucs               . #x332E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30D4 #x30A2 #x30B9 #x30C8 #x30EB)
+    ))
+(define-char
+  '((name              . "SQUARE PIKURU")
+    (ucs               . #x332F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30D4 #x30AF #x30EB)
+    ))
+(define-char
+  '((name              . "SQUARE PIKO")
+    (ucs               . #x3330)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30D4 #x30B3)
+    ))
+(define-char
+  '((name              . "SQUARE BIRU")
+    (ucs               . #x3331)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30D3 #x30EB)
+    ))
+(define-char
+  '((name              . "SQUARE HUARADDO")
+    (ucs               . #x3332)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30D5 #x30A1 #x30E9 #x30C3 #x30C9)
+    ))
+(define-char
+  '((name              . "SQUARE HUIITO")
+    (ucs               . #x3333)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30D5 #x30A3 #x30FC #x30C8)
+    ))
+(define-char
+  '((name              . "SQUARE BUSSYERU")
+    (ucs               . #x3334)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30D6 #x30C3 #x30B7 #x30A7 #x30EB)
+    ))
+(define-char
+  '((name              . "SQUARE HURAN")
+    (ucs               . #x3335)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30D5 #x30E9 #x30F3)
+    ))
+(define-char
+  '((name              . "SQUARE HEKUTAARU")
+    (ucs               . #x3336)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30D8 #x30AF #x30BF #x30FC #x30EB)
+    ))
+(define-char
+  '((name              . "SQUARE PESO")
+    (ucs               . #x3337)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30DA #x30BD)
+    ))
+(define-char
+  '((name              . "SQUARE PENIHI")
+    (ucs               . #x3338)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30DA #x30CB #x30D2)
+    ))
+(define-char
+  '((name              . "SQUARE HERUTU")
+    (ucs               . #x3339)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30D8 #x30EB #x30C4)
+    ))
+(define-char
+  '((name              . "SQUARE PENSU")
+    (ucs               . #x333A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30DA #x30F3 #x30B9)
+    ))
+(define-char
+  '((name              . "SQUARE PEEZI")
+    (ucs               . #x333B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30DA #x30FC #x30B8)
+    ))
+(define-char
+  '((name              . "SQUARE BEETA")
+    (ucs               . #x333C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30D9 #x30FC #x30BF)
+    ))
+(define-char
+  '((name              . "SQUARE POINTO")
+    (ucs               . #x333D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30DD #x30A4 #x30F3 #x30C8)
+    ))
+(define-char
+  '((name              . "SQUARE BORUTO")
+    (ucs               . #x333E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30DC #x30EB #x30C8)
+    ))
+(define-char
+  '((name              . "SQUARE HON")
+    (ucs               . #x333F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30DB #x30F3)
+    ))
+(define-char
+  '((name              . "SQUARE PONDO")
+    (ucs               . #x3340)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30DD #x30F3 #x30C9)
+    ))
+(define-char
+  '((name              . "SQUARE HOORU")
+    (ucs               . #x3341)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30DB #x30FC #x30EB)
+    ))
+(define-char
+  '((name              . "SQUARE HOON")
+    (ucs               . #x3342)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30DB #x30FC #x30F3)
+    ))
+(define-char
+  '((name              . "SQUARE MAIKURO")
+    (ucs               . #x3343)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30DE #x30A4 #x30AF #x30ED)
+    ))
+(define-char
+  '((name              . "SQUARE MAIRU")
+    (ucs               . #x3344)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30DE #x30A4 #x30EB)
+    ))
+(define-char
+  '((name              . "SQUARE MAHHA")
+    (ucs               . #x3345)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30DE #x30C3 #x30CF)
+    ))
+(define-char
+  '((name              . "SQUARE MARUKU")
+    (ucs               . #x3346)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30DE #x30EB #x30AF)
+    ))
+(define-char
+  '((name              . "SQUARE MANSYON")
+    (ucs               . #x3347)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30DE #x30F3 #x30B7 #x30E7 #x30F3)
+    ))
+(define-char
+  '((name              . "SQUARE MIKURON")
+    (ucs               . #x3348)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30DF #x30AF #x30ED #x30F3)
+    ))
+(define-char
+  '((name              . "SQUARE MIRI")
+    (ucs               . #x3349)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30DF #x30EA)
+    ))
+(define-char
+  '((name              . "SQUARE MIRIBAARU")
+    (ucs               . #x334A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30DF #x30EA #x30D0 #x30FC #x30EB)
+    ))
+(define-char
+  '((name              . "SQUARE MEGA")
+    (ucs               . #x334B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30E1 #x30AC)
+    ))
+(define-char
+  '((name              . "SQUARE MEGATON")
+    (ucs               . #x334C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30E1 #x30AC #x30C8 #x30F3)
+    ))
+(define-char
+  '((name              . "SQUARE MEETORU")
+    (ucs               . #x334D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30E1 #x30FC #x30C8 #x30EB)
+    ))
+(define-char
+  '((name              . "SQUARE YAADO")
+    (ucs               . #x334E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30E4 #x30FC #x30C9)
+    ))
+(define-char
+  '((name              . "SQUARE YAARU")
+    (ucs               . #x334F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30E4 #x30FC #x30EB)
+    ))
+(define-char
+  '((name              . "SQUARE YUAN")
+    (ucs               . #x3350)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30E6 #x30A2 #x30F3)
+    ))
+(define-char
+  '((name              . "SQUARE RITTORU")
+    (ucs               . #x3351)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30EA #x30C3 #x30C8 #x30EB)
+    ))
+(define-char
+  '((name              . "SQUARE RIRA")
+    (ucs               . #x3352)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30EA #x30E9)
+    ))
+(define-char
+  '((name              . "SQUARE RUPII")
+    (ucs               . #x3353)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30EB #x30D4 #x30FC)
+    ))
+(define-char
+  '((name              . "SQUARE RUUBURU")
+    (ucs               . #x3354)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30EB #x30FC #x30D6 #x30EB)
+    ))
+(define-char
+  '((name              . "SQUARE REMU")
+    (ucs               . #x3355)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30EC #x30E0)
+    ))
+(define-char
+  '((name              . "SQUARE RENTOGEN")
+    (ucs               . #x3356)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30EC #x30F3 #x30C8 #x30B2 #x30F3)
+    ))
+(define-char
+  '((name              . "SQUARE WATTO")
+    (ucs               . #x3357)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x30EF #x30C3 #x30C8)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ZERO")
+    (ucs               . #x3358)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0030 #x70B9)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ONE")
+    (ucs               . #x3359)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x70B9)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWO")
+    (ucs               . #x335A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0032 #x70B9)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR THREE")
+    (ucs               . #x335B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0033 #x70B9)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FOUR")
+    (ucs               . #x335C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0034 #x70B9)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FIVE")
+    (ucs               . #x335D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0035 #x70B9)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SIX")
+    (ucs               . #x335E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0036 #x70B9)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SEVEN")
+    (ucs               . #x335F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0037 #x70B9)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR EIGHT")
+    (ucs               . #x3360)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0038 #x70B9)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR NINE")
+    (ucs               . #x3361)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0039 #x70B9)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TEN")
+    (ucs               . #x3362)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x0030 #x70B9)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ELEVEN")
+    (ucs               . #x3363)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x0031 #x70B9)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWELVE")
+    (ucs               . #x3364)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x0032 #x70B9)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR THIRTEEN")
+    (ucs               . #x3365)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x0033 #x70B9)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FOURTEEN")
+    (ucs               . #x3366)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x0034 #x70B9)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR FIFTEEN")
+    (ucs               . #x3367)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x0035 #x70B9)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SIXTEEN")
+    (ucs               . #x3368)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x0036 #x70B9)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR SEVENTEEN")
+    (ucs               . #x3369)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x0037 #x70B9)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR EIGHTEEN")
+    (ucs               . #x336A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x0038 #x70B9)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR NINETEEN")
+    (ucs               . #x336B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x0039 #x70B9)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY")
+    (ucs               . #x336C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0032 #x0030 #x70B9)
+    ))
+(define-char
+  '((name . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-ONE")
+    (ucs               . #x336D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0032 #x0031 #x70B9)
+    ))
+(define-char
+  '((name . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-TWO")
+    (ucs               . #x336E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0032 #x0032 #x70B9)
+    ))
+(define-char
+  '((name . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-THREE")
+    (ucs               . #x336F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0032 #x0033 #x70B9)
+    ))
+(define-char
+  '((name . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-FOUR")
+    (ucs               . #x3370)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0032 #x0034 #x70B9)
+    ))
+(define-char
+  '((name              . "SQUARE HPA")
+    (ucs               . #x3371)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0068 #x0050 #x0061)
+    ))
+(define-char
+  '((name              . "SQUARE DA")
+    (ucs               . #x3372)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0064 #x0061)
+    ))
+(define-char
+  '((name              . "SQUARE AU")
+    (ucs               . #x3373)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0041 #x0055)
+    ))
+(define-char
+  '((name              . "SQUARE BAR")
+    (ucs               . #x3374)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0062 #x0061 #x0072)
+    ))
+(define-char
+  '((name              . "SQUARE OV")
+    (ucs               . #x3375)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006F #x0056)
+    ))
+(define-char
+  '((name              . "SQUARE PC")
+    (ucs               . #x3376)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0070 #x0063)
+    ))
+(define-char
+  '((name              . "SQUARE ERA NAME HEISEI")
+    (ucs               . #x337B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x5E73 #x6210)
+    ))
+(define-char
+  '((name              . "SQUARE ERA NAME SYOUWA")
+    (ucs               . #x337C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x662D #x548C)
+    ))
+(define-char
+  '((name              . "SQUARE ERA NAME TAISYOU")
+    (ucs               . #x337D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x5927 #x6B63)
+    ))
+(define-char
+  '((name              . "SQUARE ERA NAME MEIZI")
+    (ucs               . #x337E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x660E #x6CBB)
+    ))
+(define-char
+  '((name              . "SQUARE CORPORATION")
+    (ucs               . #x337F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x682A #x5F0F #x4F1A #x793E)
+    ))
+(define-char
+  '((name              . "SQUARE PA AMPS")
+    (ucs               . #x3380)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0070 #x0041)
+    (korean-ksc5601    #x27 #x49)      ; \e$(C'I\e(B
+    ))
+(define-char
+  '((name              . "SQUARE NA")
+    (ucs               . #x3381)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006E #x0041)
+    (korean-ksc5601    #x27 #x4A)      ; \e$(C'J\e(B
+    ))
+(define-char
+  '((name              . "SQUARE MU A")
+    (ucs               . #x3382)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x03BC #x0041)
+    (korean-ksc5601    #x27 #x4B)      ; \e$(C'K\e(B
+    ))
+(define-char
+  '((name              . "SQUARE MA")
+    (ucs               . #x3383)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006D #x0041)
+    (korean-ksc5601    #x27 #x4C)      ; \e$(C'L\e(B
+    ))
+(define-char
+  '((name              . "SQUARE KA")
+    (ucs               . #x3384)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006B #x0041)
+    (korean-ksc5601    #x27 #x4D)      ; \e$(C'M\e(B
+    ))
+(define-char
+  '((name              . "SQUARE KB")
+    (ucs               . #x3385)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x004B #x0042)
+    ))
+(define-char
+  '((name              . "SQUARE MB")
+    (ucs               . #x3386)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x004D #x0042)
+    ))
+(define-char
+  '((name              . "SQUARE GB")
+    (ucs               . #x3387)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0047 #x0042)
+    ))
+(define-char
+  '((name              . "SQUARE CAL")
+    (ucs               . #x3388)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0063 #x0061 #x006C)
+    (korean-ksc5601    #x27 #x3A)      ; \e$(C':\e(B
+    ))
+(define-char
+  '((name              . "SQUARE KCAL")
+    (ucs               . #x3389)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006B #x0063 #x0061 #x006C)
+    (korean-ksc5601    #x27 #x3B)      ; \e$(C';\e(B
+    ))
+(define-char
+  '((name              . "SQUARE PF")
+    (ucs               . #x338A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0070 #x0046)
+    (korean-ksc5601    #x27 #x5C)      ; \e$(C'\\e(B
+    ))
+(define-char
+  '((name              . "SQUARE NF")
+    (ucs               . #x338B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006E #x0046)
+    (korean-ksc5601    #x27 #x5D)      ; \e$(C']\e(B
+    ))
+(define-char
+  '((name              . "SQUARE MU F")
+    (ucs               . #x338C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x03BC #x0046)
+    (korean-ksc5601    #x27 #x5E)      ; \e$(C'^\e(B
+    ))
+(define-char
+  '((name              . "SQUARE MU G")
+    (ucs               . #x338D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x03BC #x0067)
+    (korean-ksc5601    #x27 #x36)      ; \e$(C'6\e(B
+    ))
+(define-char
+  '((name              . "SQUARE MG")
+    (ucs               . #x338E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006D #x0067)
+    (korean-ksc5601    #x27 #x37)      ; \e$(C'7\e(B
+    (chinese-cns11643-1 #x22 #x75)     ; \e$(G"u\e(B
+    ))
+(define-char
+  '((name              . "SQUARE KG")
+    (ucs               . #x338F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006B #x0067)
+    (korean-ksc5601    #x27 #x38)      ; \e$(C'8\e(B
+    (chinese-cns11643-1 #x22 #x76)     ; \e$(G"v\e(B
+    ))
+(define-char
+  '((name              . "SQUARE HZ")
+    (ucs               . #x3390)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0048 #x007A)
+    (korean-ksc5601    #x27 #x54)      ; \e$(C'T\e(B
+    ))
+(define-char
+  '((name              . "SQUARE KHZ")
+    (ucs               . #x3391)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006B #x0048 #x007A)
+    (korean-ksc5601    #x27 #x55)      ; \e$(C'U\e(B
+    ))
+(define-char
+  '((name              . "SQUARE MHZ")
+    (ucs               . #x3392)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x004D #x0048 #x007A)
+    (korean-ksc5601    #x27 #x56)      ; \e$(C'V\e(B
+    ))
+(define-char
+  '((name              . "SQUARE GHZ")
+    (ucs               . #x3393)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0047 #x0048 #x007A)
+    (korean-ksc5601    #x27 #x57)      ; \e$(C'W\e(B
+    ))
+(define-char
+  '((name              . "SQUARE THZ")
+    (ucs               . #x3394)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0054 #x0048 #x007A)
+    (korean-ksc5601    #x27 #x58)      ; \e$(C'X\e(B
+    ))
+(define-char
+  '((name              . "SQUARE MU L")
+    (ucs               . #x3395)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x03BC #x2113)
+    (korean-ksc5601    #x27 #x21)      ; \e$(C'!\e(B
+    ))
+(define-char
+  '((name              . "SQUARE ML")
+    (ucs               . #x3396)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006D #x2113)
+    (korean-ksc5601    #x27 #x22)      ; \e$(C'"\e(B
+    ))
+(define-char
+  '((name              . "SQUARE DL")
+    (ucs               . #x3397)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0064 #x2113)
+    (korean-ksc5601    #x27 #x23)      ; \e$(C'#\e(B
+    ))
+(define-char
+  '((name              . "SQUARE KL")
+    (ucs               . #x3398)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006B #x2113)
+    (korean-ksc5601    #x27 #x25)      ; \e$(C'%\e(B
+    ))
+(define-char
+  '((name              . "SQUARE FM")
+    (ucs               . #x3399)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0066 #x006D)
+    (korean-ksc5601    #x27 #x2B)      ; \e$(C'+\e(B
+    ))
+(define-char
+  '((name              . "SQUARE NM")
+    (ucs               . #x339A)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006E #x006D)
+    (korean-ksc5601    #x27 #x2C)      ; \e$(C',\e(B
+    ))
+(define-char
+  '((name              . "SQUARE MU M")
+    (ucs               . #x339B)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x03BC #x006D)
+    (korean-ksc5601    #x27 #x2D)      ; \e$(C'-\e(B
+    ))
+(define-char
+  '((name              . "SQUARE MM")
+    (ucs               . #x339C)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006D #x006D)
+    (korean-ksc5601    #x27 #x2E)      ; \e$(C'.\e(B
+    (chinese-cns11643-1 #x22 #x70)     ; \e$(G"p\e(B
+    ))
+(define-char
+  '((name              . "SQUARE CM")
+    (ucs               . #x339D)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0063 #x006D)
+    (korean-ksc5601    #x27 #x2F)      ; \e$(C'/\e(B
+    (chinese-cns11643-1 #x22 #x71)     ; \e$(G"q\e(B
+    ))
+(define-char
+  '((name              . "SQUARE KM")
+    (ucs               . #x339E)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006B #x006D)
+    (korean-ksc5601    #x27 #x30)      ; \e$(C'0\e(B
+    (chinese-cns11643-1 #x22 #x72)     ; \e$(G"r\e(B
+    ))
+(define-char
+  '((name              . "SQUARE MM SQUARED")
+    (ucs               . #x339F)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006D #x006D #x00B2)
+    (korean-ksc5601    #x27 #x31)      ; \e$(C'1\e(B
+    ))
+(define-char
+  '((name              . "SQUARE CM SQUARED")
+    (ucs               . #x33A0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0063 #x006D #x00B2)
+    (korean-ksc5601    #x27 #x32)      ; \e$(C'2\e(B
+    ))
+(define-char
+  '((name              . "SQUARE M SQUARED")
+    (ucs               . #x33A1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006D #x00B2)
+    (korean-ksc5601    #x27 #x33)      ; \e$(C'3\e(B
+    (chinese-cns11643-1 #x22 #x74)     ; \e$(G"t\e(B
+    ))
+(define-char
+  '((name              . "SQUARE KM SQUARED")
+    (ucs               . #x33A2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006B #x006D #x00B2)
+    (korean-ksc5601    #x27 #x34)      ; \e$(C'4\e(B
+    ))
+(define-char
+  '((name              . "SQUARE MM CUBED")
+    (ucs               . #x33A3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006D #x006D #x00B3)
+    (korean-ksc5601    #x27 #x27)      ; \e$(C''\e(B
+    ))
+(define-char
+  '((name              . "SQUARE CM CUBED")
+    (ucs               . #x33A4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0063 #x006D #x00B3)
+    (korean-ksc5601    #x27 #x28)      ; \e$(C'(\e(B
+    ))
+(define-char
+  '((name              . "SQUARE M CUBED")
+    (ucs               . #x33A5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006D #x00B3)
+    (korean-ksc5601    #x27 #x29)      ; \e$(C')\e(B
+    ))
+(define-char
+  '((name              . "SQUARE KM CUBED")
+    (ucs               . #x33A6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006B #x006D #x00B3)
+    (korean-ksc5601    #x27 #x2A)      ; \e$(C'*\e(B
+    ))
+(define-char
+  '((name              . "SQUARE M OVER S")
+    (ucs               . #x33A7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006D #x2215 #x0073)
+    (korean-ksc5601    #x27 #x3D)      ; \e$(C'=\e(B
+    ))
+(define-char
+  '((name              . "SQUARE M OVER S SQUARED")
+    (ucs               . #x33A8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006D #x2215 #x0073 #x00B2)
+    (korean-ksc5601    #x27 #x3E)      ; \e$(C'>\e(B
+    ))
+(define-char
+  '((name              . "SQUARE PA")
+    (ucs               . #x33A9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0050 #x0061)
+    (korean-ksc5601    #x27 #x65)      ; \e$(C'e\e(B
+    ))
+(define-char
+  '((name              . "SQUARE KPA")
+    (ucs               . #x33AA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006B #x0050 #x0061)
+    (korean-ksc5601    #x27 #x66)      ; \e$(C'f\e(B
+    ))
+(define-char
+  '((name              . "SQUARE MPA")
+    (ucs               . #x33AB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x004D #x0050 #x0061)
+    (korean-ksc5601    #x27 #x67)      ; \e$(C'g\e(B
+    ))
+(define-char
+  '((name              . "SQUARE GPA")
+    (ucs               . #x33AC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0047 #x0050 #x0061)
+    (korean-ksc5601    #x27 #x68)      ; \e$(C'h\e(B
+    ))
+(define-char
+  '((name              . "SQUARE RAD")
+    (ucs               . #x33AD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0072 #x0061 #x0064)
+    (korean-ksc5601    #x27 #x61)      ; \e$(C'a\e(B
+    ))
+(define-char
+  '((name              . "SQUARE RAD OVER S")
+    (ucs               . #x33AE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0072 #x0061 #x0064 #x2215 #x0073)
+    (korean-ksc5601    #x27 #x62)      ; \e$(C'b\e(B
+    ))
+(define-char
+  '((name              . "SQUARE RAD OVER S SQUARED")
+    (ucs               . #x33AF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0072 #x0061 #x0064 #x2215 #x0073 #x00B2)
+    (korean-ksc5601    #x27 #x63)      ; \e$(C'c\e(B
+    ))
+(define-char
+  '((name              . "SQUARE PS")
+    (ucs               . #x33B0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0070 #x0073)
+    (korean-ksc5601    #x27 #x3F)      ; \e$(C'?\e(B
+    ))
+(define-char
+  '((name              . "SQUARE NS")
+    (ucs               . #x33B1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006E #x0073)
+    (korean-ksc5601    #x27 #x40)      ; \e$(C'@\e(B
+    ))
+(define-char
+  '((name              . "SQUARE MU S")
+    (ucs               . #x33B2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x03BC #x0073)
+    (korean-ksc5601    #x27 #x41)      ; \e$(C'A\e(B
+    ))
+(define-char
+  '((name              . "SQUARE MS")
+    (ucs               . #x33B3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006D #x0073)
+    (korean-ksc5601    #x27 #x42)      ; \e$(C'B\e(B
+    ))
+(define-char
+  '((name              . "SQUARE PV")
+    (ucs               . #x33B4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0070 #x0056)
+    (korean-ksc5601    #x27 #x43)      ; \e$(C'C\e(B
+    ))
+(define-char
+  '((name              . "SQUARE NV")
+    (ucs               . #x33B5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006E #x0056)
+    (korean-ksc5601    #x27 #x44)      ; \e$(C'D\e(B
+    ))
+(define-char
+  '((name              . "SQUARE MU V")
+    (ucs               . #x33B6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x03BC #x0056)
+    (korean-ksc5601    #x27 #x45)      ; \e$(C'E\e(B
+    ))
+(define-char
+  '((name              . "SQUARE MV")
+    (ucs               . #x33B7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006D #x0056)
+    (korean-ksc5601    #x27 #x46)      ; \e$(C'F\e(B
+    ))
+(define-char
+  '((name              . "SQUARE KV")
+    (ucs               . #x33B8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006B #x0056)
+    (korean-ksc5601    #x27 #x47)      ; \e$(C'G\e(B
+    ))
+(define-char
+  '((name              . "SQUARE MV MEGA")
+    (ucs               . #x33B9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x004D #x0056)
+    (korean-ksc5601    #x27 #x48)      ; \e$(C'H\e(B
+    ))
+(define-char
+  '((name              . "SQUARE PW")
+    (ucs               . #x33BA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0070 #x0057)
+    (korean-ksc5601    #x27 #x4E)      ; \e$(C'N\e(B
+    ))
+(define-char
+  '((name              . "SQUARE NW")
+    (ucs               . #x33BB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006E #x0057)
+    (korean-ksc5601    #x27 #x4F)      ; \e$(C'O\e(B
+    ))
+(define-char
+  '((name              . "SQUARE MU W")
+    (ucs               . #x33BC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x03BC #x0057)
+    (korean-ksc5601    #x27 #x50)      ; \e$(C'P\e(B
+    ))
+(define-char
+  '((name              . "SQUARE MW")
+    (ucs               . #x33BD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006D #x0057)
+    (korean-ksc5601    #x27 #x51)      ; \e$(C'Q\e(B
+    ))
+(define-char
+  '((name              . "SQUARE KW")
+    (ucs               . #x33BE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006B #x0057)
+    (korean-ksc5601    #x27 #x52)      ; \e$(C'R\e(B
+    ))
+(define-char
+  '((name              . "SQUARE MW MEGA")
+    (ucs               . #x33BF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x004D #x0057)
+    (korean-ksc5601    #x27 #x53)      ; \e$(C'S\e(B
+    ))
+(define-char
+  '((name              . "SQUARE K OHM")
+    (ucs               . #x33C0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006B #x03A9)
+    (korean-ksc5601    #x27 #x5A)      ; \e$(C'Z\e(B
+    ))
+(define-char
+  '((name              . "SQUARE M OHM")
+    (ucs               . #x33C1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x004D #x03A9)
+    (korean-ksc5601    #x27 #x5B)      ; \e$(C'[\e(B
+    ))
+(define-char
+  '((name              . "SQUARE AM")
+    (ucs               . #x33C2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0061 #x002E #x006D #x002E)
+    (korean-ksc5601    #x22 #x63)      ; \e$(C"c\e(B
+    ))
+(define-char
+  '((name              . "SQUARE BQ")
+    (ucs               . #x33C3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0042 #x0071)
+    (korean-ksc5601    #x27 #x6C)      ; \e$(C'l\e(B
+    ))
+(define-char
+  '((name              . "SQUARE CC")
+    (ucs               . #x33C4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0063 #x0063)
+    (korean-ksc5601    #x27 #x26)      ; \e$(C'&\e(B
+    (chinese-cns11643-1 #x22 #x77)     ; \e$(G"w\e(B
+    ))
+(define-char
+  '((name              . "SQUARE CD")
+    (ucs               . #x33C5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0063 #x0064)
+    (korean-ksc5601    #x27 #x60)      ; \e$(C'`\e(B
+    ))
+(define-char
+  '((name              . "SQUARE C OVER KG")
+    (ucs               . #x33C6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0043 #x2215 #x006B #x0067)
+    (korean-ksc5601    #x27 #x6F)      ; \e$(C'o\e(B
+    ))
+(define-char
+  '((name              . "SQUARE CO")
+    (ucs               . #x33C7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0043 #x006F #x002E)
+    (korean-ksc5601    #x22 #x61)      ; \e$(C"a\e(B
+    ))
+(define-char
+  '((name              . "SQUARE DB")
+    (ucs               . #x33C8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0064 #x0042)
+    (korean-ksc5601    #x27 #x3C)      ; \e$(C'<\e(B
+    ))
+(define-char
+  '((name              . "SQUARE GY")
+    (ucs               . #x33C9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0047 #x0079)
+    (korean-ksc5601    #x27 #x6D)      ; \e$(C'm\e(B
+    ))
+(define-char
+  '((name              . "SQUARE HA")
+    (ucs               . #x33CA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0068 #x0061)
+    (korean-ksc5601    #x27 #x35)      ; \e$(C'5\e(B
+    ))
+(define-char
+  '((name              . "SQUARE HP")
+    (ucs               . #x33CB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0048 #x0050)
+    ))
+(define-char
+  '((name              . "SQUARE IN")
+    (ucs               . #x33CC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0069 #x006E)
+    ))
+(define-char
+  '((name              . "SQUARE KK")
+    (ucs               . #x33CD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x004B #x004B)
+    ))
+(define-char
+  '((name              . "SQUARE KM CAPITAL")
+    (ucs               . #x33CE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x004B #x004D)
+    (chinese-cns11643-1 #x22 #x73)     ; \e$(G"s\e(B
+    ))
+(define-char
+  '((name              . "SQUARE KT")
+    (ucs               . #x33CF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006B #x0074)
+    (korean-ksc5601    #x27 #x39)      ; \e$(C'9\e(B
+    ))
+(define-char
+  '((name              . "SQUARE LM")
+    (ucs               . #x33D0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006C #x006D)
+    (korean-ksc5601    #x27 #x6A)      ; \e$(C'j\e(B
+    ))
+(define-char
+  '((name              . "SQUARE LN")
+    (ucs               . #x33D1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006C #x006E)
+    (chinese-cns11643-1 #x22 #x4C)     ; \e$(G"L\e(B
+    ))
+(define-char
+  '((name              . "SQUARE LOG")
+    (ucs               . #x33D2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006C #x006F #x0067)
+    (chinese-cns11643-1 #x22 #x4B)     ; \e$(G"K\e(B
+    ))
+(define-char
+  '((name              . "SQUARE LX")
+    (ucs               . #x33D3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006C #x0078)
+    (korean-ksc5601    #x27 #x6B)      ; \e$(C'k\e(B
+    ))
+(define-char
+  '((name              . "SQUARE MB SMALL")
+    (ucs               . #x33D4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006D #x0062)
+    ))
+(define-char
+  '((name              . "SQUARE MIL")
+    (ucs               . #x33D5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006D #x0069 #x006C)
+    (chinese-cns11643-1 #x22 #x6F)     ; \e$(G"o\e(B
+    ))
+(define-char
+  '((name              . "SQUARE MOL")
+    (ucs               . #x33D6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x006D #x006F #x006C)
+    (korean-ksc5601    #x27 #x5F)      ; \e$(C'_\e(B
+    ))
+(define-char
+  '((name              . "SQUARE PH")
+    (ucs               . #x33D7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0050 #x0048)
+    ))
+(define-char
+  '((name              . "SQUARE PM")
+    (ucs               . #x33D8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0070 #x002E #x006D #x002E)
+    (korean-ksc5601    #x22 #x64)      ; \e$(C"d\e(B
+    ))
+(define-char
+  '((name              . "SQUARE PPM")
+    (ucs               . #x33D9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0050 #x0050 #x004D)
+    ))
+(define-char
+  '((name              . "SQUARE PR")
+    (ucs               . #x33DA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0050 #x0052)
+    ))
+(define-char
+  '((name              . "SQUARE SR")
+    (ucs               . #x33DB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0073 #x0072)
+    (korean-ksc5601    #x27 #x64)      ; \e$(C'd\e(B
+    ))
+(define-char
+  '((name              . "SQUARE SV")
+    (ucs               . #x33DC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0053 #x0076)
+    (korean-ksc5601    #x27 #x6E)      ; \e$(C'n\e(B
+    ))
+(define-char
+  '((name              . "SQUARE WB")
+    (ucs               . #x33DD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   square #x0057 #x0062)
+    (korean-ksc5601    #x27 #x69)      ; \e$(C'i\e(B
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY ONE")
+    (ucs               . #x33E0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWO")
+    (ucs               . #x33E1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0032 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THREE")
+    (ucs               . #x33E2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0033 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FOUR")
+    (ucs               . #x33E3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0034 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FIVE")
+    (ucs               . #x33E4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0035 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SIX")
+    (ucs               . #x33E5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0036 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SEVEN")
+    (ucs               . #x33E6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0037 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY EIGHT")
+    (ucs               . #x33E7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0038 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY NINE")
+    (ucs               . #x33E8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0039 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TEN")
+    (ucs               . #x33E9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x0030 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY ELEVEN")
+    (ucs               . #x33EA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x0031 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWELVE")
+    (ucs               . #x33EB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x0032 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTEEN")
+    (ucs               . #x33EC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x0033 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FOURTEEN")
+    (ucs               . #x33ED)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x0034 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY FIFTEEN")
+    (ucs               . #x33EE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x0035 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SIXTEEN")
+    (ucs               . #x33EF)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x0036 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY SEVENTEEN")
+    (ucs               . #x33F0)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x0037 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY EIGHTEEN")
+    (ucs               . #x33F1)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x0038 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY NINETEEN")
+    (ucs               . #x33F2)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0031 #x0039 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY")
+    (ucs               . #x33F3)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0032 #x0030 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-ONE")
+    (ucs               . #x33F4)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0032 #x0031 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-TWO")
+    (ucs               . #x33F5)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0032 #x0032 #x65E5)
+    ))
+(define-char
+  '((name . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-THREE")
+    (ucs               . #x33F6)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0032 #x0033 #x65E5)
+    ))
+(define-char
+  '((name . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-FOUR")
+    (ucs               . #x33F7)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0032 #x0034 #x65E5)
+    ))
+(define-char
+  '((name . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-FIVE")
+    (ucs               . #x33F8)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0032 #x0035 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-SIX")
+    (ucs               . #x33F9)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0032 #x0036 #x65E5)
+    ))
+(define-char
+  '((name . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-SEVEN")
+    (ucs               . #x33FA)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0032 #x0037 #x65E5)
+    ))
+(define-char
+  '((name . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-EIGHT")
+    (ucs               . #x33FB)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0032 #x0038 #x65E5)
+    ))
+(define-char
+  '((name . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY TWENTY-NINE")
+    (ucs               . #x33FC)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0032 #x0039 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTY")
+    (ucs               . #x33FD)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0033 #x0030 #x65E5)
+    ))
+(define-char
+  '((name              . "IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTY-ONE")
+    (ucs               . #x33FE)
+    (general-category  symbol other) ; Informative Category
+    (bidi-category     . "L")
+    (mirrored          . nil)
+    (->decomposition   compat #x0033 #x0031 #x65E5)
+    ))
index c226726..63e0e71 100644 (file)
@@ -1,3 +1,131 @@
+1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * mule-charset.c (Qsquare): New variable.
+       (to_char_code): Add `Qsquare'.
+       (syms_of_mule_charset): Add new symbol `square'.
+
+1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * mule-charset.c (Qcircle): New variable.
+       (to_char_code): Add `Qcircle'.
+       (syms_of_mule_charset): Add new symbol `circle'.
+
+1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * mule-charset.c (Qfont): New variable.
+       (to_char_code): Add `Qfont'.
+       (syms_of_mule_charset): Add new symbol `font'.
+
+1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * mule-charset.c (Qsub): New variable.
+       (to_char_code): Add `Qsub'.
+       (syms_of_mule_charset): Add new symbol `sub'.
+
+1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * mule-charset.c (Fput_char_attribute): Convert each element of
+       VALUE to GL position if ATTRIBUTE is a GR-set,
+
+1999-11-14  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * mule-charset.c (Fput_char_attribute): Allow GR code-point if a
+       coded-charset is a GR-set.
+
+1999-11-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * mule-charset.c (Fput_char_attribute): Check each element of
+       VALUE is a byte if ATTRIBUTE is a coded-charset or its name.
+
+1999-11-13  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * mule-charset.c (Vcharset_ethiopic_ucs): New variable in
+       UTF-2000.
+       (Qethiopic_ucs): New variable in UTF-2000.
+       (syms_of_mule_charset): Add new symbol `ethiopic-ucs' in UTF-2000.
+       (complex_vars_of_mule_charset): Add new coded-charset
+       `ethiopic-ucs' in UTF-2000.
+
+       * char-ucs.h (LEADING_BYTE_ETHIOPIC_UCS): New macro.
+       (LEADING_BYTE_HIRAGANA_JISX0208): Changed to `(CHARSET_ID_OFFSET -
+       9)'.
+       (LEADING_BYTE_KATAKANA_JISX0208): Changed to `(CHARSET_ID_OFFSET -
+       10)'.
+       (LEADING_BYTE_PRIVATE): Changed to `(CHARSET_ID_OFFSET - 11)'.
+
+1999-11-13  MORIOKA Tomohiko  <tomo@etl.go.jp>
+
+       * mule-charset.c (Fset_charset_mapping_table): Fix problem with
+       `ascii'.
+
+1999-11-12  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * mule-charset.c (Vcharacter_variant_table): New variable.
+       (Q_ucs): New variable.
+       (Fchar_variants): New function.
+       (Fput_char_attribute): Register `->ucs' value to
+       `Vcharacter_variant_table'.
+       (syms_of_mule_charset): Add new function `char-variants' and new
+       symbol `->ucs'.
+       (vars_of_mule_charset): Setup `Vcharacter_variant_table'.
+
+1999-11-12  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * mule-charset.c (get_char_code_table): Allow negative character
+       code.
+       (put_char_code_table): Likewise.
+       (Vcharacter_composition_table): New variable.
+       (Q_decomposition): New variable.
+       (Qwide): New variable.
+       (Qnarrow): New variable.
+       (Qcompat): New variable.
+       (QnoBreak): New variable.
+       (Qsuper): New variable.
+       (Qfraction): New variable.
+       (to_char_code): New function.
+       (Fget_composite_char): New function.
+       (Fput_char_attribute): Register `->decomposition' value to
+       `Vcharacter_composition_table'.
+       (syms_of_mule_charset): Add new function `get-composite-char', new
+       symbol `->decomposition', `wide', `narrow', `compat', `noBreak',
+       `super' and `fraction'.
+       (vars_of_mule_charset): Setup `Vcharacter_composition_table'.
+
+1999-11-12  MORIOKA Tomohiko  <tomo@urania.m17n.org>
+
+       * mule-charset.c (Fchar_attribute_alist): Check the argument is a
+       character; copy the return value.
+
+1999-11-12  MORIOKA Tomohiko  <tomo@etl.go.jp>
+
+       * char-ucs.h (SPLIT_CHAR): Use `split_builtin_char'.
+
+       * mule-charset.c (range_charset_code_point): Must use make_int.
+       (split_builtin_char): New function.
+
+1999-11-12  MORIOKA Tomohiko  <tomo@etl.go.jp>
+
+       * mule-charset.c (char_byte_table): Change name from
+       "char-code-table" to "char-byte-table".
+       (mark_char_code_table): New function.
+       (char_code_table_equal): New function.
+       (char_code_table_hash): New function.
+       (char_code_table_description): New constant.
+       (char_code_table): New type.
+       (make_char_code_table): New function.
+       (copy_char_code_table): New function.
+       (get_char_code_table): Modify for `char_code_table' type.
+       (put_char_code_table): Likewise.
+       (vars_of_mule_charset): Update `utf-2000-version' to 0.12
+       (Kashiwara).
+
+       * char-ucs.h (char_code_table): New type.
+       (XCHAR_CODE_TABLE): New macro.
+       (XSETCHAR_CODE_TABLE): New macro.
+       (CHAR_CODE_TABLE_P): New macro.
+       (GC_CHAR_CODE_TABLE_P): New macro.
+       (struct Lisp_Char_Code_Table): New structure.
+
 1999-11-09  MORIOKA Tomohiko  <tomo@etl.go.jp>
 
        * mule-charset.c (Fmake_charset): Setup byte_offset for
index 108e58a..5a4ab89 100644 (file)
@@ -39,12 +39,29 @@ typedef struct Lisp_Char_Byte_Table Lisp_Char_Byte_Table;
 
 DECLARE_LRECORD (char_byte_table, Lisp_Char_Byte_Table);
 #define XCHAR_BYTE_TABLE(x) \
-  XRECORD (x, char_byte_table, struct Lisp_Char_Byte_Table)
+  XRECORD (x, char_byte_table, Lisp_Char_Byte_Table)
 #define XSETCHAR_BYTE_TABLE(x, p) XSETRECORD (x, p, char_byte_table)
 #define CHAR_BYTE_TABLE_P(x) RECORDP (x, char_byte_table)
 /* #define CHECK_CHAR_BYTE_TABLE(x) CHECK_RECORD (x, char_byte_table)
    char table entries should never escape to Lisp */
 
+
+struct Lisp_Char_Code_Table
+{
+  struct lcrecord_header header;
+
+  Lisp_Object table;
+};
+typedef struct Lisp_Char_Code_Table Lisp_Char_Code_Table;
+
+DECLARE_LRECORD (char_code_table, Lisp_Char_Code_Table);
+#define XCHAR_CODE_TABLE(x) \
+  XRECORD (x, char_code_table, Lisp_Char_Code_Table)
+#define XSETCHAR_CODE_TABLE(x, p) XSETRECORD (x, p, char_code_table)
+#define CHAR_CODE_TABLE_P(x) RECORDP (x, char_code_table)
+/* #define CHECK_CHAR_CODE_TABLE(x) CHECK_RECORD (x, char_code_table)
+   char table entries should never escape to Lisp */
+
 Lisp_Object get_char_code_table (Emchar ch, Lisp_Object table);
 
 
@@ -88,11 +105,13 @@ typedef int Charset_ID;
 /* Big5 Level 2                        2/4 2/{(8),9,10,11} 4/0 '1' */
 #define LEADING_BYTE_CHINESE_BIG5_2    (CHARSET_ID_OFFSET - 7)
 
-#define LEADING_BYTE_HIRAGANA_JISX0208 (CHARSET_ID_OFFSET - 8)
-#define LEADING_BYTE_KATAKANA_JISX0208 (CHARSET_ID_OFFSET - 9)
+#define LEADING_BYTE_ETHIOPIC_UCS      (CHARSET_ID_OFFSET - 8)
+
+#define LEADING_BYTE_HIRAGANA_JISX0208 (CHARSET_ID_OFFSET - 9)
+#define LEADING_BYTE_KATAKANA_JISX0208 (CHARSET_ID_OFFSET - 10)
 
 #define MIN_LEADING_BYTE_PRIVATE       MIN_LEADING_BYTE
-#define MAX_LEADING_BYTE_PRIVATE       (CHARSET_ID_OFFSET - 10)
+#define MAX_LEADING_BYTE_PRIVATE       (CHARSET_ID_OFFSET - 11)
 
 
 /* #define CHARSET_ID_OFFSET_94                (CHARSET_ID_OFFSET - '0') */
@@ -479,6 +498,7 @@ MAKE_CHAR (Lisp_Object charset, int c1, int c2)
 
 extern Lisp_Object Vcharacter_attribute_table;
 
+Lisp_Object split_builtin_char (Emchar c);
 Lisp_Object range_charset_code_point (Lisp_Object charset, Emchar ch);
 Lisp_Object charset_code_point (Lisp_Object charset, Emchar ch);
 
@@ -512,97 +532,7 @@ SPLIT_CHAR (Emchar c)
     }
   
   /* otherwise --- maybe for bootstrap */
-  if (c < MIN_CHAR_OBS_94x94)
-    {
-      if (c <= MAX_CHAR_BASIC_LATIN)
-       {
-         return list2 (Vcharset_ascii, make_int (c));
-       }
-      else if (c < 0xA0)
-       {
-         return list2 (Vcharset_control_1, make_int (c & 0x7F));
-       }
-      else if (c <= 0xff)
-       {
-         return list2 (Vcharset_latin_iso8859_1, make_int (c & 0x7F));
-       }
-      else if ((MIN_CHAR_GREEK <= c) && (c <= MAX_CHAR_GREEK))
-       {
-         return list2 (Vcharset_greek_iso8859_7,
-                       make_int (c - MIN_CHAR_GREEK + 0x20));
-       }
-      else if ((MIN_CHAR_CYRILLIC <= c) && (c <= MAX_CHAR_CYRILLIC))
-       {
-         return list2 (Vcharset_cyrillic_iso8859_5,
-                       make_int (c - MIN_CHAR_CYRILLIC + 0x20));
-       }
-      else if ((MIN_CHAR_HEBREW <= c) && (c <= MAX_CHAR_HEBREW))
-       {
-         return list2 (Vcharset_hebrew_iso8859_8,
-                       make_int (c - MIN_CHAR_HEBREW + 0x20));
-       }
-      else if ((MIN_CHAR_THAI <= c) && (c <= MAX_CHAR_THAI))
-       {
-         return list2 (Vcharset_thai_tis620,
-                       make_int (c - MIN_CHAR_THAI + 0x20));
-       }
-      else if ((MIN_CHAR_HALFWIDTH_KATAKANA <= c)
-              && (c <= MAX_CHAR_HALFWIDTH_KATAKANA))
-       {
-         return list2 (Vcharset_katakana_jisx0201,
-                       make_int (c - MIN_CHAR_HALFWIDTH_KATAKANA + 33));
-       }
-      else
-       {
-         return list3 (Vcharset_ucs_bmp,
-                       make_int (c >> 8), make_int (c & 0xff));
-       }
-    }
-  else if (c <= MAX_CHAR_OBS_94x94)
-    {
-      return list3 (CHARSET_BY_ATTRIBUTES
-                   (CHARSET_TYPE_94X94,
-                    ((c - MIN_CHAR_OBS_94x94) / (94 * 94)) + '@',
-                    CHARSET_LEFT_TO_RIGHT),
-                   make_int ((((c - MIN_CHAR_OBS_94x94) / 94) % 94) + 33),
-                   make_int (((c - MIN_CHAR_OBS_94x94) % 94) + 33));
-    }
-  else if (c <= MAX_CHAR_94)
-    {
-      return list2 (CHARSET_BY_ATTRIBUTES (CHARSET_TYPE_94,
-                                          ((c - MIN_CHAR_94) / 94) + '0',
-                                          CHARSET_LEFT_TO_RIGHT),
-                   make_int (((c - MIN_CHAR_94) % 94) + 33));
-    }
-  else if (c <= MAX_CHAR_96)
-    {
-      return list2 (CHARSET_BY_ATTRIBUTES (CHARSET_TYPE_96,
-                                          ((c - MIN_CHAR_96) / 96) + '0',
-                                          CHARSET_LEFT_TO_RIGHT),
-                   make_int (((c - MIN_CHAR_96) % 96) + 32));
-    }
-  else if (c <= MAX_CHAR_94x94)
-    {
-      return list3 (CHARSET_BY_ATTRIBUTES
-                   (CHARSET_TYPE_94X94,
-                    ((c - MIN_CHAR_94x94) / (94 * 94)) + '0',
-                    CHARSET_LEFT_TO_RIGHT),
-                   make_int ((((c - MIN_CHAR_94x94) / 94) % 94) + 33),
-                   make_int (((c - MIN_CHAR_94x94) % 94) + 33));
-    }
-  else if (c <= MAX_CHAR_96x96)
-    {
-      return list3 (CHARSET_BY_ATTRIBUTES
-                   (CHARSET_TYPE_96X96,
-                    ((c - MIN_CHAR_96x96) / (96 * 96)) + '0',
-                    CHARSET_LEFT_TO_RIGHT),
-                   make_int ((((c - MIN_CHAR_96x96) / 96) % 96) + 32),
-                   make_int (((c - MIN_CHAR_96x96) % 96) + 32));
-    }
-  else
-    {
-      return Qnil;
-    }
+  return split_builtin_char (c);
 }
 
 INLINE_HEADER void breakup_char_1 (Emchar c, Lisp_Object *charset, int *c1, int *c2);
index 6fef08a..628fcdb 100644 (file)
@@ -152,6 +152,7 @@ enum lrecord_type
   lrecord_type_process,
   lrecord_type_charset,
   lrecord_type_char_byte_table,
+  lrecord_type_char_code_table,
   lrecord_type_coding_system,
   lrecord_type_char_table,
   lrecord_type_char_table_entry,
index c74d4ca..1fda19d 100644 (file)
@@ -62,6 +62,7 @@ Lisp_Object Vcharset_ucs_bmp;
 Lisp_Object Vcharset_latin_viscii;
 Lisp_Object Vcharset_latin_viscii_lower;
 Lisp_Object Vcharset_latin_viscii_upper;
+Lisp_Object Vcharset_ethiopic_ucs;
 Lisp_Object Vcharset_hiragana_jisx0208;
 Lisp_Object Vcharset_katakana_jisx0208;
 #endif
@@ -133,6 +134,7 @@ const Bytecount rep_bytes_by_first_byte[0xA0] =
 #endif
 
 #ifdef UTF2000
+
 static Lisp_Object
 mark_char_byte_table (Lisp_Object obj, void (*markobj) (Lisp_Object))
 {
@@ -184,7 +186,7 @@ static const struct lrecord_description char_byte_table_description[] = {
   { XD_END }
 };
 
-DEFINE_LRECORD_IMPLEMENTATION ("char-code-table", char_byte_table,
+DEFINE_LRECORD_IMPLEMENTATION ("char-byte-table", char_byte_table,
                                mark_char_byte_table,
                               internal_object_printer,
                               0, char_byte_table_equal,
@@ -192,7 +194,6 @@ DEFINE_LRECORD_IMPLEMENTATION ("char-code-table", char_byte_table,
                               char_byte_table_description,
                               Lisp_Char_Byte_Table);
 
-
 static Lisp_Object
 make_char_byte_table (Lisp_Object initval)
 {
@@ -232,63 +233,133 @@ copy_char_byte_table (Lisp_Object entry)
   return obj;
 }
 
-#define make_char_code_table(initval) make_char_byte_table(initval)
+
+static Lisp_Object
+mark_char_code_table (Lisp_Object obj, void (*markobj) (Lisp_Object))
+{
+  struct Lisp_Char_Code_Table *cte = XCHAR_CODE_TABLE (obj);
+
+  return cte->table;
+}
+
+static int
+char_code_table_equal (Lisp_Object obj1, Lisp_Object obj2, int depth)
+{
+  struct Lisp_Char_Code_Table *cte1 = XCHAR_CODE_TABLE (obj1);
+  struct Lisp_Char_Code_Table *cte2 = XCHAR_CODE_TABLE (obj2);
+
+  return char_byte_table_equal (cte1->table, cte2->table, depth + 1);
+}
+
+static unsigned long
+char_code_table_hash (Lisp_Object obj, int depth)
+{
+  struct Lisp_Char_Code_Table *cte = XCHAR_CODE_TABLE (obj);
+
+  return char_code_table_hash (cte->table, depth + 1);
+}
+
+static const struct lrecord_description char_code_table_description[] = {
+  { XD_LISP_OBJECT, offsetof (Lisp_Char_Code_Table, table) },
+  { XD_END }
+};
+
+DEFINE_LRECORD_IMPLEMENTATION ("char-code-table", char_code_table,
+                               mark_char_code_table,
+                              internal_object_printer,
+                              0, char_code_table_equal,
+                              char_code_table_hash,
+                              char_code_table_description,
+                              struct Lisp_Char_Code_Table);
+
+static Lisp_Object
+make_char_code_table (Lisp_Object initval)
+{
+  Lisp_Object obj;
+  struct Lisp_Char_Code_Table *cte =
+    alloc_lcrecord_type (struct Lisp_Char_Code_Table,
+                        &lrecord_char_code_table);
+
+  cte->table = make_char_byte_table (initval);
+
+  XSETCHAR_CODE_TABLE (obj, cte);
+  return obj;
+}
+
+static Lisp_Object
+copy_char_code_table (Lisp_Object entry)
+{
+  struct Lisp_Char_Code_Table *cte = XCHAR_CODE_TABLE (entry);
+  Lisp_Object obj;
+  struct Lisp_Char_Code_Table *ctenew =
+    alloc_lcrecord_type (struct Lisp_Char_Code_Table,
+                        &lrecord_char_code_table);
+
+  ctenew->table = copy_char_byte_table (cte->table);
+  XSETCHAR_CODE_TABLE (obj, ctenew);
+  return obj;
+}
+
 
 Lisp_Object
 get_char_code_table (Emchar ch, Lisp_Object table)
 {
-  struct Lisp_Char_Byte_Table* cpt = XCHAR_BYTE_TABLE (table);
-  Lisp_Object ret = cpt->property [ch >> 24];
+  unsigned int code = ch;
+  struct Lisp_Char_Byte_Table* cpt
+    = XCHAR_BYTE_TABLE (XCHAR_CODE_TABLE (table)->table);
+  Lisp_Object ret = cpt->property [(unsigned char)(code >> 24)];
 
   if (CHAR_BYTE_TABLE_P (ret))
     cpt = XCHAR_BYTE_TABLE (ret);
   else
     return ret;
 
-  ret = cpt->property [(unsigned char) (ch >> 16)];
+  ret = cpt->property [(unsigned char) (code >> 16)];
   if (CHAR_BYTE_TABLE_P (ret))
     cpt = XCHAR_BYTE_TABLE (ret);
   else
     return ret;
 
-  ret = cpt->property [(unsigned char) (ch >> 8)];
+  ret = cpt->property [(unsigned char) (code >> 8)];
   if (CHAR_BYTE_TABLE_P (ret))
     cpt = XCHAR_BYTE_TABLE (ret);
   else
     return ret;
   
-  return cpt->property [(unsigned char) ch];
+  return cpt->property [(unsigned char) code];
 }
 
 void
 put_char_code_table (Emchar ch, Lisp_Object value, Lisp_Object table)
 {
-  struct Lisp_Char_Byte_Table* cpt1 = XCHAR_BYTE_TABLE (table);
-  Lisp_Object ret = cpt1->property[ch >> 24];
+  unsigned int code = ch;
+  struct Lisp_Char_Byte_Table* cpt1
+    = XCHAR_BYTE_TABLE (XCHAR_CODE_TABLE (table)->table);
+  Lisp_Object ret = cpt1->property[(unsigned char)(code >> 24)];
 
   if (CHAR_BYTE_TABLE_P (ret))
     {
       struct Lisp_Char_Byte_Table* cpt2 = XCHAR_BYTE_TABLE (ret);
       
-      ret = cpt2->property[(unsigned char)(ch >> 16)];
+      ret = cpt2->property[(unsigned char)(code >> 16)];
       if (CHAR_BYTE_TABLE_P (ret))
        {
          struct Lisp_Char_Byte_Table* cpt3 = XCHAR_BYTE_TABLE (ret);
          
-         ret = cpt3->property[(unsigned char)(ch >> 8)];
+         ret = cpt3->property[(unsigned char)(code >> 8)];
          if (CHAR_BYTE_TABLE_P (ret))
            {
              struct Lisp_Char_Byte_Table* cpt4
                = XCHAR_BYTE_TABLE (ret);
              
-             cpt4->property[(unsigned char)ch] = value;
+             cpt4->property[(unsigned char)code] = value;
            }
          else if (!EQ (ret, value))
            {
              Lisp_Object cpt4 = make_char_byte_table (ret);
              
-             XCHAR_BYTE_TABLE(cpt4)->property[(unsigned char)ch] = value;
-             cpt3->property[(unsigned char)(ch >> 8)] = cpt4;
+             XCHAR_BYTE_TABLE(cpt4)->property[(unsigned char)code] = value;
+             cpt3->property[(unsigned char)(code >> 8)] = cpt4;
            }
        }
       else if (!EQ (ret, value))
@@ -296,10 +367,10 @@ put_char_code_table (Emchar ch, Lisp_Object value, Lisp_Object table)
          Lisp_Object cpt3 = make_char_byte_table (ret);
          Lisp_Object cpt4 = make_char_byte_table (ret);
          
-         XCHAR_BYTE_TABLE(cpt4)->property[(unsigned char)ch] = value;
-         XCHAR_BYTE_TABLE(cpt3)->property[(unsigned char)(ch >> 8)]
+         XCHAR_BYTE_TABLE(cpt4)->property[(unsigned char)code] = value;
+         XCHAR_BYTE_TABLE(cpt3)->property[(unsigned char)(code >> 8)]
            = cpt4;
-         cpt2->property[(unsigned char)(ch >> 16)] = cpt3;
+         cpt2->property[(unsigned char)(code >> 16)] = cpt3;
        }
     }
   else if (!EQ (ret, value))
@@ -308,22 +379,114 @@ put_char_code_table (Emchar ch, Lisp_Object value, Lisp_Object table)
       Lisp_Object cpt3 = make_char_byte_table (ret);
       Lisp_Object cpt4 = make_char_byte_table (ret);
       
-      XCHAR_BYTE_TABLE(cpt4)->property[(unsigned char)ch] = value;
-      XCHAR_BYTE_TABLE(cpt3)->property[(unsigned char)(ch >>  8)] = cpt4;
-      XCHAR_BYTE_TABLE(cpt2)->property[(unsigned char)(ch >> 16)] = cpt3;
-      cpt1->property[(unsigned char)(ch >> 24)] = cpt2;
+      XCHAR_BYTE_TABLE(cpt4)->property[(unsigned char)code] = value;
+      XCHAR_BYTE_TABLE(cpt3)->property[(unsigned char)(code >>  8)] = cpt4;
+      XCHAR_BYTE_TABLE(cpt2)->property[(unsigned char)(code >> 16)] = cpt3;
+      cpt1->property[(unsigned char)(code >> 24)] = cpt2;
     }
 }
 
 
 Lisp_Object Vcharacter_attribute_table;
+Lisp_Object Vcharacter_composition_table;
+Lisp_Object Vcharacter_variant_table;
+
+Lisp_Object Q_decomposition;
+Lisp_Object Q_ucs;
+Lisp_Object Qcompat;
+Lisp_Object QnoBreak;
+Lisp_Object Qfraction;
+Lisp_Object Qsuper;
+Lisp_Object Qsub;
+Lisp_Object Qcircle;
+Lisp_Object Qsquare;
+Lisp_Object Qwide;
+Lisp_Object Qnarrow;
+Lisp_Object Qfont;
+
+Emchar
+to_char_code (Lisp_Object v, char* err_msg, Lisp_Object err_arg)
+{
+  if (INTP (v))
+    return XINT (v);
+  if (CHARP (v))
+    return XCHAR (v);
+  else if (EQ (v, Qcompat))
+    return -1;
+  else if (EQ (v, QnoBreak))
+    return -2;
+  else if (EQ (v, Qfraction))
+    return -3;
+  else if (EQ (v, Qsuper))
+    return -4;
+  else if (EQ (v, Qsub))
+    return -5;
+  else if (EQ (v, Qcircle))
+    return -6;
+  else if (EQ (v, Qsquare))
+    return -7;
+  else if (EQ (v, Qwide))
+    return -8;
+  else if (EQ (v, Qnarrow))
+    return -9;
+  else if (EQ (v, Qfont))
+    return -10;
+  else 
+    signal_simple_error (err_msg, err_arg);
+}
+
+DEFUN ("get-composite-char", Fget_composite_char, 1, 1, 0, /*
+Return character corresponding with list.
+*/
+       (list))
+{
+  Lisp_Object table = Vcharacter_composition_table;
+  Lisp_Object rest = list;
+
+  while (CONSP (rest))
+    {
+      Lisp_Object v = Fcar (rest);
+      Lisp_Object ret;
+      Emchar c = to_char_code (v, "Invalid value for composition", list);
+
+      ret = get_char_code_table (c, table);
+
+      rest = Fcdr (rest);
+      if (NILP (rest))
+       {
+         if (!CHAR_CODE_TABLE_P (ret))
+           return ret;
+         else
+           return Qt;
+       }
+      else if (!CONSP (rest))
+       break;
+      else if (CHAR_CODE_TABLE_P (ret))
+       table = ret;
+      else
+       signal_simple_error ("Invalid table is found with", list);
+    }
+  signal_simple_error ("Invalid value for composition", list);
+}
+
+DEFUN ("char-variants", Fchar_variants, 1, 1, 0, /*
+Return variants of CHARACTER.
+*/
+       (character))
+{
+  CHECK_CHAR (character);
+  return Fcopy_list (get_char_code_table (XCHAR (character),
+                                         Vcharacter_variant_table));
+}
 
 DEFUN ("char-attribute-alist", Fchar_attribute_alist, 1, 1, 0, /*
 Return the alist of attributes of CHARACTER.
 */
        (character))
 {
-  return get_char_code_table (XCHAR (character), Vcharacter_attribute_table);
+  CHECK_CHAR (character);
+  return Fcopy_alist (get_char_code_table (XCHAR (character),
+                                          Vcharacter_attribute_table));
 }
 
 DEFUN ("get-char-attribute", Fget_char_attribute, 2, 2, 0, /*
@@ -421,6 +584,8 @@ Store CHARACTER's ATTRIBUTE with VALUE.
          XCHARSET_DECODING_TABLE (ccs) = v = make_vector (ccs_len, Qnil);
        }
 
+      if (XCHARSET_GRAPHIC (ccs) == 1)
+       value = Fcopy_list (value);
       rest = value;
       i = -1;
       while (CONSP (rest))
@@ -428,9 +593,16 @@ Store CHARACTER's ATTRIBUTE with VALUE.
          Lisp_Object ei = Fcar (rest);
          
          if (!INTP (ei))
-           signal_simple_error ("Invalid value for coded-charset",
-                                value);
-         i = XINT (ei) - XCHARSET_BYTE_OFFSET (ccs);
+           signal_simple_error ("Invalid value for coded-charset", value);
+         i = XINT (ei);
+         if ((i < 0) || (255 < i))
+           signal_simple_error ("Invalid value for coded-charset", value);
+         if (XCHARSET_GRAPHIC (ccs) == 1)
+           {
+             i &= 0x7F;
+             Fsetcar (rest, make_int (i));
+           }
+         i -= XCHARSET_BYTE_OFFSET (ccs);
          nv = XVECTOR_DATA(v)[i];
          rest = Fcdr (rest);
          if (CONSP (rest))
@@ -446,6 +618,57 @@ Store CHARACTER's ATTRIBUTE with VALUE.
        }
       XVECTOR_DATA(v)[i] = character;
     }
+  else if (EQ (attribute, Q_decomposition))
+    {
+      Lisp_Object rest = value;
+      Lisp_Object table = Vcharacter_composition_table;
+
+      if (!CONSP (value))
+       signal_simple_error ("Invalid value for ->decomposition",
+                            value);
+
+      while (CONSP (rest))
+       {
+         Lisp_Object v = Fcar (rest);
+         Lisp_Object ntable;
+         Emchar c
+           = to_char_code (v, "Invalid value for ->decomposition", value);
+
+         rest = Fcdr (rest);
+         if (!CONSP (rest))
+           {
+             put_char_code_table (c, character, table);
+             break;
+           }
+         else
+           {
+             ntable = get_char_code_table (c, table);
+             if (!CHAR_CODE_TABLE_P (ntable))
+               {
+                 ntable = make_char_code_table (Qnil);
+                 put_char_code_table (c, ntable, table);
+               }
+             table = ntable;
+           }
+       }
+    }
+  else if (EQ (attribute, Q_ucs))
+    {
+      Lisp_Object ret;
+      Emchar c;
+
+      if (!INTP (value))
+       signal_simple_error ("Invalid value for ->ucs", value);
+
+      c = XINT (value);
+
+      ret = get_char_code_table (c, Vcharacter_variant_table);
+      if (NILP (Fmemq (character, ret)))
+       {
+         put_char_code_table (c, Fcons (character, ret),
+                              Vcharacter_variant_table);
+       }
+    }
   return put_char_attribute (character, attribute, value);
 }
 
@@ -600,6 +823,7 @@ Lisp_Object Qascii,
   Qlatin_viscii_upper,
   Qvietnamese_viscii_lower,
   Qvietnamese_viscii_upper,
+  Qethiopic_ucs,
   Qhiragana_jisx0208,
   Qkatakana_jisx0208,
 #endif
@@ -1228,7 +1452,8 @@ range_charset_code_point (Lisp_Object charset, Emchar ch)
                              + (XCHARSET_FINAL (charset) - '0') * 94 * 94))
                   >= 0)
                  && (d < 94 * 94))
-               return list2 ((d / 94) + 33, d % 94 + 33);
+               return list2 (make_int ((d / 94) + 33),
+                             make_int (d % 94 + 33));
            }
          else if (XCHARSET_CHARS (charset) == 96)
            {
@@ -1236,7 +1461,8 @@ range_charset_code_point (Lisp_Object charset, Emchar ch)
                              + (XCHARSET_FINAL (charset) - '0') * 96 * 96))
                   >= 0)
                  && (d < 96 * 96))
-               return list2 ((d / 96) + 32, d % 96 + 32);
+               return list2 (make_int ((d / 96) + 32),
+                             make_int (d % 96 + 32));
            }
        }
     }
@@ -1244,6 +1470,102 @@ range_charset_code_point (Lisp_Object charset, Emchar ch)
 }
 
 Lisp_Object
+split_builtin_char (Emchar c)
+{
+  if (c < MIN_CHAR_OBS_94x94)
+    {
+      if (c <= MAX_CHAR_BASIC_LATIN)
+       {
+         return list2 (Vcharset_ascii, make_int (c));
+       }
+      else if (c < 0xA0)
+       {
+         return list2 (Vcharset_control_1, make_int (c & 0x7F));
+       }
+      else if (c <= 0xff)
+       {
+         return list2 (Vcharset_latin_iso8859_1, make_int (c & 0x7F));
+       }
+      else if ((MIN_CHAR_GREEK <= c) && (c <= MAX_CHAR_GREEK))
+       {
+         return list2 (Vcharset_greek_iso8859_7,
+                       make_int (c - MIN_CHAR_GREEK + 0x20));
+       }
+      else if ((MIN_CHAR_CYRILLIC <= c) && (c <= MAX_CHAR_CYRILLIC))
+       {
+         return list2 (Vcharset_cyrillic_iso8859_5,
+                       make_int (c - MIN_CHAR_CYRILLIC + 0x20));
+       }
+      else if ((MIN_CHAR_HEBREW <= c) && (c <= MAX_CHAR_HEBREW))
+       {
+         return list2 (Vcharset_hebrew_iso8859_8,
+                       make_int (c - MIN_CHAR_HEBREW + 0x20));
+       }
+      else if ((MIN_CHAR_THAI <= c) && (c <= MAX_CHAR_THAI))
+       {
+         return list2 (Vcharset_thai_tis620,
+                       make_int (c - MIN_CHAR_THAI + 0x20));
+       }
+      else if ((MIN_CHAR_HALFWIDTH_KATAKANA <= c)
+              && (c <= MAX_CHAR_HALFWIDTH_KATAKANA))
+       {
+         return list2 (Vcharset_katakana_jisx0201,
+                       make_int (c - MIN_CHAR_HALFWIDTH_KATAKANA + 33));
+       }
+      else
+       {
+         return list3 (Vcharset_ucs_bmp,
+                       make_int (c >> 8), make_int (c & 0xff));
+       }
+    }
+  else if (c <= MAX_CHAR_OBS_94x94)
+    {
+      return list3 (CHARSET_BY_ATTRIBUTES
+                   (CHARSET_TYPE_94X94,
+                    ((c - MIN_CHAR_OBS_94x94) / (94 * 94)) + '@',
+                    CHARSET_LEFT_TO_RIGHT),
+                   make_int ((((c - MIN_CHAR_OBS_94x94) / 94) % 94) + 33),
+                   make_int (((c - MIN_CHAR_OBS_94x94) % 94) + 33));
+    }
+  else if (c <= MAX_CHAR_94)
+    {
+      return list2 (CHARSET_BY_ATTRIBUTES (CHARSET_TYPE_94,
+                                          ((c - MIN_CHAR_94) / 94) + '0',
+                                          CHARSET_LEFT_TO_RIGHT),
+                   make_int (((c - MIN_CHAR_94) % 94) + 33));
+    }
+  else if (c <= MAX_CHAR_96)
+    {
+      return list2 (CHARSET_BY_ATTRIBUTES (CHARSET_TYPE_96,
+                                          ((c - MIN_CHAR_96) / 96) + '0',
+                                          CHARSET_LEFT_TO_RIGHT),
+                   make_int (((c - MIN_CHAR_96) % 96) + 32));
+    }
+  else if (c <= MAX_CHAR_94x94)
+    {
+      return list3 (CHARSET_BY_ATTRIBUTES
+                   (CHARSET_TYPE_94X94,
+                    ((c - MIN_CHAR_94x94) / (94 * 94)) + '0',
+                    CHARSET_LEFT_TO_RIGHT),
+                   make_int ((((c - MIN_CHAR_94x94) / 94) % 94) + 33),
+                   make_int (((c - MIN_CHAR_94x94) % 94) + 33));
+    }
+  else if (c <= MAX_CHAR_96x96)
+    {
+      return list3 (CHARSET_BY_ATTRIBUTES
+                   (CHARSET_TYPE_96X96,
+                    ((c - MIN_CHAR_96x96) / (96 * 96)) + '0',
+                    CHARSET_LEFT_TO_RIGHT),
+                   make_int ((((c - MIN_CHAR_96x96) / 96) % 96) + 32),
+                   make_int (((c - MIN_CHAR_96x96) % 96) + 32));
+    }
+  else
+    {
+      return Qnil;
+    }
+}
+
+Lisp_Object
 charset_code_point (Lisp_Object charset, Emchar ch)
 {
   Lisp_Object cdef = get_char_code_table (ch, Vcharacter_attribute_table);
@@ -1848,7 +2170,16 @@ Set mapping-table of CHARSET to TABLE.
     }
   else if (VECTORP (table))
     {
-      if (XVECTOR_LENGTH (table) > CHARSET_CHARS (cs))
+      int ccs_len;
+
+      /* ad-hoc method for `ascii' */
+      if ((CHARSET_CHARS (cs) == 94) &&
+         (CHARSET_BYTE_OFFSET (cs) != 33))
+       ccs_len = 128 - CHARSET_BYTE_OFFSET (cs);
+      else
+       ccs_len = CHARSET_CHARS (cs);
+
+      if (XVECTOR_LENGTH (table) > ccs_len)
        args_out_of_range (table, make_int (CHARSET_CHARS (cs)));
       old_table = CHARSET_DECODING_TABLE(cs);
       CHARSET_DECODING_TABLE(cs) = table;
@@ -2119,6 +2450,7 @@ syms_of_mule_charset (void)
 {
   INIT_LRECORD_IMPLEMENTATION (charset);
   INIT_LRECORD_IMPLEMENTATION (char_byte_table);
+  INIT_LRECORD_IMPLEMENTATION (char_code_table);
 
   DEFSUBR (Fcharsetp);
   DEFSUBR (Ffind_charset);
@@ -2143,6 +2475,8 @@ syms_of_mule_charset (void)
   DEFSUBR (Fget_char_attribute);
   DEFSUBR (Fput_char_attribute);
   DEFSUBR (Fdefine_char);
+  DEFSUBR (Fchar_variants);
+  DEFSUBR (Fget_composite_char);
   DEFSUBR (Fcharset_mapping_table);
   DEFSUBR (Fset_charset_mapping_table);
 #endif
@@ -2193,6 +2527,18 @@ syms_of_mule_charset (void)
   defsymbol (&Qchinese_cns11643_1,     "chinese-cns11643-1");
   defsymbol (&Qchinese_cns11643_2,     "chinese-cns11643-2");
 #ifdef UTF2000
+  defsymbol (&Q_ucs,                   "->ucs");
+  defsymbol (&Q_decomposition,         "->decomposition");
+  defsymbol (&Qcompat,                 "compat");
+  defsymbol (&QnoBreak,                        "noBreak");
+  defsymbol (&Qfraction,               "fraction");
+  defsymbol (&Qsuper,                  "super");
+  defsymbol (&Qsub,                    "sub");
+  defsymbol (&Qcircle,                 "circle");
+  defsymbol (&Qsquare,                 "square");
+  defsymbol (&Qwide,                   "wide");
+  defsymbol (&Qnarrow,                 "narrow");
+  defsymbol (&Qfont,                   "font");
   defsymbol (&Qucs,                    "ucs");
   defsymbol (&Qucs_bmp,                        "ucs-bmp");
   defsymbol (&Qlatin_viscii,           "latin-viscii");
@@ -2200,6 +2546,7 @@ syms_of_mule_charset (void)
   defsymbol (&Qlatin_viscii_upper,     "latin-viscii-upper");
   defsymbol (&Qvietnamese_viscii_lower,        "vietnamese-viscii-lower");
   defsymbol (&Qvietnamese_viscii_upper,        "vietnamese-viscii-upper");
+  defsymbol (&Qethiopic_ucs,           "ethiopic-ucs");
   defsymbol (&Qhiragana_jisx0208,      "hiragana-jisx0208");
   defsymbol (&Qkatakana_jisx0208,      "katakana-jisx0208");
 #endif
@@ -2253,7 +2600,7 @@ Leading-code of private TYPE9N charset of column-width 1.
 #endif
 
 #ifdef UTF2000
-  Vutf_2000_version = build_string("0.11 (Shiki)");
+  Vutf_2000_version = build_string("0.12 (Kashiwara)");
   DEFVAR_LISP ("utf-2000-version", &Vutf_2000_version /*
 Version number of UTF-2000.
 */ );
@@ -2261,6 +2608,12 @@ Version number of UTF-2000.
   staticpro (&Vcharacter_attribute_table);
   Vcharacter_attribute_table = make_char_code_table (Qnil);
 
+  staticpro (&Vcharacter_composition_table);
+  Vcharacter_composition_table = make_char_code_table (Qnil);
+
+  staticpro (&Vcharacter_variant_table);
+  Vcharacter_variant_table = make_char_code_table (Qnil);
+
   Vdefault_coded_charset_priority_list = Qnil;
   DEFVAR_LISP ("default-coded-charset-priority-list",
               &Vdefault_coded_charset_priority_list /*
@@ -2550,6 +2903,16 @@ complex_vars_of_mule_charset (void)
                  build_string ("VISCII 1.1 (Vietnamese)"),
                  build_string ("VISCII1\\.1"),
                  Qnil, 0, 0, 0, 0);
+  staticpro (&Vcharset_ethiopic_ucs);
+  Vcharset_ethiopic_ucs =
+    make_charset (LEADING_BYTE_ETHIOPIC_UCS, Qethiopic_ucs,
+                 CHARSET_TYPE_256X256, 2, 2, 0,
+                 CHARSET_LEFT_TO_RIGHT,
+                 build_string ("Ethiopic (UCS)"),
+                 build_string ("Ethiopic (UCS)"),
+                 build_string ("Ethiopic of UCS"),
+                 build_string ("Ethiopic-Unicode"),
+                 Qnil, 0x1200, 0x137F, 0x1200, 0);
   staticpro (&Vcharset_hiragana_jisx0208);
   Vcharset_hiragana_jisx0208 =
     make_charset (LEADING_BYTE_HIRAGANA_JISX0208, Qhiragana_jisx0208,