chiark / gitweb /
distinguish the different decompositions via a flag bit
authorRichard Kettlewell <rjk@greenend.org.uk>
Sun, 18 Nov 2007 23:49:51 +0000 (23:49 +0000)
committerRichard Kettlewell <rjk@greenend.org.uk>
Sun, 18 Nov 2007 23:49:51 +0000 (23:49 +0000)
lib/unicode.c
lib/unidata.c
lib/unidata.h
scripts/make-unidata

index 26363f2..3c0e637 100644 (file)
@@ -151,6 +151,28 @@ static inline int utf32__boundary_ignorable(enum unicode_Word_Break wb) {
           || wb == unicode_Word_Break_Format);
 }
 
+/** @brief Return the canonical decomposition of @p c
+ * @param c Code point
+ * @return 0-terminated canonical decomposition, or 0
+ */
+static inline const uint32_t *utf32__decomposition_canon(uint32_t c) {
+  const struct unidata *const data = utf32__unidata(c);
+  const uint32_t *const decomp = data->decomp;
+
+  if(decomp && !(data->flags & unicode_compatibility_decomposition))
+    return decomp;
+  else
+    return 0;
+}
+
+/** @brief Return the compatibility decomposition of @p c
+ * @param c Code point
+ * @return 0-terminated decomposition, or 0
+ */
+static inline const uint32_t *utf32__decomposition_compat(uint32_t c) {
+  return utf32__unidata(c)->decomp;
+}
+
 /*@}*/
 /** @defgroup utftransform Functions that transform between different Unicode encoding forms */
 /*@{*/
@@ -209,7 +231,7 @@ error:
  * @param s Source string
  * @param ns Length of source string in code points
  * @param ndp Where to store length of destination string (or NULL)
- * @return Newly allocated destination string or NULL
+ * @return Newly allocated destination string or NULL on error
  *
  * The return value is always 0-terminated.  The value returned via @p *ndp
  * does not include the terminator.
@@ -396,6 +418,11 @@ size_t utf32_iterator_where(utf32_iterator it) {
  * It is an error to position the iterator outside the string (but acceptable
  * to point it at the hypothetical post-final character).  If an invalid value
  * of @p n is specified then the iterator is not changed.
+ *
+ * This function works by backing up and then advancing to reconstruct the
+ * iterator's internal state for position @p n.  The worst case will be O(n)
+ * time complexity (with a worse constant factor that utf32_iterator_advance())
+ * but the typical case is essentially constant-time.
  */
 int utf32_iterator_set(utf32_iterator it, size_t n) {
   /* We can't just jump to position @p n; the @p last[] values will be wrong.
@@ -476,6 +503,11 @@ uint32_t utf32_iterator_code(utf32_iterator it) {
 /** @brief Test for a grapheme boundary
  * @param it Iterator
  * @return Non-0 if pointing just after a grapheme boundary, otherwise 0
+ *
+ * This function identifies default grapheme cluster boundaries as described in
+ * UAX #29 s3.  It returns non-0 if @p it points at the code point just after a
+ * grapheme cluster boundary (including the hypothetical code point just after
+ * the end of the string).
  */
 int utf32_iterator_grapheme_boundary(utf32_iterator it) {
   uint32_t before, after;
@@ -530,6 +562,11 @@ int utf32_iterator_grapheme_boundary(utf32_iterator it) {
 /** @brief Test for a word boundary
  * @param it Iterator
  * @return Non-0 if pointing just after a word boundary, otherwise 0
+ *
+ * This function identifies default word boundaries as described in UAX #29 s4.
+ * It returns non-0 if @p it points at the code point just after a word
+ * boundary (including the hypothetical code point just after the end of the
+ * string) and 0 otherwise.
  */
 int utf32_iterator_word_boundary(utf32_iterator it) {
   enum unicode_Word_Break twobefore, before, after, twoafter;
@@ -701,13 +738,13 @@ static void utf32__sort_ccc(uint32_t *s, size_t ns, uint32_t *buffer) {
 /** @brief Put combining characters into canonical order
  * @param s Pointer to UTF-32 string
  * @param ns Length of @p s
- * @return 0 on success, -1 on error
+ * @return 0 on success, non-0 on error
  *
  * @p s is modified in-place.  See Unicode 5.0 s3.11 for details of the
  * ordering.
  *
  * Currently we only support a maximum of 1024 combining characters after each
- * base character.  If this limit is exceeded then -1 is returned.
+ * base character.  If this limit is exceeded then a non-0 value is returned.
  */
 static int utf32__canonical_ordering(uint32_t *s, size_t ns) {
   size_t nc;
@@ -749,7 +786,7 @@ static int utf32__canonical_ordering(uint32_t *s, size_t ns) {
 
 /** @brief Guts of the decomposition lookup functions */
 #define utf32__decompose_one_generic(WHICH) do {                        \
-  const uint32_t *dc = utf32__unidata(c)->WHICH;                        \
+  const uint32_t *dc = utf32__decomposition_##WHICH(c);                        \
   if(dc) {                                                              \
     /* Found a canonical decomposition in the table */                  \
     while(*dc)                                                          \
@@ -772,7 +809,7 @@ static int utf32__canonical_ordering(uint32_t *s, size_t ns) {
 /** @brief Recursively compute the canonical decomposition of @p c
  * @param d Dynamic string to store decomposition in
  * @param c Code point to decompose (must be a valid!)
- * @return 0 on success, -1 on error
+ * @return 0 on success, non-0 on error
  */
 static void utf32__decompose_one_canon(struct dynstr_ucs4 *d, uint32_t c) {
   utf32__decompose_one_generic(canon);
@@ -781,7 +818,7 @@ static void utf32__decompose_one_canon(struct dynstr_ucs4 *d, uint32_t c) {
 /** @brief Recursively compute the compatibility decomposition of @p c
  * @param d Dynamic string to store decomposition in
  * @param c Code point to decompose (must be a valid!)
- * @return 0 on success, -1 on error
+ * @return 0 on success, non-0 on error
  */
 static void utf32__decompose_one_compat(struct dynstr_ucs4 *d, uint32_t c) {
   utf32__decompose_one_generic(compat);
@@ -815,7 +852,7 @@ error:                                                  \
  * @param s Pointer to string
  * @param ns Length of string
  * @param ndp Where to store length of result
- * @return Pointer to result string, or NULL
+ * @return Pointer to result string, or NULL on error
  *
  * Computes the canonical decomposition of a string and stably sorts combining
  * characters into canonical order.  The result is in Normalization Form D and
@@ -834,7 +871,7 @@ uint32_t *utf32_decompose_canon(const uint32_t *s, size_t ns, size_t *ndp) {
  * @param s Pointer to string
  * @param ns Length of string
  * @param ndp Where to store length of result
- * @return Pointer to result string, or NULL
+ * @return Pointer to result string, or NULL on error
  *
  * Computes the compatibility decomposition of a string and stably sorts
  * combining characters into canonical order.  The result is in Normalization
@@ -864,7 +901,7 @@ uint32_t *utf32_decompose_compat(const uint32_t *s, size_t ns, size_t *ndp) {
  * @param s Pointer to string
  * @param ns Length of string
  * @param ndp Where to store length of result
- * @return Pointer to result string, or NULL
+ * @return Pointer to result string, or NULL on error
  *
  * Case-fold the string at @p s according to full default case-folding rules
  * (s3.13) for caseless matching.  The result will be in NFD.
@@ -913,11 +950,11 @@ error:
   return 0;
 }
 
-/** @brief Compatibilit case-fold @p [s,s+ns)
+/** @brief Compatibility case-fold @p [s,s+ns)
  * @param s Pointer to string
  * @param ns Length of string
  * @param ndp Where to store length of result
- * @return Pointer to result string, or NULL
+ * @return Pointer to result string, or NULL on error
  *
  * Case-fold the string at @p s according to full default case-folding rules
  * (s3.13) for compatibility caseless matching.  The result will be in NFKD.
@@ -995,9 +1032,12 @@ int utf32_cmp(const uint32_t *a, const uint32_t *b) {
  * @return 1 at a grapheme cluster boundary, 0 otherwise
  *
  * This function identifies default grapheme cluster boundaries as described in
- * UAX #29 s3.  It returns 1 if @p n points at the code point just after a
+ * UAX #29 s3.  It returns non-0 if @p n points at the code point just after a
  * grapheme cluster boundary (including the hypothetical code point just after
  * the end of the string).
+ *
+ * This function uses utf32_iterator_set() internally; see that function for
+ * remarks on performance.
  */
 int utf32_is_grapheme_boundary(const uint32_t *s, size_t ns, size_t n) {
   struct utf32_iterator_data it[1];
@@ -1013,8 +1053,11 @@ int utf32_is_grapheme_boundary(const uint32_t *s, size_t ns, size_t n) {
  * @return 1 at a word boundary, 0 otherwise
  *
  * This function identifies default word boundaries as described in UAX #29 s4.
- * It returns 1 if @p n points at the code point just after a word boundary
+ * It returns non-0 if @p n points at the code point just after a word boundary
  * (including the hypothetical code point just after the end of the string).
+ *
+ * This function uses utf32_iterator_set() internally; see that function for
+ * remarks on performance.
  */
 int utf32_is_word_boundary(const uint32_t *s, size_t ns, size_t n) {
   struct utf32_iterator_data it[1];
@@ -1046,7 +1089,7 @@ error:                                                          \
  * @param s Pointer to string
  * @param ns Length of string
  * @param ndp Where to store length of result
- * @return Pointer to result string, or NULL
+ * @return Pointer to result string, or NULL on error
  *
  * Computes the canonical decomposition of a string and stably sorts combining
  * characters into canonical order.  The result is in Normalization Form D and
@@ -1066,7 +1109,7 @@ char *utf8_decompose_canon(const char *s, size_t ns, size_t *ndp) {
  * @param s Pointer to string
  * @param ns Length of string
  * @param ndp Where to store length of result
- * @return Pointer to result string, or NULL
+ * @return Pointer to result string, or NULL on error
  *
  * Computes the compatibility decomposition of a string and stably sorts
  * combining characters into canonical order.  The result is in Normalization
@@ -1086,7 +1129,7 @@ char *utf8_decompose_compat(const char *s, size_t ns, size_t *ndp) {
  * @param s Pointer to string
  * @param ns Length of string
  * @param ndp Where to store length of result
- * @return Pointer to result string, or NULL
+ * @return Pointer to result string, or NULL on error
  *
  * Case-fold the string at @p s according to full default case-folding rules
  * (s3.13).  The result will be in NFD.
@@ -1102,7 +1145,7 @@ char *utf8_casefold_canon(const char *s, size_t ns, size_t *ndp) {
  * @param s Pointer to string
  * @param ns Length of string
  * @param ndp Where to store length of result
- * @return Pointer to result string, or NULL
+ * @return Pointer to result string, or NULL on error
  *
  * Case-fold the string at @p s according to full default case-folding rules
  * (s3.13).  The result will be in NFKD.
index 8799172..09585dd 100644 (file)
@@ -4668,13531 +4668,13531 @@ cf957[]={66638,0},
 cf958[]={66639,0};
 /* 0000-000F */
 static const struct unidata st0[] = {
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBSp},
-{0,0,0,0,Cc,0,GBLF,WBOther,SBSep},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBSp},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBSp},
-{0,0,0,0,Cc,0,GBCR,WBOther,SBSep},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther}
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBSp},
+{0,0,0,Cc,0,GBLF,WBOther,SBSep},
+{0,0,0,Cc,0,GBControl,WBOther,SBSp},
+{0,0,0,Cc,0,GBControl,WBOther,SBSp},
+{0,0,0,Cc,0,GBCR,WBOther,SBSep},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther}
 };
 /* 0010-001F */
 static const struct unidata st1[] = {
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther}
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther}
 };
 /* 0020-002F */
 static const struct unidata st2[] = {
-{0,0,0,0,Zs,0,GBOther,WBOther,SBSp},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Po,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBMidLetter,SBClose},
-{0,0,0,0,Ps,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Pe,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBMidNum,SBOther},
-{0,0,0,0,Pd,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBMidNum,SBATerm},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther}
+{0,0,0,Zs,0,GBOther,WBOther,SBSp},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{0,0,0,Po,0,GBOther,WBOther,SBClose},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBMidLetter,SBClose},
+{0,0,0,Ps,0,GBOther,WBOther,SBClose},
+{0,0,0,Pe,0,GBOther,WBOther,SBClose},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBMidNum,SBOther},
+{0,0,0,Pd,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBMidNum,SBATerm},
+{0,0,0,Po,0,GBOther,WBOther,SBOther}
 };
 /* 0030-003F */
 static const struct unidata st3[] = {
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Po,0,GBOther,WBMidLetter,SBOther},
-{0,0,0,0,Po,0,GBOther,WBMidNum,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm}
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Po,0,GBOther,WBMidLetter,SBOther},
+{0,0,0,Po,0,GBOther,WBMidNum,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm}
 };
 /* 0040-004F */
 static const struct unidata st4[] = {
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,cf0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf1,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf2,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf3,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf4,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf5,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf6,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf7,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf8,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf9,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf10,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf11,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf12,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf13,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf14,0,Lu,0,GBOther,WBALetter,SBUpper}
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,cf0,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf1,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf2,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf3,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf4,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf5,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf6,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf7,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf8,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf9,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf10,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf11,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf12,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf13,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf14,0,Lu,0,GBOther,WBALetter,SBUpper}
 };
 /* 0050-005F */
 static const struct unidata st5[] = {
-{0,0,cf15,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf16,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf17,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf18,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf19,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf20,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf21,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf22,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf23,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf24,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf25,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ps,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Pe,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Pc,0,GBOther,WBExtendNumLet,SBOther}
+{0,cf15,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf16,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf17,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf18,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf19,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf20,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf21,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf22,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf23,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf24,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf25,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ps,0,GBOther,WBOther,SBClose},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Pe,0,GBOther,WBOther,SBClose},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Pc,0,GBOther,WBExtendNumLet,SBOther}
 };
 /* 0060-006F */
 static const struct unidata st6[] = {
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 0070-007F */
 static const struct unidata st7[] = {
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ps,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Pe,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther}
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ps,0,GBOther,WBOther,SBClose},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Pe,0,GBOther,WBOther,SBClose},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther}
 };
 /* 0080-008F */
 static const struct unidata st8[] = {
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBSep},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther},
-{0,0,0,0,Cc,0,GBControl,WBOther,SBOther}
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBSep},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther},
+{0,0,0,Cc,0,GBControl,WBOther,SBOther}
 };
 /* 00A0-00AF */
 static const struct unidata st9[] = {
-{cd0,0,0,0,Zs,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd1,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd2,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Pi,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd3,0,0,0,Sk,0,GBOther,WBOther,SBOther}
+{cd0,0,0,Zs,unicode_compatibility_decomposition,GBOther,WBOther,SBOLetter},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{cd1,0,0,Sk,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{cd2,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{0,0,0,Pi,0,GBOther,WBOther,SBClose},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{cd3,0,0,Sk,unicode_compatibility_decomposition,GBOther,WBOther,SBOther}
 };
 /* 00B0-00BF */
 static const struct unidata st10[] = {
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd4,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd5,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd6,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{cd7,0,cf26,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBMidLetter,SBOther},
-{cd8,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{cd9,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd10,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Pf,0,GBOther,WBOther,SBClose},
-{cd11,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd12,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd13,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther}
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd4,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd5,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd6,0,0,Sk,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd7,cf26,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBMidLetter,SBOther},
+{cd8,0,0,Sk,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd9,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd10,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{0,0,0,Pf,0,GBOther,WBOther,SBClose},
+{cd11,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd12,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd13,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther}
 };
 /* 00C0-00CF */
 static const struct unidata st11[] = {
-{cd14,cd14,cf27,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd15,cd15,cf28,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd16,cd16,cf29,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd17,cd17,cf30,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd18,cd18,cf31,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd19,cd19,cf32,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf33,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd20,cd20,cf34,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd21,cd21,cf35,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd22,cd22,cf36,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd23,cd23,cf37,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd24,cd24,cf38,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd25,cd25,cf39,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd26,cd26,cf40,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd27,cd27,cf41,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd28,cd28,cf42,0,Lu,0,GBOther,WBALetter,SBUpper}
+{cd14,cf27,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd15,cf28,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd16,cf29,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd17,cf30,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd18,cf31,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd19,cf32,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf33,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd20,cf34,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd21,cf35,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd22,cf36,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd23,cf37,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd24,cf38,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd25,cf39,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd26,cf40,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd27,cf41,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd28,cf42,0,Lu,0,GBOther,WBALetter,SBUpper}
 };
 /* 00D0-00DF */
 static const struct unidata st12[] = {
-{0,0,cf43,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd29,cd29,cf44,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd30,cd30,cf45,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd31,cd31,cf46,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd32,cd32,cf47,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd33,cd33,cf48,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd34,cd34,cf49,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,cf50,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd35,cd35,cf51,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd36,cd36,cf52,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd37,cd37,cf53,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd38,cd38,cf54,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd39,cd39,cf55,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf56,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf57,0,Ll,0,GBOther,WBALetter,SBLower}
+{0,cf43,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd29,cf44,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd30,cf45,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd31,cf46,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd32,cf47,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd33,cf48,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd34,cf49,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,cf50,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd35,cf51,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd36,cf52,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd37,cf53,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd38,cf54,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd39,cf55,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf56,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf57,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 00E0-00EF */
 static const struct unidata st13[] = {
-{cd40,cd40,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd41,cd41,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd42,cd42,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd43,cd43,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd44,cd44,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd45,cd45,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd46,cd46,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd47,cd47,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd48,cd48,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd49,cd49,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd50,cd50,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd51,cd51,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd52,cd52,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd53,cd53,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd54,cd54,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd40,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd41,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd42,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd43,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd44,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd45,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd46,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd47,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd48,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd49,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd50,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd51,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd52,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd53,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd54,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 00F0-00FF */
 static const struct unidata st14[] = {
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd55,cd55,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd56,cd56,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd57,cd57,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd58,cd58,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd59,cd59,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd60,cd60,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd61,cd61,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd62,cd62,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd63,cd63,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd64,cd64,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd65,cd65,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd66,cd66,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd55,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd56,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd57,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd58,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd59,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd60,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd61,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd62,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd63,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd64,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd65,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd66,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 0100-010F */
 static const struct unidata st15[] = {
-{cd67,cd67,cf58,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd68,cd68,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd69,cd69,cf59,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd70,cd70,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd71,cd71,cf60,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd72,cd72,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd73,cd73,cf61,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd74,cd74,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd75,cd75,cf62,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd76,cd76,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd77,cd77,cf63,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd78,cd78,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd79,cd79,cf64,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd80,cd80,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd81,cd81,cf65,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd82,cd82,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd67,cf58,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd68,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd69,cf59,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd70,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd71,cf60,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd72,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd73,cf61,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd74,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd75,cf62,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd76,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd77,cf63,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd78,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd79,cf64,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd80,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd81,cf65,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd82,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 0110-011F */
 static const struct unidata st16[] = {
-{0,0,cf66,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd83,cd83,cf67,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd84,cd84,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd85,cd85,cf68,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd86,cd86,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd87,cd87,cf69,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd88,cd88,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd89,cd89,cf70,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd90,cd90,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd91,cd91,cf71,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd92,cd92,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd93,cd93,cf72,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd94,cd94,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd95,cd95,cf73,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd96,cd96,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{0,cf66,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd83,cf67,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd84,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd85,cf68,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd86,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd87,cf69,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd88,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd89,cf70,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd90,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd91,cf71,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd92,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd93,cf72,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd94,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd95,cf73,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd96,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 0120-012F */
 static const struct unidata st17[] = {
-{cd97,cd97,cf74,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd98,cd98,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd99,cd99,cf75,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd100,cd100,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd101,cd101,cf76,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd102,cd102,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf77,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd103,cd103,cf78,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd104,cd104,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd105,cd105,cf79,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd106,cd106,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd107,cd107,cf80,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd108,cd108,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd109,cd109,cf81,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd110,cd110,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd97,cf74,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd98,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd99,cf75,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd100,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd101,cf76,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd102,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf77,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd103,cf78,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd104,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd105,cf79,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd106,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd107,cf80,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd108,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd109,cf81,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd110,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 0130-013F */
 static const struct unidata st18[] = {
-{cd111,cd111,cf82,0,Lu,unicode_normalize_before_casefold,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd112,0,cf83,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd113,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd114,cd114,cf84,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd115,cd115,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd116,cd116,cf85,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd117,cd117,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd118,cd118,cf86,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd119,cd119,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd120,cd120,cf87,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd121,cd121,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd122,cd122,cf88,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd123,cd123,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd124,0,cf89,0,Lu,0,GBOther,WBALetter,SBUpper}
+{cd111,cf82,0,Lu,unicode_normalize_before_casefold,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd112,cf83,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd113,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd114,cf84,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd115,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd116,cf85,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd117,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd118,cf86,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd119,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd120,cf87,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd121,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd122,cf88,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd123,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd124,cf89,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper}
 };
 /* 0140-014F */
 static const struct unidata st19[] = {
-{cd125,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf90,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd126,cd126,cf91,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd127,cd127,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd128,cd128,cf92,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd129,cd129,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd130,cd130,cf93,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd131,cd131,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd132,0,cf94,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf95,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd133,cd133,cf96,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd134,cd134,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd135,cd135,cf97,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd136,cd136,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd125,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{0,cf90,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd126,cf91,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd127,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd128,cf92,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd129,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd130,cf93,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd131,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd132,cf94,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{0,cf95,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd133,cf96,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd134,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd135,cf97,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd136,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 0150-015F */
 static const struct unidata st20[] = {
-{cd137,cd137,cf98,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd138,cd138,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf99,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd139,cd139,cf100,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd140,cd140,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd141,cd141,cf101,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd142,cd142,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd143,cd143,cf102,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd144,cd144,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd145,cd145,cf103,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd146,cd146,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd147,cd147,cf104,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd148,cd148,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd149,cd149,cf105,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd150,cd150,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd137,cf98,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd138,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf99,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd139,cf100,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd140,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd141,cf101,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd142,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd143,cf102,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd144,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd145,cf103,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd146,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd147,cf104,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd148,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd149,cf105,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd150,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 0160-016F */
 static const struct unidata st21[] = {
-{cd151,cd151,cf106,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd152,cd152,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd153,cd153,cf107,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd154,cd154,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd155,cd155,cf108,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd156,cd156,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf109,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd157,cd157,cf110,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd158,cd158,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd159,cd159,cf111,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd160,cd160,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd161,cd161,cf112,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd162,cd162,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd163,cd163,cf113,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd164,cd164,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd151,cf106,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd152,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd153,cf107,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd154,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd155,cf108,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd156,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf109,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd157,cf110,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd158,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd159,cf111,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd160,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd161,cf112,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd162,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd163,cf113,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd164,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 0170-017F */
 static const struct unidata st22[] = {
-{cd165,cd165,cf114,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd166,cd166,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd167,cd167,cf115,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd168,cd168,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd169,cd169,cf116,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd170,cd170,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd171,cd171,cf117,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd172,cd172,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd173,cd173,cf118,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd174,cd174,cf119,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd175,cd175,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd176,cd176,cf120,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd177,cd177,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd178,cd178,cf121,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd179,cd179,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd180,0,cf18,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd165,cf114,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd166,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd167,cf115,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd168,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd169,cf116,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd170,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd171,cf117,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd172,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd173,cf118,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd174,cf119,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd175,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd176,cf120,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd177,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd178,cf121,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd179,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd180,cf18,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower}
 };
 /* 0180-018F */
 static const struct unidata st23[] = {
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf122,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf123,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf124,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf125,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf126,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf127,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf128,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf129,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf130,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf131,0,Lu,0,GBOther,WBALetter,SBUpper}
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf122,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf123,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf124,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf125,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf126,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf127,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf128,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf129,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf130,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf131,0,Lu,0,GBOther,WBALetter,SBUpper}
 };
 /* 0190-019F */
 static const struct unidata st24[] = {
-{0,0,cf132,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf133,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf134,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf135,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf136,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf137,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf138,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf139,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf140,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf141,0,Lu,0,GBOther,WBALetter,SBUpper}
+{0,cf132,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf133,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf134,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf135,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf136,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf137,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf138,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf139,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf140,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf141,0,Lu,0,GBOther,WBALetter,SBUpper}
 };
 /* 01A0-01AF */
 static const struct unidata st25[] = {
-{cd181,cd181,cf142,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd182,cd182,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf143,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf144,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf145,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf146,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf147,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf148,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf149,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd183,cd183,cf150,0,Lu,0,GBOther,WBALetter,SBUpper}
+{cd181,cf142,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd182,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf143,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf144,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf145,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf146,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf147,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf148,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf149,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd183,cf150,0,Lu,0,GBOther,WBALetter,SBUpper}
 };
 /* 01B0-01BF */
 static const struct unidata st26[] = {
-{cd184,cd184,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf151,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf152,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf153,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf154,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf155,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf156,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,cf157,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd184,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf151,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf152,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf153,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf154,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf155,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf156,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,cf157,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 01C0-01CF */
 static const struct unidata st27[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd185,0,cf158,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd186,0,cf158,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd187,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd188,0,cf159,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd189,0,cf159,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd190,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd191,0,cf160,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd192,0,cf160,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd193,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd194,cd194,cf161,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd195,cd195,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd196,cd196,cf162,0,Lu,0,GBOther,WBALetter,SBUpper}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd185,cf158,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd186,cf158,0,Lt,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd187,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd188,cf159,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd189,cf159,0,Lt,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd190,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd191,cf160,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd192,cf160,0,Lt,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd193,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd194,cf161,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd195,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd196,cf162,0,Lu,0,GBOther,WBALetter,SBUpper}
 };
 /* 01D0-01DF */
 static const struct unidata st28[] = {
-{cd197,cd197,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd198,cd198,cf163,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd199,cd199,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd200,cd200,cf164,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd201,cd201,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd202,cd202,cf165,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd203,cd203,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd204,cd204,cf166,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd205,cd205,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd206,cd206,cf167,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd207,cd207,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd208,cd208,cf168,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd209,cd209,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd210,cd210,cf169,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd211,cd211,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd197,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd198,cf163,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd199,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd200,cf164,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd201,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd202,cf165,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd203,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd204,cf166,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd205,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd206,cf167,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd207,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd208,cf168,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd209,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd210,cf169,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd211,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 01E0-01EF */
 static const struct unidata st29[] = {
-{cd212,cd212,cf170,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd213,cd213,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd214,cd214,cf171,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd215,cd215,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf172,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd216,cd216,cf173,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd217,cd217,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd218,cd218,cf174,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd219,cd219,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd220,cd220,cf175,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd221,cd221,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd222,cd222,cf176,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd223,cd223,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd224,cd224,cf177,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd225,cd225,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd212,cf170,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd213,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd214,cf171,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd215,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf172,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd216,cf173,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd217,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd218,cf174,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd219,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd220,cf175,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd221,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd222,cf176,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd223,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd224,cf177,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd225,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 01F0-01FF */
 static const struct unidata st30[] = {
-{cd226,cd226,cf178,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{cd227,0,cf179,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd228,0,cf179,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd229,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd230,cd230,cf180,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd231,cd231,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf181,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf182,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd232,cd232,cf183,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd233,cd233,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd234,cd234,cf184,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd235,cd235,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd236,cd236,cf185,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd237,cd237,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd238,cd238,cf186,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd239,cd239,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd226,cf178,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{cd227,cf179,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd228,cf179,0,Lt,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd229,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd230,cf180,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd231,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf181,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf182,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd232,cf183,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd233,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd234,cf184,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd235,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd236,cf185,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd237,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd238,cf186,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd239,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 0200-020F */
 static const struct unidata st31[] = {
-{cd240,cd240,cf187,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd241,cd241,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd242,cd242,cf188,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd243,cd243,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd244,cd244,cf189,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd245,cd245,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd246,cd246,cf190,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd247,cd247,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd248,cd248,cf191,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd249,cd249,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd250,cd250,cf192,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd251,cd251,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd252,cd252,cf193,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd253,cd253,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd254,cd254,cf194,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd255,cd255,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd240,cf187,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd241,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd242,cf188,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd243,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd244,cf189,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd245,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd246,cf190,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd247,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd248,cf191,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd249,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd250,cf192,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd251,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd252,cf193,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd253,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd254,cf194,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd255,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 0210-021F */
 static const struct unidata st32[] = {
-{cd256,cd256,cf195,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd257,cd257,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd258,cd258,cf196,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd259,cd259,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd260,cd260,cf197,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd261,cd261,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd262,cd262,cf198,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd263,cd263,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd264,cd264,cf199,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd265,cd265,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd266,cd266,cf200,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd267,cd267,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf201,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd268,cd268,cf202,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd269,cd269,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd256,cf195,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd257,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd258,cf196,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd259,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd260,cf197,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd261,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd262,cf198,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd263,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd264,cf199,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd265,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd266,cf200,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd267,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf201,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd268,cf202,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd269,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 0220-022F */
 static const struct unidata st33[] = {
-{0,0,cf203,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf204,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf205,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd270,cd270,cf206,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd271,cd271,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd272,cd272,cf207,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd273,cd273,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd274,cd274,cf208,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd275,cd275,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd276,cd276,cf209,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd277,cd277,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd278,cd278,cf210,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd279,cd279,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{0,cf203,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf204,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf205,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd270,cf206,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd271,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd272,cf207,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd273,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd274,cf208,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd275,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd276,cf209,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd277,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd278,cf210,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd279,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 0230-023F */
 static const struct unidata st34[] = {
-{cd280,cd280,cf211,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd281,cd281,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd282,cd282,cf212,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd283,cd283,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf213,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf214,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf215,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf216,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd280,cf211,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd281,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd282,cf212,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd283,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf213,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf214,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf215,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf216,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 0240-024F */
 static const struct unidata st35[] = {
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf217,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf218,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf219,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf220,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf221,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf222,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf223,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf224,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf225,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf217,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf218,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf219,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf220,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf221,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf222,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf223,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf224,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf225,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 0250-025F */
 static const struct unidata st36[] = {
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 0290-029F */
 static const struct unidata st37[] = {
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 02B0-02BF */
 static const struct unidata st38[] = {
-{cd284,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd285,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd286,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd287,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd288,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd289,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd290,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd291,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd292,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter}
+{cd284,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd285,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd286,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd287,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd288,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd289,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd290,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd291,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd292,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter}
 };
 /* 02C0-02CF */
 static const struct unidata st39[] = {
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lm,0,GBOther,WBALetter,SBLower},
+{0,0,0,Lm,0,GBOther,WBALetter,SBLower},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter}
 };
 /* 02D0-02DF */
 static const struct unidata st40[] = {
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{cd293,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{cd294,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{cd295,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{cd296,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{cd297,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{cd298,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther}
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{cd293,0,0,Sk,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd294,0,0,Sk,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd295,0,0,Sk,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd296,0,0,Sk,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd297,0,0,Sk,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd298,0,0,Sk,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther}
 };
 /* 02E0-02EF */
 static const struct unidata st41[] = {
-{cd299,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd300,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd180,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd301,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd302,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther}
+{cd299,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd300,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd180,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd301,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd302,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther}
 };
 /* 02F0-02FF */
 static const struct unidata st42[] = {
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther}
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther}
 };
 /* 0300-030F */
 static const struct unidata st43[] = {
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 0310-031F */
 static const struct unidata st44[] = {
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,232,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,232,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,216,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,232,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,232,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,216,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 0320-032F */
 static const struct unidata st45[] = {
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,202,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,202,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,202,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,202,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,202,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,202,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,202,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,202,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 0330-033F */
 static const struct unidata st46[] = {
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 0340-034F */
 static const struct unidata st47[] = {
-{cd303,cd303,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{cd304,cd304,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{cd305,cd305,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{cd306,cd306,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,cf226,240,Mn,unicode_normalize_before_casefold,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend}
+{cd303,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{cd304,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{cd305,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{cd306,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,cf226,240,Mn,unicode_normalize_before_casefold,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 0350-035F */
 static const struct unidata st48[] = {
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,232,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,233,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,234,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,234,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,233,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,232,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,233,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,234,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,234,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,233,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 0360-036F */
 static const struct unidata st49[] = {
-{0,0,0,234,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,234,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,233,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,234,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,234,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,233,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 0370-037F */
 static const struct unidata st50[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd307,cd307,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd308,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd309,cd309,0,0,Po,0,GBOther,WBMidNum,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd307,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Sk,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd308,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd309,0,0,Po,0,GBOther,WBMidNum,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0380-038F */
 static const struct unidata st51[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd6,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{cd310,cd310,0,0,Sk,0,GBOther,WBOther,SBOther},
-{cd311,cd311,cf227,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd312,cd312,0,0,Po,0,GBOther,WBOther,SBOther},
-{cd313,cd313,cf228,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd314,cd314,cf229,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd315,cd315,cf230,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd316,cd316,cf231,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd317,cd317,cf232,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd318,cd318,cf233,0,Lu,0,GBOther,WBALetter,SBUpper}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd6,0,0,Sk,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd310,0,0,Sk,0,GBOther,WBOther,SBOther},
+{cd311,cf227,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd312,0,0,Po,0,GBOther,WBOther,SBOther},
+{cd313,cf228,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd314,cf229,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd315,cf230,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd316,cf231,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd317,cf232,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd318,cf233,0,Lu,0,GBOther,WBALetter,SBUpper}
 };
 /* 0390-039F */
 static const struct unidata st52[] = {
-{cd319,cd319,cf234,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{0,0,cf235,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf236,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf237,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf238,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf239,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf240,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf241,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf242,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf226,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf243,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf244,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf26,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf245,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf246,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf247,0,Lu,0,GBOther,WBALetter,SBUpper}
+{cd319,cf234,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{0,cf235,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf236,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf237,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf238,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf239,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf240,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf241,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf242,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf226,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf243,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf244,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf26,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf245,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf246,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf247,0,Lu,0,GBOther,WBALetter,SBUpper}
 };
 /* 03A0-03AF */
 static const struct unidata st53[] = {
-{0,0,cf248,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf249,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,cf250,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf251,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf252,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf253,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf254,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf255,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf256,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd320,cd320,cf257,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd321,cd321,cf258,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd322,cd322,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd323,cd323,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd324,cd324,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd325,cd325,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{0,cf248,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf249,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,cf250,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf251,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf252,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf253,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf254,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf255,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf256,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd320,cf257,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd321,cf258,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd322,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd323,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd324,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd325,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 03B0-03BF */
 static const struct unidata st54[] = {
-{cd326,cd326,cf259,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd326,cf259,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 03C0-03CF */
 static const struct unidata st55[] = {
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf250,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd327,cd327,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd328,cd328,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd329,cd329,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd330,cd330,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd331,cd331,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf250,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd327,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd328,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd329,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd330,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd331,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 03D0-03DF */
 static const struct unidata st56[] = {
-{cd332,0,cf236,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd333,0,cf242,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd334,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd335,cd335,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd336,cd336,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd337,0,cf253,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd338,0,cf248,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf260,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf261,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf262,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf263,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd332,cf236,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd333,cf242,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd334,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd335,0,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd336,0,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd337,cf253,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd338,cf248,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf260,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf261,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf262,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf263,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 03E0-03EF */
 static const struct unidata st57[] = {
-{0,0,cf264,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf265,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf266,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf267,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf268,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf269,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf270,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf271,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{0,cf264,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf265,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf266,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf267,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf268,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf269,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf270,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf271,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 03F0-03FF */
 static const struct unidata st58[] = {
-{cd339,0,cf243,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd340,0,cf249,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd341,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd342,0,cf242,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd343,0,cf239,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,cf272,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd344,0,cf273,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf274,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf275,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf276,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf277,0,Lu,0,GBOther,WBALetter,SBUpper}
+{cd339,cf243,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd340,cf249,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd341,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd342,cf242,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd343,cf239,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,cf272,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd344,cf273,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{0,cf274,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf275,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf276,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf277,0,Lu,0,GBOther,WBALetter,SBUpper}
 };
 /* 0400-040F */
 static const struct unidata st59[] = {
-{cd345,cd345,cf278,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd346,cd346,cf279,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf280,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd347,cd347,cf281,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf282,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf283,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf284,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd348,cd348,cf285,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf286,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf287,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf288,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf289,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd349,cd349,cf290,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd350,cd350,cf291,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd351,cd351,cf292,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf293,0,Lu,0,GBOther,WBALetter,SBUpper}
+{cd345,cf278,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd346,cf279,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf280,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd347,cf281,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf282,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf283,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf284,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd348,cf285,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf286,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf287,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf288,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf289,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd349,cf290,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd350,cf291,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd351,cf292,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf293,0,Lu,0,GBOther,WBALetter,SBUpper}
 };
 /* 0410-041F */
 static const struct unidata st60[] = {
-{0,0,cf294,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf295,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf296,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf297,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf298,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf299,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf300,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf301,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf302,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd352,cd352,cf303,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf304,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf305,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf306,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf307,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf308,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf309,0,Lu,0,GBOther,WBALetter,SBUpper}
+{0,cf294,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf295,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf296,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf297,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf298,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf299,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf300,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf301,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf302,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd352,cf303,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf304,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf305,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf306,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf307,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf308,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf309,0,Lu,0,GBOther,WBALetter,SBUpper}
 };
 /* 0420-042F */
 static const struct unidata st61[] = {
-{0,0,cf310,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf311,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf312,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf313,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf314,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf315,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf316,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf317,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf318,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf319,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf320,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf321,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf322,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf323,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf324,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf325,0,Lu,0,GBOther,WBALetter,SBUpper}
+{0,cf310,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf311,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf312,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf313,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf314,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf315,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf316,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf317,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf318,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf319,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf320,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf321,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf322,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf323,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf324,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf325,0,Lu,0,GBOther,WBALetter,SBUpper}
 };
 /* 0430-043F */
 static const struct unidata st62[] = {
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd353,cd353,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd353,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 0450-045F */
 static const struct unidata st63[] = {
-{cd354,cd354,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd355,cd355,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd356,cd356,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd357,cd357,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd358,cd358,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd359,cd359,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd360,cd360,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd354,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd355,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd356,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd357,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd358,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd359,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd360,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 0460-046F */
 static const struct unidata st64[] = {
-{0,0,cf326,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf327,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf328,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf329,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf330,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf331,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf332,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf333,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{0,cf326,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf327,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf328,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf329,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf330,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf331,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf332,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf333,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 0470-047F */
 static const struct unidata st65[] = {
-{0,0,cf334,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf335,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf336,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd361,cd361,cf337,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd362,cd362,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf338,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf339,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf340,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf341,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{0,cf334,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf335,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf336,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd361,cf337,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd362,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf338,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf339,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf340,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf341,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 0480-048F */
 static const struct unidata st66[] = {
-{0,0,cf342,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Me,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Me,0,GBExtend,WBExtend,SBExtend},
-{0,0,cf343,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf344,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf345,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{0,cf342,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Me,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Me,0,GBExtend,WBExtend,SBExtend},
+{0,cf343,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf344,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf345,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 0490-049F */
 static const struct unidata st67[] = {
-{0,0,cf346,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf347,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf348,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf349,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf350,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf351,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf352,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf353,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{0,cf346,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf347,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf348,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf349,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf350,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf351,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf352,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf353,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 04A0-04AF */
 static const struct unidata st68[] = {
-{0,0,cf354,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf355,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf356,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf357,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf358,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf359,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf360,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf361,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{0,cf354,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf355,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf356,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf357,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf358,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf359,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf360,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf361,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 04B0-04BF */
 static const struct unidata st69[] = {
-{0,0,cf362,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf363,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf364,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf365,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf366,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf367,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf368,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf369,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{0,cf362,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf363,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf364,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf365,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf366,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf367,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf368,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf369,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 04C0-04CF */
 static const struct unidata st70[] = {
-{0,0,cf370,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd363,cd363,cf371,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd364,cd364,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf372,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf373,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf374,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf375,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf376,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf377,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{0,cf370,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd363,cf371,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd364,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf372,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf373,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf374,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf375,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf376,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf377,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 04D0-04DF */
 static const struct unidata st71[] = {
-{cd365,cd365,cf378,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd366,cd366,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd367,cd367,cf379,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd368,cd368,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf380,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd369,cd369,cf381,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd370,cd370,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf382,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd371,cd371,cf383,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd372,cd372,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd373,cd373,cf384,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd374,cd374,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd375,cd375,cf385,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd376,cd376,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd365,cf378,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd366,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd367,cf379,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd368,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf380,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd369,cf381,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd370,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf382,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd371,cf383,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd372,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd373,cf384,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd374,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd375,cf385,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd376,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 04E0-04EF */
 static const struct unidata st72[] = {
-{0,0,cf386,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd377,cd377,cf387,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd378,cd378,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd379,cd379,cf388,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd380,cd380,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd381,cd381,cf389,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd382,cd382,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf390,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd383,cd383,cf391,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd384,cd384,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd385,cd385,cf392,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd386,cd386,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd387,cd387,cf393,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd388,cd388,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{0,cf386,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd377,cf387,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd378,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd379,cf388,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd380,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd381,cf389,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd382,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf390,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd383,cf391,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd384,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd385,cf392,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd386,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd387,cf393,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd388,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 04F0-04FF */
 static const struct unidata st73[] = {
-{cd389,cd389,cf394,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd390,cd390,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd391,cd391,cf395,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd392,cd392,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd393,cd393,cf396,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd394,cd394,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf397,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd395,cd395,cf398,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd396,cd396,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf399,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf400,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf401,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd389,cf394,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd390,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd391,cf395,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd392,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd393,cf396,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd394,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf397,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd395,cf398,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd396,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf399,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf400,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf401,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 0500-050F */
 static const struct unidata st74[] = {
-{0,0,cf402,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf403,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf404,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf405,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf406,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf407,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf408,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf409,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{0,cf402,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf403,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf404,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf405,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf406,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf407,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf408,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf409,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 0510-051F */
 static const struct unidata st75[] = {
-{0,0,cf410,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,cf411,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,cf410,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,cf411,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0520-052F */
 static const struct unidata st76[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0530-053F */
 static const struct unidata st77[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,cf412,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf413,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf414,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf415,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf416,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf417,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf418,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf419,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf420,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf421,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf422,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf423,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf424,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf425,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf426,0,Lu,0,GBOther,WBALetter,SBUpper}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,cf412,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf413,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf414,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf415,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf416,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf417,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf418,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf419,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf420,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf421,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf422,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf423,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf424,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf425,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf426,0,Lu,0,GBOther,WBALetter,SBUpper}
 };
 /* 0540-054F */
 static const struct unidata st78[] = {
-{0,0,cf427,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf428,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf429,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf430,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf431,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf432,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf433,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf434,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf435,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf436,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf437,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf438,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf439,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf440,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf441,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf442,0,Lu,0,GBOther,WBALetter,SBUpper}
+{0,cf427,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf428,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf429,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf430,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf431,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf432,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf433,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf434,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf435,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf436,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf437,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf438,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf439,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf440,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf441,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf442,0,Lu,0,GBOther,WBALetter,SBUpper}
 };
 /* 0550-055F */
 static const struct unidata st79[] = {
-{0,0,cf443,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf444,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf445,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf446,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf447,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf448,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf449,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther}
+{0,cf443,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf444,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf445,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf446,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf447,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf448,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf449,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{0,0,0,Po,0,GBOther,WBOther,SBOther}
 };
 /* 0560-056F */
 static const struct unidata st80[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 0580-058F */
 static const struct unidata st81[] = {
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd397,0,cf450,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBMidNum,SBSTerm},
-{0,0,0,0,Pd,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd397,cf450,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBMidNum,SBSTerm},
+{0,0,0,Pd,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0590-059F */
 static const struct unidata st82[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,222,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,222,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 05A0-05AF */
 static const struct unidata st83[] = {
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,222,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,228,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,222,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,228,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 05B0-05BF */
 static const struct unidata st84[] = {
-{0,0,0,10,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,11,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,12,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,13,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,14,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,15,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,16,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,17,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,18,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,19,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,19,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,20,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,21,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,22,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,23,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,10,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,11,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,12,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,13,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,14,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,15,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,16,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,17,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,18,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,19,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,19,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,20,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,21,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,22,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,23,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 05C0-05CF */
 static const struct unidata st85[] = {
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,24,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,25,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,18,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,24,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,25,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,18,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 05D0-05DF */
 static const struct unidata st86[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 05E0-05EF */
 static const struct unidata st87[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 05F0-05FF */
 static const struct unidata st88[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Po,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Po,0,GBOther,WBMidLetter,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Po,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Po,0,GBOther,WBMidLetter,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0600-060F */
 static const struct unidata st89[] = {
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBMidNum,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther}
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBMidNum,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther}
 };
 /* 0610-061F */
 static const struct unidata st90[] = {
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm}
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm}
 };
 /* 0620-062F */
 static const struct unidata st91[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd398,cd398,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd399,cd399,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd400,cd400,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd401,cd401,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd402,cd402,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd398,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd399,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd400,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd401,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd402,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0640-064F */
 static const struct unidata st92[] = {
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,27,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,28,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,29,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,30,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,31,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,27,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,28,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,29,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,30,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,31,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 0650-065F */
 static const struct unidata st93[] = {
-{0,0,0,32,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,33,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,34,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,32,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,33,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,34,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0660-066F */
 static const struct unidata st94[] = {
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Po,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Po,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0670-067F */
 static const struct unidata st95[] = {
-{0,0,0,35,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd403,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd404,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd405,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd406,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,35,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd403,0,0,Lo,unicode_compatibility_decomposition,GBOther,WBALetter,SBOLetter},
+{cd404,0,0,Lo,unicode_compatibility_decomposition,GBOther,WBALetter,SBOLetter},
+{cd405,0,0,Lo,unicode_compatibility_decomposition,GBOther,WBALetter,SBOLetter},
+{cd406,0,0,Lo,unicode_compatibility_decomposition,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 06C0-06CF */
 static const struct unidata st96[] = {
-{cd407,cd407,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd408,cd408,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{cd407,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd408,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 06D0-06DF */
 static const struct unidata st97[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd409,cd409,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{0,0,0,0,Me,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd409,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{0,0,0,Me,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 06E0-06EF */
 static const struct unidata st98[] = {
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 06F0-06FF */
 static const struct unidata st99[] = {
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0700-070F */
 static const struct unidata st100[] = {
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat}
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat}
 };
 /* 0710-071F */
 static const struct unidata st101[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,36,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,36,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0730-073F */
 static const struct unidata st102[] = {
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 0740-074F */
 static const struct unidata st103[] = {
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0760-076F */
 static const struct unidata st104[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 07A0-07AF */
 static const struct unidata st105[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 07B0-07BF */
 static const struct unidata st106[] = {
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 07C0-07CF */
 static const struct unidata st107[] = {
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 07E0-07EF */
 static const struct unidata st108[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 07F0-07FF */
 static const struct unidata st109[] = {
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBMidNum,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBMidNum,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0900-090F */
 static const struct unidata st110[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0920-092F */
 static const struct unidata st111[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd410,cd410,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd410,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0930-093F */
 static const struct unidata st112[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd411,cd411,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd412,cd412,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,7,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd411,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd412,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,7,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0940-094F */
 static const struct unidata st113[] = {
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0950-095F */
 static const struct unidata st114[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd413,cd413,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd414,cd414,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd415,cd415,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd416,cd416,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd417,cd417,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd418,cd418,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd419,cd419,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd420,cd420,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd413,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd414,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd415,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd416,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd417,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd418,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd419,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd420,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0960-096F */
 static const struct unidata st115[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric}
 };
 /* 0970-097F */
 static const struct unidata st116[] = {
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0980-098F */
 static const struct unidata st117[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0990-099F */
 static const struct unidata st118[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 09A0-09AF */
 static const struct unidata st119[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 09B0-09BF */
 static const struct unidata st120[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,7,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,7,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter}
 };
 /* 09C0-09CF */
 static const struct unidata st121[] = {
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd421,cd421,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{cd422,cd422,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd421,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{cd422,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 09D0-09DF */
 static const struct unidata st122[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mc,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd423,cd423,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd424,cd424,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd425,cd425,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mc,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd423,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd424,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd425,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 09E0-09EF */
 static const struct unidata st123[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric}
 };
 /* 09F0-09FF */
 static const struct unidata st124[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0A00-0A0F */
 static const struct unidata st125[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0A30-0A3F */
 static const struct unidata st126[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd426,cd426,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd427,cd427,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,7,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd426,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd427,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,7,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0A40-0A4F */
 static const struct unidata st127[] = {
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0A50-0A5F */
 static const struct unidata st128[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd428,cd428,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd429,cd429,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd430,cd430,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd431,cd431,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd428,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd429,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd430,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd431,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0A60-0A6F */
 static const struct unidata st129[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric}
 };
 /* 0A70-0A7F */
 static const struct unidata st130[] = {
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0A80-0A8F */
 static const struct unidata st131[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0A90-0A9F */
 static const struct unidata st132[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0AB0-0ABF */
 static const struct unidata st133[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,7,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,7,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0AC0-0ACF */
 static const struct unidata st134[] = {
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0AD0-0ADF */
 static const struct unidata st135[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0AF0-0AFF */
 static const struct unidata st136[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0B30-0B3F */
 static const struct unidata st137[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,7,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,7,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 0B40-0B4F */
 static const struct unidata st138[] = {
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{cd432,cd432,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd433,cd433,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{cd434,cd434,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{cd432,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd433,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{cd434,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0B50-0B5F */
 static const struct unidata st139[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd435,cd435,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd436,cd436,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd435,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd436,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0B60-0B6F */
 static const struct unidata st140[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric}
 };
 /* 0B70-0B7F */
 static const struct unidata st141[] = {
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0B80-0B8F */
 static const struct unidata st142[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0B90-0B9F */
 static const struct unidata st143[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd437,cd437,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd437,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0BA0-0BAF */
 static const struct unidata st144[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0BB0-0BBF */
 static const struct unidata st145[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mc,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mc,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0BC0-0BCF */
 static const struct unidata st146[] = {
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd438,cd438,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{cd439,cd439,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{cd440,cd440,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd438,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{cd439,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{cd440,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0BD0-0BDF */
 static const struct unidata st147[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mc,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mc,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0BF0-0BFF */
 static const struct unidata st148[] = {
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0C00-0C0F */
 static const struct unidata st149[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0C10-0C1F */
 static const struct unidata st150[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0C30-0C3F */
 static const struct unidata st151[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 0C40-0C4F */
 static const struct unidata st152[] = {
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{cd441,cd441,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{cd441,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0C50-0C5F */
 static const struct unidata st153[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,84,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,91,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,84,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,91,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0C80-0C8F */
 static const struct unidata st154[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0CB0-0CBF */
 static const struct unidata st155[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,7,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,7,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 0CC0-0CCF */
 static const struct unidata st156[] = {
-{cd442,cd442,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{cd443,cd443,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{cd444,cd444,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd445,cd445,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{cd446,cd446,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{cd442,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{cd443,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{cd444,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd445,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{cd446,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0CD0-0CDF */
 static const struct unidata st157[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mc,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mc,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0CF0-0CFF */
 static const struct unidata st158[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0D40-0D4F */
 static const struct unidata st159[] = {
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd447,cd447,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{cd448,cd448,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{cd449,cd449,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd447,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{cd448,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{cd449,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0D80-0D8F */
 static const struct unidata st160[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0D90-0D9F */
 static const struct unidata st161[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0DB0-0DBF */
 static const struct unidata st162[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0DC0-0DCF */
 static const struct unidata st163[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mc,0,GBExtend,WBExtend,SBExtend}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mc,0,GBExtend,WBExtend,SBExtend}
 };
 /* 0DD0-0DDF */
 static const struct unidata st164[] = {
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{cd450,cd450,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{cd451,cd451,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{cd452,cd452,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{cd453,cd453,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBExtend,WBExtend,SBExtend}
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{cd450,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{cd451,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{cd452,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{cd453,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBExtend,WBExtend,SBExtend}
 };
 /* 0DF0-0DFF */
 static const struct unidata st165[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0E00-0E0F */
 static const struct unidata st166[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter}
 };
 /* 0E10-0E1F */
 static const struct unidata st167[] = {
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter}
 };
 /* 0E30-0E3F */
 static const struct unidata st168[] = {
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{cd454,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,103,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,103,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{cd454,0,0,Lo,unicode_compatibility_decomposition,GBOther,WBOther,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,103,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,103,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther}
 };
 /* 0E40-0E4F */
 static const struct unidata st169[] = {
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lm,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,107,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,107,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,107,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,107,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lm,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,107,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,107,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,107,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,107,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Po,0,GBOther,WBOther,SBOther}
 };
 /* 0E50-0E5F */
 static const struct unidata st170[] = {
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0E80-0E8F */
 static const struct unidata st171[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0E90-0E9F */
 static const struct unidata st172[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter}
 };
 /* 0EA0-0EAF */
 static const struct unidata st173[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter}
 };
 /* 0EB0-0EBF */
 static const struct unidata st174[] = {
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{cd455,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,118,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,118,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{cd455,0,0,Lo,unicode_compatibility_decomposition,GBOther,WBOther,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,118,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,118,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0EC0-0ECF */
 static const struct unidata st175[] = {
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lm,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,122,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,122,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,122,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,122,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lm,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,122,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,122,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,122,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,122,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0ED0-0EDF */
 static const struct unidata st176[] = {
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd456,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{cd457,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd456,0,0,Lo,unicode_compatibility_decomposition,GBOther,WBOther,SBOLetter},
+{cd457,0,0,Lo,unicode_compatibility_decomposition,GBOther,WBOther,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0F00-0F0F */
 static const struct unidata st177[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{cd458,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{cd458,0,0,Po,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther}
 };
 /* 0F10-0F1F */
 static const struct unidata st178[] = {
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther}
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther}
 };
 /* 0F20-0F2F */
 static const struct unidata st179[] = {
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther}
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther}
 };
 /* 0F30-0F3F */
 static const struct unidata st180[] = {
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,216,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Ps,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Pe,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Ps,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Pe,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOther}
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,216,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Ps,0,GBOther,WBOther,SBClose},
+{0,0,0,Pe,0,GBOther,WBOther,SBClose},
+{0,0,0,Ps,0,GBOther,WBOther,SBClose},
+{0,0,0,Pe,0,GBOther,WBOther,SBClose},
+{0,0,0,Mc,0,GBOther,WBOther,SBOther},
+{0,0,0,Mc,0,GBOther,WBOther,SBOther}
 };
 /* 0F40-0F4F */
 static const struct unidata st181[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd459,cd459,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd460,cd460,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd459,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd460,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0F50-0F5F */
 static const struct unidata st182[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd461,cd461,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd462,cd462,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd463,cd463,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd461,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd462,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd463,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0F60-0F6F */
 static const struct unidata st183[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd464,cd464,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd464,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0F70-0F7F */
 static const struct unidata st184[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,129,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,130,Mn,0,GBExtend,WBExtend,SBExtend},
-{cd465,cd465,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,132,Mn,0,GBExtend,WBExtend,SBExtend},
-{cd466,cd466,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{cd467,cd467,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{cd468,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{cd469,cd469,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{cd470,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,130,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,130,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,130,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,130,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,129,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,130,Mn,0,GBExtend,WBExtend,SBExtend},
+{cd465,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,132,Mn,0,GBExtend,WBExtend,SBExtend},
+{cd466,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{cd467,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{cd468,0,0,Mn,unicode_compatibility_decomposition,GBExtend,WBExtend,SBExtend},
+{cd469,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{cd470,0,0,Mn,unicode_compatibility_decomposition,GBExtend,WBExtend,SBExtend},
+{0,0,130,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,130,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,130,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,130,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter}
 };
 /* 0F80-0F8F */
 static const struct unidata st185[] = {
-{0,0,0,130,Mn,0,GBExtend,WBExtend,SBExtend},
-{cd471,cd471,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,130,Mn,0,GBExtend,WBExtend,SBExtend},
+{cd471,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 0F90-0F9F */
 static const struct unidata st186[] = {
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{cd472,cd472,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{cd473,cd473,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{cd472,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{cd473,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 0FA0-0FAF */
 static const struct unidata st187[] = {
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{cd474,cd474,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{cd475,cd475,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{cd476,cd476,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{cd474,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{cd475,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{cd476,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 0FB0-0FBF */
 static const struct unidata st188[] = {
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{cd477,cd477,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther}
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{cd477,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther}
 };
 /* 0FC0-0FCF */
 static const struct unidata st189[] = {
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther}
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther}
 };
 /* 0FD0-0FDF */
 static const struct unidata st190[] = {
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1020-102F */
 static const struct unidata st191[] = {
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{cd478,cd478,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{cd478,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 1030-103F */
 static const struct unidata st192[] = {
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,7,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,7,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1040-104F */
 static const struct unidata st193[] = {
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther}
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther}
 };
 /* 1050-105F */
 static const struct unidata st194[] = {
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 10A0-10AF */
 static const struct unidata st195[] = {
-{0,0,cf451,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf452,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf453,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf454,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf455,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf456,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf457,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf458,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf459,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf460,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf461,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf462,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf463,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf464,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf465,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf466,0,Lu,0,GBOther,WBALetter,SBUpper}
+{0,cf451,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf452,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf453,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf454,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf455,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf456,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf457,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf458,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf459,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf460,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf461,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf462,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf463,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf464,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf465,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf466,0,Lu,0,GBOther,WBALetter,SBUpper}
 };
 /* 10B0-10BF */
 static const struct unidata st196[] = {
-{0,0,cf467,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf468,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf469,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf470,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf471,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf472,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf473,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf474,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf475,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf476,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf477,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf478,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf479,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf480,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf481,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf482,0,Lu,0,GBOther,WBALetter,SBUpper}
+{0,cf467,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf468,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf469,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf470,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf471,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf472,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf473,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf474,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf475,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf476,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf477,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf478,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf479,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf480,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf481,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf482,0,Lu,0,GBOther,WBALetter,SBUpper}
 };
 /* 10C0-10CF */
 static const struct unidata st197[] = {
-{0,0,cf483,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf484,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf485,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf486,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf487,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf488,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,cf483,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf484,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf485,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf486,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf487,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,cf488,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 10F0-10FF */
 static const struct unidata st198[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{cd479,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{cd479,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1100-110F */
 static const struct unidata st199[] = {
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter}
 };
 /* 1150-115F */
 static const struct unidata st200[] = {
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBL,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBL,WBALetter,SBOLetter}
 };
 /* 1160-116F */
 static const struct unidata st201[] = {
-{0,0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBV,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBV,WBALetter,SBOLetter}
 };
 /* 11A0-11AF */
 static const struct unidata st202[] = {
-{0,0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBV,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter}
 };
 /* 11B0-11BF */
 static const struct unidata st203[] = {
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter}
 };
 /* 11F0-11FF */
 static const struct unidata st204[] = {
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBT,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1240-124F */
 static const struct unidata st205[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1250-125F */
 static const struct unidata st206[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 12B0-12BF */
 static const struct unidata st207[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 12C0-12CF */
 static const struct unidata st208[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 12D0-12DF */
 static const struct unidata st209[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 1350-135F */
 static const struct unidata st210[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 1360-136F */
 static const struct unidata st211[] = {
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther}
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther}
 };
 /* 1370-137F */
 static const struct unidata st212[] = {
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1390-139F */
 static const struct unidata st213[] = {
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 13F0-13FF */
 static const struct unidata st214[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1400-140F */
 static const struct unidata st215[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 1660-166F */
 static const struct unidata st216[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 1670-167F */
 static const struct unidata st217[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1680-168F */
 static const struct unidata st218[] = {
-{0,0,0,0,Zs,0,GBOther,WBOther,SBSp},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Zs,0,GBOther,WBOther,SBSp},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 1690-169F */
 static const struct unidata st219[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Ps,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Pe,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Ps,0,GBOther,WBOther,SBClose},
+{0,0,0,Pe,0,GBOther,WBOther,SBClose},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 16E0-16EF */
 static const struct unidata st220[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Nl,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Nl,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Nl,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Nl,0,GBOther,WBALetter,SBOLetter}
 };
 /* 16F0-16FF */
 static const struct unidata st221[] = {
-{0,0,0,0,Nl,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Nl,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1700-170F */
 static const struct unidata st222[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 1710-171F */
 static const struct unidata st223[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1730-173F */
 static const struct unidata st224[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1750-175F */
 static const struct unidata st225[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1770-177F */
 static const struct unidata st226[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 17B0-17BF */
 static const struct unidata st227[] = {
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter}
 };
 /* 17C0-17CF */
 static const struct unidata st228[] = {
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 17D0-17DF */
 static const struct unidata st229[] = {
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lm,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,9,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Lm,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 17E0-17EF */
 static const struct unidata st230[] = {
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 17F0-17FF */
 static const struct unidata st231[] = {
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,No,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,No,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1800-180F */
 static const struct unidata st232[] = {
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Pd,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Zs,0,GBOther,WBOther,SBSp},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Pd,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Zs,0,GBOther,WBOther,SBSp},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1840-184F */
 static const struct unidata st233[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lm,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 1870-187F */
 static const struct unidata st234[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 18A0-18AF */
 static const struct unidata st235[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,228,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,228,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1910-191F */
 static const struct unidata st236[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1920-192F */
 static const struct unidata st237[] = {
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1930-193F */
 static const struct unidata st238[] = {
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,222,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,222,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1940-194F */
 static const struct unidata st239[] = {
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric}
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric}
 };
 /* 1960-196F */
 static const struct unidata st240[] = {
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1970-197F */
 static const struct unidata st241[] = {
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 19A0-19AF */
 static const struct unidata st242[] = {
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 19B0-19BF */
 static const struct unidata st243[] = {
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter}
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter}
 };
 /* 19C0-19CF */
 static const struct unidata st244[] = {
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBOther,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 19D0-19DF */
 static const struct unidata st245[] = {
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther}
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther}
 };
 /* 19E0-19EF */
 static const struct unidata st246[] = {
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther}
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther}
 };
 /* 1A10-1A1F */
 static const struct unidata st247[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther}
 };
 /* 1B00-1B0F */
 static const struct unidata st248[] = {
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd480,cd480,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd481,cd481,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd482,cd482,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd483,cd483,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd484,cd484,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd480,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd481,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd482,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd483,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd484,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 1B10-1B1F */
 static const struct unidata st249[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd485,cd485,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{cd485,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter}
 };
 /* 1B30-1B3F */
 static const struct unidata st250[] = {
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,7,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{cd486,cd486,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{cd487,cd487,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mc,0,GBOther,WBALetter,SBOLetter}
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,7,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{cd486,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{cd487,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mc,0,GBOther,WBALetter,SBOLetter}
 };
 /* 1B40-1B4F */
 static const struct unidata st251[] = {
-{cd488,cd488,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{cd489,cd489,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
-{cd490,cd490,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,9,Mc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{cd488,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{cd489,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Mn,0,GBExtend,WBExtend,SBExtend},
+{cd490,0,0,Mc,0,GBOther,WBALetter,SBOLetter},
+{0,0,9,Mc,0,GBOther,WBOther,SBOther},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1B50-1B5F */
 static const struct unidata st252[] = {
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm}
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Nd,0,GBOther,WBNumeric,SBNumeric},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm}
 };
 /* 1B60-1B6F */
 static const struct unidata st253[] = {
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 1B70-1B7F */
 static const struct unidata st254[] = {
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1D20-1D2F */
 static const struct unidata st255[] = {
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd491,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd492,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd493,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBLower}
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd491,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd492,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd493,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{0,0,0,Lm,0,GBOther,WBALetter,SBLower}
 };
 /* 1D30-1D3F */
 static const struct unidata st256[] = {
-{cd494,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd495,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd496,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd497,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd498,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd499,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd500,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd501,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd502,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd503,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd504,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd505,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd506,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd507,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd508,0,0,0,Lm,0,GBOther,WBALetter,SBLower}
+{cd494,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd495,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd496,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd497,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd498,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd499,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd500,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd501,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd502,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd503,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd504,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{0,0,0,Lm,0,GBOther,WBALetter,SBLower},
+{cd505,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd506,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd507,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd508,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower}
 };
 /* 1D40-1D4F */
 static const struct unidata st257[] = {
-{cd509,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd510,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd511,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd2,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd512,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd513,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd514,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd515,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd516,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd517,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd518,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd519,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd520,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd521,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd522,0,0,0,Lm,0,GBOther,WBALetter,SBLower}
+{cd509,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd510,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd511,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd2,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd512,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd513,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd514,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd515,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd516,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd517,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd518,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd519,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd520,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd521,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{0,0,0,Lm,0,GBOther,WBALetter,SBLower},
+{cd522,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower}
 };
 /* 1D50-1D5F */
 static const struct unidata st258[] = {
-{cd523,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd524,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd10,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd525,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd526,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd527,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd528,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd529,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd530,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd531,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd532,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd533,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd534,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd332,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd535,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd536,0,0,0,Lm,0,GBOther,WBALetter,SBLower}
+{cd523,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd524,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd10,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd525,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd526,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd527,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd528,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd529,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd530,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd531,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd532,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd533,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd534,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd332,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd535,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd536,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower}
 };
 /* 1D60-1D6F */
 static const struct unidata st259[] = {
-{cd337,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd537,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd538,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd287,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd530,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd533,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd332,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd535,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd340,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd337,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd537,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd337,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd537,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd538,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd287,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd530,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd533,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd332,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd535,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd340,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd337,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd537,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 1D70-1D7F */
 static const struct unidata st260[] = {
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd539,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd539,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 1D90-1D9F */
 static const struct unidata st261[] = {
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd540,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd541,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd542,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd543,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd520,0,0,0,Lm,0,GBOther,WBALetter,SBLower}
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd540,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd541,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd542,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd543,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd520,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower}
 };
 /* 1DA0-1DAF */
 static const struct unidata st262[] = {
-{cd544,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd545,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd546,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd547,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd548,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd549,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd550,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd551,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd552,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd553,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd554,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd555,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd556,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd557,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd558,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd559,0,0,0,Lm,0,GBOther,WBALetter,SBLower}
+{cd544,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd545,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd546,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd547,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd548,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd549,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd550,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd551,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd552,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd553,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd554,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd555,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd556,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd557,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd558,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd559,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower}
 };
 /* 1DB0-1DBF */
 static const struct unidata st263[] = {
-{cd560,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd561,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd562,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd563,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd564,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd565,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd566,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd567,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd568,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd569,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd570,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd571,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd572,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd573,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd574,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd333,0,0,0,Lm,0,GBOther,WBALetter,SBLower}
+{cd560,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd561,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd562,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd563,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd564,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd565,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd566,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd567,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd568,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd569,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd570,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd571,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd572,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd573,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd574,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd333,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower}
 };
 /* 1DC0-1DCF */
 static const struct unidata st264[] = {
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1DF0-1DFF */
 static const struct unidata st265[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 1E00-1E0F */
 static const struct unidata st266[] = {
-{cd575,cd575,cf489,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd576,cd576,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd577,cd577,cf490,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd578,cd578,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd579,cd579,cf491,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd580,cd580,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd581,cd581,cf492,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd582,cd582,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd583,cd583,cf493,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd584,cd584,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd585,cd585,cf494,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd586,cd586,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd587,cd587,cf495,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd588,cd588,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd589,cd589,cf496,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd590,cd590,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd575,cf489,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd576,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd577,cf490,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd578,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd579,cf491,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd580,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd581,cf492,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd582,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd583,cf493,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd584,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd585,cf494,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd586,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd587,cf495,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd588,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd589,cf496,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd590,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 1E10-1E1F */
 static const struct unidata st267[] = {
-{cd591,cd591,cf497,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd592,cd592,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd593,cd593,cf498,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd594,cd594,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd595,cd595,cf499,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd596,cd596,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd597,cd597,cf500,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd598,cd598,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd599,cd599,cf501,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd600,cd600,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd601,cd601,cf502,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd602,cd602,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd603,cd603,cf503,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd604,cd604,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd605,cd605,cf504,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd606,cd606,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd591,cf497,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd592,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd593,cf498,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd594,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd595,cf499,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd596,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd597,cf500,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd598,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd599,cf501,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd600,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd601,cf502,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd602,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd603,cf503,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd604,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd605,cf504,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd606,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 1E20-1E2F */
 static const struct unidata st268[] = {
-{cd607,cd607,cf505,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd608,cd608,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd609,cd609,cf506,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd610,cd610,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd611,cd611,cf507,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd612,cd612,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd613,cd613,cf508,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd614,cd614,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd615,cd615,cf509,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd616,cd616,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd617,cd617,cf510,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd618,cd618,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd619,cd619,cf511,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd620,cd620,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd621,cd621,cf512,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd622,cd622,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd607,cf505,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd608,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd609,cf506,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd610,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd611,cf507,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd612,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd613,cf508,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd614,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd615,cf509,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd616,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd617,cf510,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd618,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd619,cf511,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd620,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd621,cf512,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd622,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 1E30-1E3F */
 static const struct unidata st269[] = {
-{cd623,cd623,cf513,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd624,cd624,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd625,cd625,cf514,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd626,cd626,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd627,cd627,cf515,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd628,cd628,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd629,cd629,cf516,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd630,cd630,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd631,cd631,cf517,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd632,cd632,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd633,cd633,cf518,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd634,cd634,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd635,cd635,cf519,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd636,cd636,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd637,cd637,cf520,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd638,cd638,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd623,cf513,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd624,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd625,cf514,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd626,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd627,cf515,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd628,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd629,cf516,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd630,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd631,cf517,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd632,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd633,cf518,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd634,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd635,cf519,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd636,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd637,cf520,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd638,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 1E40-1E4F */
 static const struct unidata st270[] = {
-{cd639,cd639,cf521,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd640,cd640,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd641,cd641,cf522,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd642,cd642,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd643,cd643,cf523,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd644,cd644,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd645,cd645,cf524,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd646,cd646,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd647,cd647,cf525,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd648,cd648,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd649,cd649,cf526,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd650,cd650,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd651,cd651,cf527,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd652,cd652,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd653,cd653,cf528,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd654,cd654,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd639,cf521,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd640,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd641,cf522,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd642,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd643,cf523,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd644,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd645,cf524,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd646,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd647,cf525,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd648,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd649,cf526,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd650,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd651,cf527,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd652,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd653,cf528,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd654,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 1E50-1E5F */
 static const struct unidata st271[] = {
-{cd655,cd655,cf529,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd656,cd656,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd657,cd657,cf530,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd658,cd658,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd659,cd659,cf531,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd660,cd660,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd661,cd661,cf532,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd662,cd662,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd663,cd663,cf533,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd664,cd664,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd665,cd665,cf534,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd666,cd666,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd667,cd667,cf535,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd668,cd668,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd669,cd669,cf536,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd670,cd670,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd655,cf529,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd656,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd657,cf530,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd658,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd659,cf531,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd660,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd661,cf532,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd662,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd663,cf533,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd664,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd665,cf534,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd666,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd667,cf535,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd668,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd669,cf536,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd670,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 1E60-1E6F */
 static const struct unidata st272[] = {
-{cd671,cd671,cf537,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd672,cd672,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd673,cd673,cf538,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd674,cd674,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd675,cd675,cf539,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd676,cd676,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd677,cd677,cf540,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd678,cd678,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd679,cd679,cf541,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd680,cd680,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd681,cd681,cf542,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd682,cd682,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd683,cd683,cf543,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd684,cd684,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd685,cd685,cf544,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd686,cd686,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd671,cf537,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd672,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd673,cf538,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd674,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd675,cf539,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd676,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd677,cf540,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd678,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd679,cf541,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd680,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd681,cf542,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd682,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd683,cf543,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd684,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd685,cf544,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd686,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 1E70-1E7F */
 static const struct unidata st273[] = {
-{cd687,cd687,cf545,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd688,cd688,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd689,cd689,cf546,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd690,cd690,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd691,cd691,cf547,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd692,cd692,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd693,cd693,cf548,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd694,cd694,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd695,cd695,cf549,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd696,cd696,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd697,cd697,cf550,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd698,cd698,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd699,cd699,cf551,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd700,cd700,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd701,cd701,cf552,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd702,cd702,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd687,cf545,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd688,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd689,cf546,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd690,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd691,cf547,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd692,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd693,cf548,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd694,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd695,cf549,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd696,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd697,cf550,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd698,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd699,cf551,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd700,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd701,cf552,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd702,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 1E80-1E8F */
 static const struct unidata st274[] = {
-{cd703,cd703,cf553,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd704,cd704,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd705,cd705,cf554,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd706,cd706,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd707,cd707,cf555,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd708,cd708,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd709,cd709,cf556,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd710,cd710,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd711,cd711,cf557,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd712,cd712,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd713,cd713,cf558,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd714,cd714,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd715,cd715,cf559,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd716,cd716,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd717,cd717,cf560,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd718,cd718,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd703,cf553,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd704,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd705,cf554,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd706,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd707,cf555,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd708,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd709,cf556,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd710,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd711,cf557,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd712,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd713,cf558,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd714,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd715,cf559,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd716,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd717,cf560,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd718,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 1E90-1E9F */
 static const struct unidata st275[] = {
-{cd719,cd719,cf561,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd720,cd720,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd721,cd721,cf562,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd722,cd722,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd723,cd723,cf563,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd724,cd724,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd725,cd725,cf564,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{cd726,cd726,cf565,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{cd727,cd727,cf566,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{cd728,cd728,cf567,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{cd729,0,cf568,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd730,cd730,cf537,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{cd719,cf561,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd720,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd721,cf562,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd722,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd723,cf563,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd724,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd725,cf564,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{cd726,cf565,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{cd727,cf566,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{cd728,cf567,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{cd729,cf568,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd730,cf537,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1EA0-1EAF */
 static const struct unidata st276[] = {
-{cd731,cd731,cf569,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd732,cd732,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd733,cd733,cf570,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd734,cd734,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd735,cd735,cf571,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd736,cd736,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd737,cd737,cf572,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd738,cd738,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd739,cd739,cf573,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd740,cd740,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd741,cd741,cf574,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd742,cd742,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd743,cd743,cf575,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd744,cd744,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd745,cd745,cf576,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd746,cd746,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd731,cf569,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd732,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd733,cf570,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd734,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd735,cf571,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd736,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd737,cf572,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd738,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd739,cf573,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd740,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd741,cf574,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd742,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd743,cf575,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd744,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd745,cf576,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd746,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 1EB0-1EBF */
 static const struct unidata st277[] = {
-{cd747,cd747,cf577,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd748,cd748,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd749,cd749,cf578,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd750,cd750,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd751,cd751,cf579,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd752,cd752,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd753,cd753,cf580,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd754,cd754,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd755,cd755,cf581,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd756,cd756,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd757,cd757,cf582,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd758,cd758,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd759,cd759,cf583,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd760,cd760,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd761,cd761,cf584,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd762,cd762,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd747,cf577,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd748,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd749,cf578,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd750,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd751,cf579,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd752,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd753,cf580,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd754,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd755,cf581,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd756,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd757,cf582,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd758,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd759,cf583,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd760,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd761,cf584,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd762,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 1EC0-1ECF */
 static const struct unidata st278[] = {
-{cd763,cd763,cf585,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd764,cd764,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd765,cd765,cf586,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd766,cd766,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd767,cd767,cf587,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd768,cd768,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd769,cd769,cf588,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd770,cd770,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd771,cd771,cf589,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd772,cd772,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd773,cd773,cf590,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd774,cd774,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd775,cd775,cf591,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd776,cd776,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd777,cd777,cf592,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd778,cd778,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd763,cf585,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd764,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd765,cf586,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd766,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd767,cf587,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd768,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd769,cf588,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd770,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd771,cf589,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd772,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd773,cf590,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd774,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd775,cf591,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd776,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd777,cf592,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd778,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 1ED0-1EDF */
 static const struct unidata st279[] = {
-{cd779,cd779,cf593,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd780,cd780,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd781,cd781,cf594,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd782,cd782,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd783,cd783,cf595,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd784,cd784,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd785,cd785,cf596,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd786,cd786,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd787,cd787,cf597,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd788,cd788,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd789,cd789,cf598,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd790,cd790,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd791,cd791,cf599,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd792,cd792,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd793,cd793,cf600,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd794,cd794,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd779,cf593,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd780,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd781,cf594,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd782,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd783,cf595,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd784,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd785,cf596,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd786,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd787,cf597,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd788,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd789,cf598,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd790,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd791,cf599,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd792,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd793,cf600,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd794,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 1EE0-1EEF */
 static const struct unidata st280[] = {
-{cd795,cd795,cf601,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd796,cd796,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd797,cd797,cf602,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd798,cd798,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd799,cd799,cf603,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd800,cd800,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd801,cd801,cf604,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd802,cd802,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd803,cd803,cf605,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd804,cd804,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd805,cd805,cf606,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd806,cd806,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd807,cd807,cf607,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd808,cd808,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd809,cd809,cf608,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd810,cd810,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd795,cf601,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd796,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd797,cf602,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd798,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd799,cf603,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd800,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd801,cf604,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd802,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd803,cf605,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd804,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd805,cf606,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd806,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd807,cf607,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd808,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd809,cf608,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd810,0,0,Ll,0,GBOther,WBALetter,SBLower}
 };
 /* 1EF0-1EFF */
 static const struct unidata st281[] = {
-{cd811,cd811,cf609,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd812,cd812,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd813,cd813,cf610,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd814,cd814,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd815,cd815,cf611,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd816,cd816,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd817,cd817,cf612,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd818,cd818,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd819,cd819,cf613,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd820,cd820,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{cd811,cf609,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd812,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd813,cf610,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd814,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd815,cf611,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd816,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd817,cf612,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd818,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd819,cf613,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd820,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1F00-1F0F */
 static const struct unidata st282[] = {
-{cd821,cd821,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd822,cd822,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd823,cd823,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd824,cd824,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd825,cd825,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd826,cd826,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd827,cd827,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd828,cd828,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd829,cd829,cf614,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd830,cd830,cf615,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd831,cd831,cf616,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd832,cd832,cf617,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd833,cd833,cf618,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd834,cd834,cf619,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd835,cd835,cf620,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd836,cd836,cf621,0,Lu,0,GBOther,WBALetter,SBUpper}
+{cd821,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd822,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd823,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd824,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd825,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd826,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd827,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd828,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd829,cf614,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd830,cf615,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd831,cf616,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd832,cf617,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd833,cf618,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd834,cf619,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd835,cf620,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd836,cf621,0,Lu,0,GBOther,WBALetter,SBUpper}
 };
 /* 1F10-1F1F */
 static const struct unidata st283[] = {
-{cd837,cd837,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd838,cd838,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd839,cd839,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd840,cd840,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd841,cd841,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd842,cd842,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd843,cd843,cf622,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd844,cd844,cf623,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd845,cd845,cf624,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd846,cd846,cf625,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd847,cd847,cf626,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd848,cd848,cf627,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{cd837,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd838,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd839,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd840,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd841,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd842,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd843,cf622,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd844,cf623,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd845,cf624,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd846,cf625,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd847,cf626,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd848,cf627,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1F20-1F2F */
 static const struct unidata st284[] = {
-{cd849,cd849,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd850,cd850,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd851,cd851,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd852,cd852,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd853,cd853,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd854,cd854,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd855,cd855,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd856,cd856,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd857,cd857,cf628,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd858,cd858,cf629,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd859,cd859,cf630,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd860,cd860,cf631,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd861,cd861,cf632,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd862,cd862,cf633,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd863,cd863,cf634,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd864,cd864,cf635,0,Lu,0,GBOther,WBALetter,SBUpper}
+{cd849,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd850,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd851,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd852,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd853,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd854,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd855,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd856,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd857,cf628,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd858,cf629,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd859,cf630,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd860,cf631,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd861,cf632,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd862,cf633,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd863,cf634,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd864,cf635,0,Lu,0,GBOther,WBALetter,SBUpper}
 };
 /* 1F30-1F3F */
 static const struct unidata st285[] = {
-{cd865,cd865,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd866,cd866,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd867,cd867,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd868,cd868,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd869,cd869,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd870,cd870,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd871,cd871,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd872,cd872,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd873,cd873,cf636,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd874,cd874,cf637,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd875,cd875,cf638,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd876,cd876,cf639,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd877,cd877,cf640,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd878,cd878,cf641,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd879,cd879,cf642,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd880,cd880,cf643,0,Lu,0,GBOther,WBALetter,SBUpper}
+{cd865,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd866,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd867,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd868,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd869,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd870,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd871,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd872,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd873,cf636,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd874,cf637,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd875,cf638,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd876,cf639,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd877,cf640,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd878,cf641,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd879,cf642,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd880,cf643,0,Lu,0,GBOther,WBALetter,SBUpper}
 };
 /* 1F40-1F4F */
 static const struct unidata st286[] = {
-{cd881,cd881,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd882,cd882,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd883,cd883,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd884,cd884,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd885,cd885,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd886,cd886,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd887,cd887,cf644,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd888,cd888,cf645,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd889,cd889,cf646,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd890,cd890,cf647,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd891,cd891,cf648,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd892,cd892,cf649,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{cd881,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd882,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd883,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd884,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd885,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd886,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd887,cf644,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd888,cf645,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd889,cf646,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd890,cf647,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd891,cf648,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd892,cf649,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1F50-1F5F */
 static const struct unidata st287[] = {
-{cd893,cd893,cf650,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{cd894,cd894,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd895,cd895,cf651,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{cd896,cd896,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd897,cd897,cf652,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{cd898,cd898,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd899,cd899,cf653,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{cd900,cd900,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd901,cd901,cf654,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd902,cd902,cf655,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd903,cd903,cf656,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd904,cd904,cf657,0,Lu,0,GBOther,WBALetter,SBUpper}
+{cd893,cf650,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{cd894,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd895,cf651,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{cd896,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd897,cf652,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{cd898,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd899,cf653,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{cd900,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd901,cf654,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd902,cf655,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd903,cf656,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd904,cf657,0,Lu,0,GBOther,WBALetter,SBUpper}
 };
 /* 1F60-1F6F */
 static const struct unidata st288[] = {
-{cd905,cd905,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd906,cd906,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd907,cd907,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd908,cd908,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd909,cd909,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd910,cd910,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd911,cd911,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd912,cd912,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd913,cd913,cf658,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd914,cd914,cf659,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd915,cd915,cf660,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd916,cd916,cf661,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd917,cd917,cf662,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd918,cd918,cf663,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd919,cd919,cf664,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd920,cd920,cf665,0,Lu,0,GBOther,WBALetter,SBUpper}
+{cd905,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd906,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd907,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd908,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd909,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd910,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd911,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd912,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd913,cf658,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd914,cf659,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd915,cf660,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd916,cf661,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd917,cf662,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd918,cf663,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd919,cf664,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd920,cf665,0,Lu,0,GBOther,WBALetter,SBUpper}
 };
 /* 1F70-1F7F */
 static const struct unidata st289[] = {
-{cd921,cd921,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd922,cd922,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd923,cd923,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd924,cd924,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd925,cd925,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd926,cd926,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd927,cd927,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd928,cd928,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd929,cd929,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd930,cd930,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd931,cd931,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd932,cd932,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd933,cd933,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd934,cd934,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{cd921,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd922,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd923,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd924,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd925,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd926,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd927,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd928,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd929,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd930,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd931,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd932,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd933,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd934,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 1F80-1F8F */
 static const struct unidata st290[] = {
-{cd935,cd935,cf666,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd936,cd936,cf667,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd937,cd937,cf668,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd938,cd938,cf669,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd939,cd939,cf670,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd940,cd940,cf671,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd941,cd941,cf672,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd942,cd942,cf673,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd943,cd943,cf666,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd944,cd944,cf667,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd945,cd945,cf668,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd946,cd946,cf669,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd947,cd947,cf670,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd948,cd948,cf671,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd949,cd949,cf672,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd950,cd950,cf673,0,Lt,0,GBOther,WBALetter,SBUpper}
+{cd935,cf666,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd936,cf667,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd937,cf668,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd938,cf669,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd939,cf670,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd940,cf671,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd941,cf672,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd942,cf673,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd943,cf666,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd944,cf667,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd945,cf668,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd946,cf669,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd947,cf670,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd948,cf671,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd949,cf672,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd950,cf673,0,Lt,0,GBOther,WBALetter,SBUpper}
 };
 /* 1F90-1F9F */
 static const struct unidata st291[] = {
-{cd951,cd951,cf674,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd952,cd952,cf675,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd953,cd953,cf676,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd954,cd954,cf677,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd955,cd955,cf678,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd956,cd956,cf679,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd957,cd957,cf680,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd958,cd958,cf681,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd959,cd959,cf674,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd960,cd960,cf675,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd961,cd961,cf676,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd962,cd962,cf677,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd963,cd963,cf678,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd964,cd964,cf679,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd965,cd965,cf680,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd966,cd966,cf681,0,Lt,0,GBOther,WBALetter,SBUpper}
+{cd951,cf674,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd952,cf675,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd953,cf676,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd954,cf677,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd955,cf678,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd956,cf679,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd957,cf680,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd958,cf681,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd959,cf674,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd960,cf675,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd961,cf676,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd962,cf677,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd963,cf678,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd964,cf679,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd965,cf680,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd966,cf681,0,Lt,0,GBOther,WBALetter,SBUpper}
 };
 /* 1FA0-1FAF */
 static const struct unidata st292[] = {
-{cd967,cd967,cf682,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd968,cd968,cf683,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd969,cd969,cf684,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd970,cd970,cf685,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd971,cd971,cf686,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd972,cd972,cf687,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd973,cd973,cf688,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd974,cd974,cf689,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd975,cd975,cf682,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd976,cd976,cf683,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd977,cd977,cf684,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd978,cd978,cf685,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd979,cd979,cf686,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd980,cd980,cf687,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd981,cd981,cf688,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd982,cd982,cf689,0,Lt,0,GBOther,WBALetter,SBUpper}
+{cd967,cf682,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd968,cf683,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd969,cf684,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd970,cf685,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd971,cf686,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd972,cf687,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd973,cf688,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd974,cf689,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd975,cf682,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd976,cf683,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd977,cf684,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd978,cf685,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd979,cf686,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd980,cf687,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd981,cf688,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd982,cf689,0,Lt,0,GBOther,WBALetter,SBUpper}
 };
 /* 1FB0-1FBF */
 static const struct unidata st293[] = {
-{cd983,cd983,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd984,cd984,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd985,cd985,cf690,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd986,cd986,cf691,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd987,cd987,cf692,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd988,cd988,cf693,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{cd989,cd989,cf694,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{cd990,cd990,cf695,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd991,cd991,cf696,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd992,cd992,cf697,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd993,cd993,cf698,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd994,cd994,cf691,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd995,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{cd996,cd996,cf226,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd995,0,0,0,Sk,0,GBOther,WBOther,SBOther}
+{cd983,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd984,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd985,cf690,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd986,cf691,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd987,cf692,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd988,cf693,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{cd989,cf694,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{cd990,cf695,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd991,cf696,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd992,cf697,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd993,cf698,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd994,cf691,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd995,0,0,Sk,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd996,cf226,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd995,0,0,Sk,unicode_compatibility_decomposition,GBOther,WBOther,SBOther}
 };
 /* 1FC0-1FCF */
 static const struct unidata st294[] = {
-{cd997,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{cd998,cd998,0,0,Sk,0,GBOther,WBOther,SBOther},
-{cd999,cd999,cf699,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd1000,cd1000,cf700,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd1001,cd1001,cf701,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd1002,cd1002,cf702,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{cd1003,cd1003,cf703,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{cd1004,cd1004,cf704,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd1005,cd1005,cf705,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd1006,cd1006,cf706,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd1007,cd1007,cf707,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd1008,cd1008,cf700,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd1009,cd1009,0,0,Sk,0,GBOther,WBOther,SBOther},
-{cd1010,cd1010,0,0,Sk,0,GBOther,WBOther,SBOther},
-{cd1011,cd1011,0,0,Sk,0,GBOther,WBOther,SBOther}
+{cd997,0,0,Sk,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd998,0,0,Sk,0,GBOther,WBOther,SBOther},
+{cd999,cf699,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd1000,cf700,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd1001,cf701,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd1002,cf702,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{cd1003,cf703,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{cd1004,cf704,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd1005,cf705,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd1006,cf706,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd1007,cf707,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd1008,cf700,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd1009,0,0,Sk,0,GBOther,WBOther,SBOther},
+{cd1010,0,0,Sk,0,GBOther,WBOther,SBOther},
+{cd1011,0,0,Sk,0,GBOther,WBOther,SBOther}
 };
 /* 1FD0-1FDF */
 static const struct unidata st295[] = {
-{cd1012,cd1012,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd1013,cd1013,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd1014,cd1014,cf708,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{cd1015,cd1015,cf234,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd1016,cd1016,cf709,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{cd1017,cd1017,cf710,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{cd1018,cd1018,cf711,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd1019,cd1019,cf712,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd1020,cd1020,cf713,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd1021,cd1021,cf714,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd1022,cd1022,0,0,Sk,0,GBOther,WBOther,SBOther},
-{cd1023,cd1023,0,0,Sk,0,GBOther,WBOther,SBOther},
-{cd1024,cd1024,0,0,Sk,0,GBOther,WBOther,SBOther}
+{cd1012,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd1013,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd1014,cf708,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{cd1015,cf234,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd1016,cf709,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{cd1017,cf710,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{cd1018,cf711,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd1019,cf712,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd1020,cf713,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd1021,cf714,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd1022,0,0,Sk,0,GBOther,WBOther,SBOther},
+{cd1023,0,0,Sk,0,GBOther,WBOther,SBOther},
+{cd1024,0,0,Sk,0,GBOther,WBOther,SBOther}
 };
 /* 1FE0-1FEF */
 static const struct unidata st296[] = {
-{cd1025,cd1025,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd1026,cd1026,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd1027,cd1027,cf715,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{cd1028,cd1028,cf259,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{cd1029,cd1029,cf716,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{cd1030,cd1030,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd1031,cd1031,cf717,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{cd1032,cd1032,cf718,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{cd1033,cd1033,cf719,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd1034,cd1034,cf720,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd1035,cd1035,cf721,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd1036,cd1036,cf722,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd1037,cd1037,cf723,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd1038,cd1038,0,0,Sk,0,GBOther,WBOther,SBOther},
-{cd1039,cd1039,0,0,Sk,0,GBOther,WBOther,SBOther},
-{cd1040,cd1040,0,0,Sk,0,GBOther,WBOther,SBOther}
+{cd1025,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd1026,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd1027,cf715,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{cd1028,cf259,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{cd1029,cf716,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{cd1030,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd1031,cf717,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{cd1032,cf718,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{cd1033,cf719,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd1034,cf720,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd1035,cf721,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd1036,cf722,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd1037,cf723,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd1038,0,0,Sk,0,GBOther,WBOther,SBOther},
+{cd1039,0,0,Sk,0,GBOther,WBOther,SBOther},
+{cd1040,0,0,Sk,0,GBOther,WBOther,SBOther}
 };
 /* 1FF0-1FFF */
 static const struct unidata st297[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd1041,cd1041,cf724,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd1042,cd1042,cf725,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd1043,cd1043,cf726,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd1044,cd1044,cf727,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{cd1045,cd1045,cf728,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
-{cd1046,cd1046,cf729,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd1047,cd1047,cf730,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd1048,cd1048,cf731,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd1049,cd1049,cf732,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd1050,cd1050,cf725,0,Lt,0,GBOther,WBALetter,SBUpper},
-{cd1051,cd1051,0,0,Sk,0,GBOther,WBOther,SBOther},
-{cd1052,0,0,0,Sk,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd1041,cf724,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd1042,cf725,0,Ll,0,GBOther,WBALetter,SBLower},
+{cd1043,cf726,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd1044,cf727,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{cd1045,cf728,0,Ll,unicode_normalize_before_casefold,GBOther,WBALetter,SBLower},
+{cd1046,cf729,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd1047,cf730,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd1048,cf731,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd1049,cf732,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd1050,cf725,0,Lt,0,GBOther,WBALetter,SBUpper},
+{cd1051,0,0,Sk,0,GBOther,WBOther,SBOther},
+{cd1052,0,0,Sk,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 2000-200F */
 static const struct unidata st298[] = {
-{cd1053,cd1053,0,0,Zs,0,GBOther,WBOther,SBSp},
-{cd1054,cd1054,0,0,Zs,0,GBOther,WBOther,SBSp},
-{cd0,0,0,0,Zs,0,GBOther,WBOther,SBSp},
-{cd0,0,0,0,Zs,0,GBOther,WBOther,SBSp},
-{cd0,0,0,0,Zs,0,GBOther,WBOther,SBSp},
-{cd0,0,0,0,Zs,0,GBOther,WBOther,SBSp},
-{cd0,0,0,0,Zs,0,GBOther,WBOther,SBSp},
-{cd0,0,0,0,Zs,0,GBOther,WBOther,SBSp},
-{cd0,0,0,0,Zs,0,GBOther,WBOther,SBSp},
-{cd0,0,0,0,Zs,0,GBOther,WBOther,SBSp},
-{cd0,0,0,0,Zs,0,GBOther,WBOther,SBSp},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{0,0,0,0,Cf,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cf,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat}
+{cd1053,0,0,Zs,0,GBOther,WBOther,SBSp},
+{cd1054,0,0,Zs,0,GBOther,WBOther,SBSp},
+{cd0,0,0,Zs,unicode_compatibility_decomposition,GBOther,WBOther,SBSp},
+{cd0,0,0,Zs,unicode_compatibility_decomposition,GBOther,WBOther,SBSp},
+{cd0,0,0,Zs,unicode_compatibility_decomposition,GBOther,WBOther,SBSp},
+{cd0,0,0,Zs,unicode_compatibility_decomposition,GBOther,WBOther,SBSp},
+{cd0,0,0,Zs,unicode_compatibility_decomposition,GBOther,WBOther,SBSp},
+{cd0,0,0,Zs,unicode_compatibility_decomposition,GBOther,WBOther,SBSp},
+{cd0,0,0,Zs,unicode_compatibility_decomposition,GBOther,WBOther,SBSp},
+{cd0,0,0,Zs,unicode_compatibility_decomposition,GBOther,WBOther,SBSp},
+{cd0,0,0,Zs,unicode_compatibility_decomposition,GBOther,WBOther,SBSp},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{0,0,0,Cf,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cf,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat}
 };
 /* 2010-201F */
 static const struct unidata st299[] = {
-{0,0,0,0,Pd,0,GBOther,WBOther,SBOther},
-{cd1055,0,0,0,Pd,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Pd,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Pd,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Pd,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Pd,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{cd1056,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Pi,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Pf,0,GBOther,WBMidLetter,SBClose},
-{0,0,0,0,Ps,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Pi,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Pi,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Pf,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Ps,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Pi,0,GBOther,WBOther,SBClose}
+{0,0,0,Pd,0,GBOther,WBOther,SBOther},
+{cd1055,0,0,Pd,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{0,0,0,Pd,0,GBOther,WBOther,SBOther},
+{0,0,0,Pd,0,GBOther,WBOther,SBOther},
+{0,0,0,Pd,0,GBOther,WBOther,SBOther},
+{0,0,0,Pd,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{cd1056,0,0,Po,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{0,0,0,Pi,0,GBOther,WBOther,SBClose},
+{0,0,0,Pf,0,GBOther,WBMidLetter,SBClose},
+{0,0,0,Ps,0,GBOther,WBOther,SBClose},
+{0,0,0,Pi,0,GBOther,WBOther,SBClose},
+{0,0,0,Pi,0,GBOther,WBOther,SBClose},
+{0,0,0,Pf,0,GBOther,WBOther,SBClose},
+{0,0,0,Ps,0,GBOther,WBOther,SBClose},
+{0,0,0,Pi,0,GBOther,WBOther,SBClose}
 };
 /* 2020-202F */
 static const struct unidata st300[] = {
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{cd1057,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{cd1058,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{cd1059,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBMidLetter,SBOther},
-{0,0,0,0,Zl,0,GBControl,WBOther,SBSep},
-{0,0,0,0,Zp,0,GBControl,WBOther,SBSep},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{cd0,0,0,0,Zs,0,GBOther,WBOther,SBSp}
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{cd1057,0,0,Po,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1058,0,0,Po,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1059,0,0,Po,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBMidLetter,SBOther},
+{0,0,0,Zl,0,GBControl,WBOther,SBSep},
+{0,0,0,Zp,0,GBControl,WBOther,SBSep},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{cd0,0,0,Zs,unicode_compatibility_decomposition,GBOther,WBOther,SBSp}
 };
 /* 2030-203F */
 static const struct unidata st301[] = {
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{cd1060,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{cd1061,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{cd1062,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{cd1063,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Pi,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Pf,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{cd1064,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{cd1065,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Pc,0,GBOther,WBExtendNumLet,SBOther}
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{cd1060,0,0,Po,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1061,0,0,Po,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{cd1062,0,0,Po,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1063,0,0,Po,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Pi,0,GBOther,WBOther,SBClose},
+{0,0,0,Pf,0,GBOther,WBOther,SBClose},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{cd1064,0,0,Po,unicode_compatibility_decomposition,GBOther,WBOther,SBSTerm},
+{0,0,0,Po,0,GBOther,WBOther,SBSTerm},
+{cd1065,0,0,Po,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{0,0,0,Pc,0,GBOther,WBExtendNumLet,SBOther}
 };
 /* 2040-204F */
 static const struct unidata st302[] = {
-{0,0,0,0,Pc,0,GBOther,WBExtendNumLet,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBMidNum,SBOther},
-{0,0,0,0,Ps,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Pe,0,GBOther,WBOther,SBClose},
-{cd1066,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{cd1067,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{cd1068,0,0,0,Po,0,GBOther,WBOther,SBSTerm},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther}
+{0,0,0,Pc,0,GBOther,WBExtendNumLet,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBMidNum,SBOther},
+{0,0,0,Ps,0,GBOther,WBOther,SBClose},
+{0,0,0,Pe,0,GBOther,WBOther,SBClose},
+{cd1066,0,0,Po,unicode_compatibility_decomposition,GBOther,WBOther,SBSTerm},
+{cd1067,0,0,Po,unicode_compatibility_decomposition,GBOther,WBOther,SBSTerm},
+{cd1068,0,0,Po,unicode_compatibility_decomposition,GBOther,WBOther,SBSTerm},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther}
 };
 /* 2050-205F */
 static const struct unidata st303[] = {
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Pc,0,GBOther,WBExtendNumLet,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{cd1069,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Po,0,GBOther,WBOther,SBOther},
-{cd0,0,0,0,Zs,0,GBOther,WBOther,SBSp}
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Pc,0,GBOther,WBExtendNumLet,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{cd1069,0,0,Po,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{0,0,0,Po,0,GBOther,WBOther,SBOther},
+{cd0,0,0,Zs,unicode_compatibility_decomposition,GBOther,WBOther,SBSp}
 };
 /* 2060-206F */
 static const struct unidata st304[] = {
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
-{0,0,0,0,Cf,0,GBControl,WBFormat,SBFormat}
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat},
+{0,0,0,Cf,0,GBControl,WBFormat,SBFormat}
 };
 /* 2070-207F */
 static const struct unidata st305[] = {
-{cd1070,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd538,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd1071,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1072,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1073,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1074,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1075,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1076,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1077,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1078,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1079,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1080,0,0,0,Ps,0,GBOther,WBOther,SBClose},
-{cd1081,0,0,0,Pe,0,GBOther,WBOther,SBClose},
-{cd1082,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd1070,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd538,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd1071,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1072,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1073,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1074,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1075,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1076,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1077,0,0,Sm,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1078,0,0,Sm,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1079,0,0,Sm,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1080,0,0,Ps,unicode_compatibility_decomposition,GBOther,WBOther,SBClose},
+{cd1081,0,0,Pe,unicode_compatibility_decomposition,GBOther,WBOther,SBClose},
+{cd1082,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower}
 };
 /* 2080-208F */
 static const struct unidata st306[] = {
-{cd1070,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd9,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd4,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd5,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1071,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1072,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1073,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1074,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1075,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1076,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1077,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1078,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1079,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1080,0,0,0,Ps,0,GBOther,WBOther,SBClose},
-{cd1081,0,0,0,Pe,0,GBOther,WBOther,SBClose},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{cd1070,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd9,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd4,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd5,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1071,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1072,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1073,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1074,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1075,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1076,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1077,0,0,Sm,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1078,0,0,Sm,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1079,0,0,Sm,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1080,0,0,Ps,unicode_compatibility_decomposition,GBOther,WBOther,SBClose},
+{cd1081,0,0,Pe,unicode_compatibility_decomposition,GBOther,WBOther,SBClose},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 2090-209F */
 static const struct unidata st307[] = {
-{cd2,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd517,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd10,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd301,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{cd518,0,0,0,Lm,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{cd2,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd517,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd10,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd301,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd518,0,0,Lm,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 20A0-20AF */
 static const struct unidata st308[] = {
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{cd1083,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther}
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{cd1083,0,0,Sc,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther}
 };
 /* 20B0-20BF */
 static const struct unidata st309[] = {
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sc,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Sc,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 20D0-20DF */
 static const struct unidata st310[] = {
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Me,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Me,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Me,0,GBExtend,WBExtend,SBExtend}
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Me,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Me,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Me,0,GBExtend,WBExtend,SBExtend}
 };
 /* 20E0-20EF */
 static const struct unidata st311[] = {
-{0,0,0,0,Me,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Me,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Me,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,0,Me,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
-{0,0,0,220,Mn,0,GBExtend,WBExtend,SBExtend}
+{0,0,0,Me,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Me,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Me,0,GBExtend,WBExtend,SBExtend},
+{0,0,0,Me,0,GBExtend,WBExtend,SBExtend},
+{0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,230,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,1,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend},
+{0,0,220,Mn,0,GBExtend,WBExtend,SBExtend}
 };
 /* 2100-210F */
 static const struct unidata st312[] = {
-{cd1084,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd1085,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd1086,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd1087,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd1088,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd1089,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd1090,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd1091,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd521,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd498,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd498,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd498,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd284,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd1092,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd1084,0,0,So,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1085,0,0,So,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1086,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd1087,0,0,So,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{cd1088,0,0,So,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1089,0,0,So,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1090,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{cd1091,0,0,So,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd521,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd498,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd498,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd498,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd284,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd1092,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower}
 };
 /* 2110-211F */
 static const struct unidata st313[] = {
-{cd499,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd499,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd502,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd300,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd504,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd1093,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd507,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd1094,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd508,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd508,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd508,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther}
+{cd499,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd499,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd502,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd300,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{cd504,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd1093,0,0,So,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{cd507,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd1094,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd508,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd508,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd508,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther}
 };
 /* 2120-212F */
 static const struct unidata st314[] = {
-{cd1095,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd1096,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd1097,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd1098,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd1099,cd1099,cf256,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd1098,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd501,cd501,cf10,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd1100,cd1100,cf32,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd493,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd1086,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd517,0,0,0,Ll,0,GBOther,WBALetter,SBLower}
+{cd1095,0,0,So,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1096,0,0,So,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1097,0,0,So,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{cd1098,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{cd1099,cf256,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{cd1098,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{cd501,cf10,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd1100,cf32,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd493,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd1086,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{cd517,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower}
 };
 /* 2130-213F */
 static const struct unidata st315[] = {
-{cd495,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd1101,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,cf733,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd503,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd10,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd1102,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd1103,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd1104,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd1105,0,0,0,Lo,0,GBOther,WBALetter,SBOLetter},
-{cd538,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd1106,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd338,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd535,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd1107,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd1108,0,0,0,Lu,0,GBOther,WBALetter,SBUpper}
+{cd495,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd1101,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{0,cf733,0,Lu,0,GBOther,WBALetter,SBUpper},
+{cd503,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd10,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd1102,0,0,Lo,unicode_compatibility_decomposition,GBOther,WBALetter,SBOLetter},
+{cd1103,0,0,Lo,unicode_compatibility_decomposition,GBOther,WBALetter,SBOLetter},
+{cd1104,0,0,Lo,unicode_compatibility_decomposition,GBOther,WBALetter,SBOLetter},
+{cd1105,0,0,Lo,unicode_compatibility_decomposition,GBOther,WBALetter,SBOLetter},
+{cd538,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{cd1106,0,0,So,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd338,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd535,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd1107,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd1108,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper}
 };
 /* 2140-214F */
 static const struct unidata st316[] = {
-{cd1109,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd494,0,0,0,Lu,0,GBOther,WBALetter,SBUpper},
-{cd516,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd517,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd538,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{cd286,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{cd1109,0,0,Sm,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd494,0,0,Lu,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd516,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd517,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd538,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd286,0,0,Ll,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 2150-215F */
 static const struct unidata st317[] = {
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{cd1110,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1111,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1112,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1113,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1114,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1115,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1116,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1117,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1118,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1119,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1120,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1121,0,0,0,No,0,GBOther,WBOther,SBOther},
-{cd1122,0,0,0,No,0,GBOther,WBOther,SBOther}
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{cd1110,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1111,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1112,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1113,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1114,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1115,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1116,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1117,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1118,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1119,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1120,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1121,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1122,0,0,No,unicode_compatibility_decomposition,GBOther,WBOther,SBOther}
 };
 /* 2160-216F */
 static const struct unidata st318[] = {
-{cd499,0,cf734,0,Nl,0,GBOther,WBALetter,SBUpper},
-{cd1123,0,cf735,0,Nl,0,GBOther,WBALetter,SBUpper},
-{cd1124,0,cf736,0,Nl,0,GBOther,WBALetter,SBUpper},
-{cd1125,0,cf737,0,Nl,0,GBOther,WBALetter,SBUpper},
-{cd1126,0,cf738,0,Nl,0,GBOther,WBALetter,SBUpper},
-{cd1127,0,cf739,0,Nl,0,GBOther,WBALetter,SBUpper},
-{cd1128,0,cf740,0,Nl,0,GBOther,WBALetter,SBUpper},
-{cd1129,0,cf741,0,Nl,0,GBOther,WBALetter,SBUpper},
-{cd1130,0,cf742,0,Nl,0,GBOther,WBALetter,SBUpper},
-{cd1131,0,cf743,0,Nl,0,GBOther,WBALetter,SBUpper},
-{cd1132,0,cf744,0,Nl,0,GBOther,WBALetter,SBUpper},
-{cd1133,0,cf745,0,Nl,0,GBOther,WBALetter,SBUpper},
-{cd502,0,cf746,0,Nl,0,GBOther,WBALetter,SBUpper},
-{cd1086,0,cf747,0,Nl,0,GBOther,WBALetter,SBUpper},
-{cd494,0,cf748,0,Nl,0,GBOther,WBALetter,SBUpper},
-{cd503,0,cf749,0,Nl,0,GBOther,WBALetter,SBUpper}
+{cd499,cf734,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd1123,cf735,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd1124,cf736,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd1125,cf737,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd1126,cf738,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd1127,cf739,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd1128,cf740,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd1129,cf741,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd1130,cf742,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd1131,cf743,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd1132,cf744,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd1133,cf745,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd502,cf746,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd1086,cf747,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd494,cf748,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper},
+{cd503,cf749,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBUpper}
 };
 /* 2170-217F */
 static const struct unidata st319[] = {
-{cd538,0,0,0,Nl,0,GBOther,WBALetter,SBLower},
-{cd1134,0,0,0,Nl,0,GBOther,WBALetter,SBLower},
-{cd1135,0,0,0,Nl,0,GBOther,WBALetter,SBLower},
-{cd1136,0,0,0,Nl,0,GBOther,WBALetter,SBLower},
-{cd533,0,0,0,Nl,0,GBOther,WBALetter,SBLower},
-{cd1137,0,0,0,Nl,0,GBOther,WBALetter,SBLower},
-{cd1138,0,0,0,Nl,0,GBOther,WBALetter,SBLower},
-{cd1139,0,0,0,Nl,0,GBOther,WBALetter,SBLower},
-{cd1140,0,0,0,Nl,0,GBOther,WBALetter,SBLower},
-{cd301,0,0,0,Nl,0,GBOther,WBALetter,SBLower},
-{cd1141,0,0,0,Nl,0,GBOther,WBALetter,SBLower},
-{cd1142,0,0,0,Nl,0,GBOther,WBALetter,SBLower},
-{cd300,0,0,0,Nl,0,GBOther,WBALetter,SBLower},
-{cd541,0,0,0,Nl,0,GBOther,WBALetter,SBLower},
-{cd516,0,0,0,Nl,0,GBOther,WBALetter,SBLower},
-{cd523,0,0,0,Nl,0,GBOther,WBALetter,SBLower}
+{cd538,0,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd1134,0,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd1135,0,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd1136,0,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd533,0,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd1137,0,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd1138,0,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd1139,0,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd1140,0,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd301,0,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd1141,0,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd1142,0,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd300,0,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd541,0,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd516,0,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower},
+{cd523,0,0,Nl,unicode_compatibility_decomposition,GBOther,WBALetter,SBLower}
 };
 /* 2180-218F */
 static const struct unidata st320[] = {
-{0,0,0,0,Nl,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Nl,0,GBOther,WBALetter,SBOLetter},
-{0,0,0,0,Nl,0,GBOther,WBALetter,SBOLetter},
-{0,0,cf750,0,Lu,0,GBOther,WBALetter,SBUpper},
-{0,0,0,0,Ll,0,GBOther,WBALetter,SBLower},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Cn,0,GBOther,WBOther,SBOther}
+{0,0,0,Nl,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Nl,0,GBOther,WBALetter,SBOLetter},
+{0,0,0,Nl,0,GBOther,WBALetter,SBOLetter},
+{0,cf750,0,Lu,0,GBOther,WBALetter,SBUpper},
+{0,0,0,Ll,0,GBOther,WBALetter,SBLower},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther},
+{0,0,0,Cn,0,GBOther,WBOther,SBOther}
 };
 /* 2190-219F */
 static const struct unidata st321[] = {
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd1143,cd1143,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1144,cd1144,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther}
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{cd1143,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd1144,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther}
 };
 /* 21A0-21AF */
 static const struct unidata st322[] = {
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd1145,cd1145,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther}
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{cd1145,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther}
 };
 /* 21C0-21CF */
 static const struct unidata st323[] = {
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{cd1146,cd1146,0,0,So,0,GBOther,WBOther,SBOther},
-{cd1147,cd1147,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1148,cd1148,0,0,Sm,0,GBOther,WBOther,SBOther}
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{cd1146,0,0,So,0,GBOther,WBOther,SBOther},
+{cd1147,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd1148,0,0,Sm,0,GBOther,WBOther,SBOther}
 };
 /* 21D0-21DF */
 static const struct unidata st324[] = {
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther}
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther}
 };
 /* 21F0-21FF */
 static const struct unidata st325[] = {
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,So,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther}
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,So,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther}
 };
 /* 2200-220F */
 static const struct unidata st326[] = {
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1149,cd1149,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1150,cd1150,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1151,cd1151,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther}
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd1149,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd1150,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd1151,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther}
 };
 /* 2210-221F */
 static const struct unidata st327[] = {
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther}
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther}
 };
 /* 2220-222F */
 static const struct unidata st328[] = {
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1152,cd1152,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1153,cd1153,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1154,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1155,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1156,0,0,0,Sm,0,GBOther,WBOther,SBOther}
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd1152,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd1153,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd1154,0,0,Sm,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{cd1155,0,0,Sm,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd1156,0,0,Sm,unicode_compatibility_decomposition,GBOther,WBOther,SBOther}
 };
 /* 2230-223F */
 static const struct unidata st329[] = {
-{cd1157,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther}
+{cd1157,0,0,Sm,unicode_compatibility_decomposition,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther}
 };
 /* 2240-224F */
 static const struct unidata st330[] = {
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1158,cd1158,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1159,cd1159,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1160,cd1160,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1161,cd1161,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther}
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd1158,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd1159,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd1160,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd1161,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther}
 };
 /* 2260-226F */
 static const struct unidata st331[] = {
-{cd1162,cd1162,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1163,cd1163,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1164,cd1164,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1165,cd1165,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1166,cd1166,0,0,Sm,0,GBOther,WBOther,SBOther}
+{cd1162,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd1163,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd1164,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd1165,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd1166,0,0,Sm,0,GBOther,WBOther,SBOther}
 };
 /* 2270-227F */
 static const struct unidata st332[] = {
-{cd1167,cd1167,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1168,cd1168,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1169,cd1169,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1170,cd1170,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1171,cd1171,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1172,cd1172,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther}
+{cd1167,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd1168,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd1169,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd1170,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd1171,0,0,Sm,0,GBOther,WBOther,SBOther},
+{cd1172,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther},
+{0,0,0,Sm,0,GBOther,WBOther,SBOther}
 };
 /* 2280-228F */
 static const struct unidata st333[] = {
-{cd1173,cd1173,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1174,cd1174,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1175,cd1175,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1176,cd1176,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{0,0,0,0,Sm,0,GBOther,WBOther,SBOther},
-{cd1177,