changeset 17874:28aaca2f8869

libunistring: update to Unicode 7.0.0 * lib/unictype/joininggroup_byname.gperf: Add Straight Waw and Manichaean names. * lib/unictype/joininggroup_name.h: Likewise. * lib/unictype.in.h (UC_JOINING_GROUP_STRAIGHT_WAW) (UC_JOINING_GROUP_MANICHAEAN_ALEPH): New enumeration values. * lib/gen-uni-tables.c (UC_JOINING_GROUP_STRAIGHT_WAW) (UC_JOINING_GROUP_MANICHAEAN_*): New enumeration values. (fill_arabicshaping, joining_group_as_c_identifier): Support those enum values. (is_property_alphabetic): Accept newly added characters to cuneiform numeric signs. (is_property_default_ignorable_code_point): Reject U+0605. (FIELDLEN): Increase from 120 to 160. * lib/uniwidth/width.c (nonspacing_table_data): Add U+0605, U+08FF, U+0C00, U+0C81, U+0D01, U+1AB0..U+1ABE, U+1BAC..U+1BAD, U+1CF8..U+1CF9, U+1DE7..U+1DF5, U+A9E5, U+AA7C, U+FE27..U+FE2D, U+102E0, U+10376..U+1037A, U+10AE5..U+10AE6, U+1107F, U+11173, U+1122F..U+11231, U+11234, U+11236..U+11237, U+112DF, U+112E3..U+112EA, U+11301, U+1133C, U+11340, U+11366..U+1136C, U+11370..U+11374, U+114B3..U+114B8, U+114BA, U+114BF..U+114C0, U+114C2..U+114C3, U+115B2..U+115B5, U+115BC..U+115C0, U+11633..U+1163A, U+1163D, U+1163F..U+11640, U+16AF0..U+16AF4, U+16B30..U+16B36, U+1BC9D..U+1BC9E, U+1BCA0..U+1BCA3, and U+1E8D0..U+1E8D6. (uc_width): Adjust nonspacing_table_ind boundary from 240 to 248. * tests/uniwidth/test-uc_width2.sh: Same updates as in lib/uniwidth/width.c. * all generated files under lib/uni* and tests/uni*: Regenerate.
author Daiki Ueno <ueno@gnu.org>
date Thu, 15 Jan 2015 12:44:00 +0900
parents 0ac82416768a
children c6644628a8c9
files ChangeLog lib/gen-uni-tables.c lib/unicase/cased.h lib/unicase/ignorable.h lib/unicase/special-casing-table.gperf lib/unicase/tocasefold.h lib/unicase/tolower.h lib/unicase/totitle.h lib/unicase/toupper.h lib/unictype.in.h lib/unictype/bidi_of.h lib/unictype/blocks.h lib/unictype/categ_C.h lib/unictype/categ_Cc.h lib/unictype/categ_Cf.h lib/unictype/categ_Cn.h lib/unictype/categ_Co.h lib/unictype/categ_Cs.h lib/unictype/categ_L.h lib/unictype/categ_LC.h lib/unictype/categ_Ll.h lib/unictype/categ_Lm.h lib/unictype/categ_Lo.h lib/unictype/categ_Lt.h lib/unictype/categ_Lu.h lib/unictype/categ_M.h lib/unictype/categ_Mc.h lib/unictype/categ_Me.h lib/unictype/categ_Mn.h lib/unictype/categ_N.h lib/unictype/categ_Nd.h lib/unictype/categ_Nl.h lib/unictype/categ_No.h lib/unictype/categ_P.h lib/unictype/categ_Pc.h lib/unictype/categ_Pd.h lib/unictype/categ_Pe.h lib/unictype/categ_Pf.h lib/unictype/categ_Pi.h lib/unictype/categ_Po.h lib/unictype/categ_Ps.h lib/unictype/categ_S.h lib/unictype/categ_Sc.h lib/unictype/categ_Sk.h lib/unictype/categ_Sm.h lib/unictype/categ_So.h lib/unictype/categ_Z.h lib/unictype/categ_Zl.h lib/unictype/categ_Zp.h lib/unictype/categ_Zs.h lib/unictype/categ_of.h lib/unictype/combiningclass.h lib/unictype/ctype_alnum.h lib/unictype/ctype_alpha.h lib/unictype/ctype_blank.h lib/unictype/ctype_cntrl.h lib/unictype/ctype_digit.h lib/unictype/ctype_graph.h lib/unictype/ctype_lower.h lib/unictype/ctype_print.h lib/unictype/ctype_punct.h lib/unictype/ctype_space.h lib/unictype/ctype_upper.h lib/unictype/ctype_xdigit.h lib/unictype/decdigit.h lib/unictype/digit.h lib/unictype/joininggroup_byname.gperf lib/unictype/joininggroup_name.h lib/unictype/joininggroup_of.h lib/unictype/joiningtype_of.h lib/unictype/mirror.h lib/unictype/numeric.h lib/unictype/pr_alphabetic.h lib/unictype/pr_ascii_hex_digit.h lib/unictype/pr_bidi_arabic_digit.h lib/unictype/pr_bidi_arabic_right_to_left.h lib/unictype/pr_bidi_block_separator.h lib/unictype/pr_bidi_boundary_neutral.h lib/unictype/pr_bidi_common_separator.h lib/unictype/pr_bidi_control.h lib/unictype/pr_bidi_embedding_or_override.h lib/unictype/pr_bidi_eur_num_separator.h lib/unictype/pr_bidi_eur_num_terminator.h lib/unictype/pr_bidi_european_digit.h lib/unictype/pr_bidi_hebrew_right_to_left.h lib/unictype/pr_bidi_left_to_right.h lib/unictype/pr_bidi_non_spacing_mark.h lib/unictype/pr_bidi_other_neutral.h lib/unictype/pr_bidi_pdf.h lib/unictype/pr_bidi_segment_separator.h lib/unictype/pr_bidi_whitespace.h lib/unictype/pr_case_ignorable.h lib/unictype/pr_cased.h lib/unictype/pr_changes_when_casefolded.h lib/unictype/pr_changes_when_casemapped.h lib/unictype/pr_changes_when_lowercased.h lib/unictype/pr_changes_when_titlecased.h lib/unictype/pr_changes_when_uppercased.h lib/unictype/pr_combining.h lib/unictype/pr_composite.h lib/unictype/pr_currency_symbol.h lib/unictype/pr_dash.h lib/unictype/pr_decimal_digit.h lib/unictype/pr_default_ignorable_code_point.h lib/unictype/pr_deprecated.h lib/unictype/pr_diacritic.h lib/unictype/pr_extender.h lib/unictype/pr_format_control.h lib/unictype/pr_grapheme_base.h lib/unictype/pr_grapheme_extend.h lib/unictype/pr_grapheme_link.h lib/unictype/pr_hex_digit.h lib/unictype/pr_hyphen.h lib/unictype/pr_id_continue.h lib/unictype/pr_id_start.h lib/unictype/pr_ideographic.h lib/unictype/pr_ids_binary_operator.h lib/unictype/pr_ids_trinary_operator.h lib/unictype/pr_ignorable_control.h lib/unictype/pr_iso_control.h lib/unictype/pr_join_control.h lib/unictype/pr_left_of_pair.h lib/unictype/pr_line_separator.h lib/unictype/pr_logical_order_exception.h lib/unictype/pr_lowercase.h lib/unictype/pr_math.h lib/unictype/pr_non_break.h lib/unictype/pr_not_a_character.h lib/unictype/pr_numeric.h lib/unictype/pr_other_alphabetic.h lib/unictype/pr_other_default_ignorable_code_point.h lib/unictype/pr_other_grapheme_extend.h lib/unictype/pr_other_id_continue.h lib/unictype/pr_other_id_start.h lib/unictype/pr_other_lowercase.h lib/unictype/pr_other_math.h lib/unictype/pr_other_uppercase.h lib/unictype/pr_paired_punctuation.h lib/unictype/pr_paragraph_separator.h lib/unictype/pr_pattern_syntax.h lib/unictype/pr_pattern_white_space.h lib/unictype/pr_private_use.h lib/unictype/pr_punctuation.h lib/unictype/pr_quotation_mark.h lib/unictype/pr_radical.h lib/unictype/pr_sentence_terminal.h lib/unictype/pr_soft_dotted.h lib/unictype/pr_space.h lib/unictype/pr_terminal_punctuation.h lib/unictype/pr_titlecase.h lib/unictype/pr_unassigned_code_value.h lib/unictype/pr_unified_ideograph.h lib/unictype/pr_uppercase.h lib/unictype/pr_variation_selector.h lib/unictype/pr_white_space.h lib/unictype/pr_xid_continue.h lib/unictype/pr_xid_start.h lib/unictype/pr_zero_width.h lib/unictype/scripts.h lib/unictype/scripts_byname.gperf lib/unictype/sy_c_ident.h lib/unictype/sy_c_whitespace.h lib/unictype/sy_java_ident.h lib/unictype/sy_java_whitespace.h lib/unigbrk/gbrkprop.h lib/unilbrk/lbrkprop1.h lib/unilbrk/lbrkprop2.h lib/uninorm/composition-table.gperf lib/uninorm/decomposition-table1.h lib/uninorm/decomposition-table2.h lib/uniwbrk/wbrkprop.h lib/uniwidth/width.c tests/unicase/test-cased.c tests/unicase/test-ignorable.c tests/unicase/test-uc_tolower.c tests/unicase/test-uc_totitle.c tests/unicase/test-uc_toupper.c tests/unictype/test-categ_C.c tests/unictype/test-categ_Cf.c tests/unictype/test-categ_Cn.c tests/unictype/test-categ_L.c tests/unictype/test-categ_LC.c tests/unictype/test-categ_Ll.c tests/unictype/test-categ_Lm.c tests/unictype/test-categ_Lo.c tests/unictype/test-categ_Lu.c tests/unictype/test-categ_M.c tests/unictype/test-categ_Mc.c tests/unictype/test-categ_Me.c tests/unictype/test-categ_Mn.c tests/unictype/test-categ_N.c tests/unictype/test-categ_Nd.c tests/unictype/test-categ_Nl.c tests/unictype/test-categ_No.c tests/unictype/test-categ_P.c tests/unictype/test-categ_Pd.c tests/unictype/test-categ_Pe.c tests/unictype/test-categ_Po.c tests/unictype/test-categ_Ps.c tests/unictype/test-categ_S.c tests/unictype/test-categ_Sc.c tests/unictype/test-categ_Sk.c tests/unictype/test-categ_So.c tests/unictype/test-ctype_alnum.c tests/unictype/test-ctype_alpha.c tests/unictype/test-ctype_graph.c tests/unictype/test-ctype_lower.c tests/unictype/test-ctype_print.c tests/unictype/test-ctype_punct.c tests/unictype/test-ctype_upper.c tests/unictype/test-decdigit.h tests/unictype/test-digit.h tests/unictype/test-joininggroup_of.h tests/unictype/test-joiningtype_of.h tests/unictype/test-numeric.h tests/unictype/test-pr_alphabetic.c tests/unictype/test-pr_bidi_arabic_digit.c tests/unictype/test-pr_bidi_arabic_right_to_left.c tests/unictype/test-pr_bidi_boundary_neutral.c tests/unictype/test-pr_bidi_eur_num_terminator.c tests/unictype/test-pr_bidi_european_digit.c tests/unictype/test-pr_bidi_hebrew_right_to_left.c tests/unictype/test-pr_bidi_left_to_right.c tests/unictype/test-pr_bidi_non_spacing_mark.c tests/unictype/test-pr_bidi_other_neutral.c tests/unictype/test-pr_case_ignorable.c tests/unictype/test-pr_cased.c tests/unictype/test-pr_changes_when_casefolded.c tests/unictype/test-pr_changes_when_casemapped.c tests/unictype/test-pr_changes_when_lowercased.c tests/unictype/test-pr_changes_when_titlecased.c tests/unictype/test-pr_changes_when_uppercased.c tests/unictype/test-pr_combining.c tests/unictype/test-pr_composite.c tests/unictype/test-pr_currency_symbol.c tests/unictype/test-pr_dash.c tests/unictype/test-pr_decimal_digit.c tests/unictype/test-pr_default_ignorable_code_point.c tests/unictype/test-pr_diacritic.c tests/unictype/test-pr_extender.c tests/unictype/test-pr_format_control.c tests/unictype/test-pr_grapheme_base.c tests/unictype/test-pr_grapheme_extend.c tests/unictype/test-pr_grapheme_link.c tests/unictype/test-pr_id_continue.c tests/unictype/test-pr_id_start.c tests/unictype/test-pr_ignorable_control.c tests/unictype/test-pr_lowercase.c tests/unictype/test-pr_numeric.c tests/unictype/test-pr_other_alphabetic.c tests/unictype/test-pr_other_grapheme_extend.c tests/unictype/test-pr_other_lowercase.c tests/unictype/test-pr_other_uppercase.c tests/unictype/test-pr_punctuation.c tests/unictype/test-pr_quotation_mark.c tests/unictype/test-pr_sentence_terminal.c tests/unictype/test-pr_terminal_punctuation.c tests/unictype/test-pr_unassigned_code_value.c tests/unictype/test-pr_uppercase.c tests/unictype/test-pr_xid_continue.c tests/unictype/test-pr_xid_start.c tests/unictype/test-pr_zero_width.c tests/unigbrk/GraphemeBreakTest.txt tests/unigbrk/test-uc-gbrk-prop.h tests/uninorm/NormalizationTest.txt tests/uniwidth/test-uc_width2.sh
diffstat 266 files changed, 15119 insertions(+), 8219 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,37 @@
 2015-01-15  Daiki Ueno  <ueno@gnu.org>
 
+	libunistring: update to Unicode 7.0.0
+	* lib/unictype/joininggroup_byname.gperf: Add Straight Waw and
+	Manichaean names.
+	* lib/unictype/joininggroup_name.h: Likewise.
+	* lib/unictype.in.h (UC_JOINING_GROUP_STRAIGHT_WAW)
+	(UC_JOINING_GROUP_MANICHAEAN_ALEPH): New enumeration values.
+	* lib/gen-uni-tables.c (UC_JOINING_GROUP_STRAIGHT_WAW)
+	(UC_JOINING_GROUP_MANICHAEAN_*): New enumeration values.
+	(fill_arabicshaping, joining_group_as_c_identifier): Support those
+	enum values.
+	(is_property_alphabetic): Accept newly added characters to
+	cuneiform numeric signs.
+	(is_property_default_ignorable_code_point): Reject U+0605.
+	(FIELDLEN): Increase from 120 to 160.
+	* lib/uniwidth/width.c (nonspacing_table_data): Add U+0605,
+	U+08FF, U+0C00, U+0C81, U+0D01, U+1AB0..U+1ABE, U+1BAC..U+1BAD,
+	U+1CF8..U+1CF9, U+1DE7..U+1DF5, U+A9E5, U+AA7C, U+FE27..U+FE2D,
+	U+102E0, U+10376..U+1037A, U+10AE5..U+10AE6, U+1107F, U+11173,
+	U+1122F..U+11231, U+11234, U+11236..U+11237, U+112DF,
+	U+112E3..U+112EA, U+11301, U+1133C, U+11340, U+11366..U+1136C,
+	U+11370..U+11374, U+114B3..U+114B8, U+114BA, U+114BF..U+114C0,
+	U+114C2..U+114C3, U+115B2..U+115B5, U+115BC..U+115C0,
+	U+11633..U+1163A, U+1163D, U+1163F..U+11640, U+16AF0..U+16AF4,
+	U+16B30..U+16B36, U+1BC9D..U+1BC9E, U+1BCA0..U+1BCA3, and
+	U+1E8D0..U+1E8D6.
+	(uc_width): Adjust nonspacing_table_ind boundary from 240 to 248.
+	* tests/uniwidth/test-uc_width2.sh: Same updates as in
+	lib/uniwidth/width.c.
+	* all generated files under lib/uni* and tests/uni*: Regenerate.
+
+2015-01-14  Daiki Ueno  <ueno@gnu.org>
+
 	libunistring: update to Unicode 6.3.0
 	* lib/uniwbrk.in.h (WBP_DQ, WBP_SQ, WBP_HL): New enumeration values.
 	* lib/uniwbrk/u-wordbreaks.h (FUNC): Support WB7a, WB7b, and WB7c.
--- a/lib/gen-uni-tables.c
+++ b/lib/gen-uni-tables.c
@@ -32,7 +32,7 @@
                       /usr/local/share/Unidata/CompositionExclusions.txt \
                       /usr/local/share/Unidata/SpecialCasing.txt \
                       /usr/local/share/Unidata/CaseFolding.txt \
-                      6.3.0
+                      7.0.0
  */
 
 #include <assert.h>
@@ -114,7 +114,7 @@
 }
 
 /* Maximum length of a field in the UnicodeData.txt file.  */
-#define FIELDLEN 120
+#define FIELDLEN 160
 
 /* Reads the next field from STREAM.  The buffer BUFFER has size FIELDLEN.
    Reads up to (but excluding) DELIM.
@@ -2855,7 +2855,7 @@
     || (ch == 0x10341) /* GOTHIC LETTER NINETY */
     || (ch == 0x1034A) /* GOTHIC LETTER NINE HUNDRED */
     || (ch >= 0x103D1 && ch <= 0x103D5) /* OLD PERSIAN NUMBERS */
-    || (ch >= 0x12400 && ch <= 0x12462); /* CUNEIFORM NUMERIC SIGNS */
+    || (ch >= 0x12400 && ch <= 0x1246E); /* CUNEIFORM NUMERIC SIGNS */
   bool result2 =
     ((unicode_properties[ch] & (1ULL << PROP_ALPHABETIC)) != 0);
 
@@ -2885,7 +2885,7 @@
   bool result1 =
     (is_category_Cf (ch)
      && !(ch >= 0xFFF9 && ch <= 0xFFFB) /* Annotations */
-     && !((ch >= 0x0600 && ch <= 0x0604) || ch == 0x06DD || ch == 0x070F)
+     && !((ch >= 0x0600 && ch <= 0x0605) || ch == 0x06DD || ch == 0x070F)
      /* For some reason, the following are not listed as having property
         Default_Ignorable_Code_Point.  */
      && !(ch == 0x110BD))
@@ -3757,7 +3757,35 @@
   UC_JOINING_GROUP_YUDH_HE,               /* Yudh_He */
   UC_JOINING_GROUP_ZAIN,                  /* Zain */
   UC_JOINING_GROUP_ZHAIN,                 /* Zhain */
-  UC_JOINING_GROUP_ROHINGYA_YEH           /* Rohingya_Yeh */
+  UC_JOINING_GROUP_ROHINGYA_YEH,          /* Rohingya_Yeh */
+  UC_JOINING_GROUP_STRAIGHT_WAW,          /* Straight_Waw */
+  UC_JOINING_GROUP_MANICHAEAN_ALEPH,      /* Manichaean_Aleph */
+  UC_JOINING_GROUP_MANICHAEAN_BETH,       /* Manichaean_Beth */
+  UC_JOINING_GROUP_MANICHAEAN_GIMEL,      /* Manichaean_Gimel */
+  UC_JOINING_GROUP_MANICHAEAN_DALETH,     /* Manichaean_Daleth */
+  UC_JOINING_GROUP_MANICHAEAN_WAW,        /* Manichaean_Waw */
+  UC_JOINING_GROUP_MANICHAEAN_ZAYIN,      /* Manichaean_Zayin */
+  UC_JOINING_GROUP_MANICHAEAN_HETH,       /* Manichaean_Heth */
+  UC_JOINING_GROUP_MANICHAEAN_TETH,       /* Manichaean_Teth */
+  UC_JOINING_GROUP_MANICHAEAN_YODH,       /* Manichaean_Yodh */
+  UC_JOINING_GROUP_MANICHAEAN_KAPH,       /* Manichaean_Kaph */
+  UC_JOINING_GROUP_MANICHAEAN_LAMEDH,     /* Manichaean_Lamedh */
+  UC_JOINING_GROUP_MANICHAEAN_DHAMEDH,    /* Manichaean_Dhamedh */
+  UC_JOINING_GROUP_MANICHAEAN_THAMEDH,    /* Manichaean_Thamedh */
+  UC_JOINING_GROUP_MANICHAEAN_MEM,        /* Manichaean_Mem */
+  UC_JOINING_GROUP_MANICHAEAN_NUN,        /* Manichaean_Nun */
+  UC_JOINING_GROUP_MANICHAEAN_SAMEKH,     /* Manichaean_Aleph */
+  UC_JOINING_GROUP_MANICHAEAN_AYIN,       /* Manichaean_Ayin */
+  UC_JOINING_GROUP_MANICHAEAN_PE,         /* Manichaean_Pe */
+  UC_JOINING_GROUP_MANICHAEAN_SADHE,      /* Manichaean_Sadhe */
+  UC_JOINING_GROUP_MANICHAEAN_QOPH,       /* Manichaean_Qoph */
+  UC_JOINING_GROUP_MANICHAEAN_RESH,       /* Manichaean_Resh */
+  UC_JOINING_GROUP_MANICHAEAN_TAW,        /* Manichaean_Taw */
+  UC_JOINING_GROUP_MANICHAEAN_ONE,        /* Manichaean_One */
+  UC_JOINING_GROUP_MANICHAEAN_FIVE,       /* Manichaean_Five */
+  UC_JOINING_GROUP_MANICHAEAN_TEN,        /* Manichaean_Ten */
+  UC_JOINING_GROUP_MANICHAEAN_TWENTY,     /* Manichaean_Twenty */
+  UC_JOINING_GROUP_MANICHAEAN_HUNDRED     /* Manichaean_Hundred */
 };
 
 static uint8_t unicode_joining_group[0x110000];
@@ -3897,6 +3925,34 @@
       TRY(UC_JOINING_GROUP_ZAIN,                  "ZAIN")
       TRY(UC_JOINING_GROUP_ZHAIN,                 "ZHAIN")
       TRY(UC_JOINING_GROUP_ROHINGYA_YEH,          "ROHINGYA YEH")
+      TRY(UC_JOINING_GROUP_STRAIGHT_WAW,          "STRAIGHT WAW")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_ALEPH,      "MANICHAEAN ALEPH")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_BETH,       "MANICHAEAN BETH")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_GIMEL,      "MANICHAEAN GIMEL")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_DALETH,     "MANICHAEAN DALETH")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_WAW,        "MANICHAEAN WAW")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_ZAYIN,      "MANICHAEAN ZAYIN")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_HETH,       "MANICHAEAN HETH")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_TETH,       "MANICHAEAN TETH")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_YODH,       "MANICHAEAN YODH")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_KAPH,       "MANICHAEAN KAPH")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_LAMEDH,     "MANICHAEAN LAMEDH")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_DHAMEDH,    "MANICHAEAN DHAMEDH")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_THAMEDH,    "MANICHAEAN THAMEDH")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_MEM,        "MANICHAEAN MEM")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_NUN,        "MANICHAEAN NUN")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_SAMEKH,     "MANICHAEAN SAMEKH")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_AYIN,       "MANICHAEAN AYIN")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_PE,         "MANICHAEAN PE")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_SADHE,      "MANICHAEAN SADHE")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_QOPH,       "MANICHAEAN QOPH")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_RESH,       "MANICHAEAN RESH")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_TAW,        "MANICHAEAN TAW")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_ONE,        "MANICHAEAN ONE")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_FIVE,       "MANICHAEAN FIVE")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_TEN,        "MANICHAEAN TEN")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_TWENTY,     "MANICHAEAN TWENTY")
+      TRY(UC_JOINING_GROUP_MANICHAEAN_HUNDRED,    "MANICHAEAN HUNDRED")
 #undef TRY
       else
         {
@@ -4178,6 +4234,34 @@
   TRY(UC_JOINING_GROUP_ZAIN)
   TRY(UC_JOINING_GROUP_ZHAIN)
   TRY(UC_JOINING_GROUP_ROHINGYA_YEH)
+  TRY(UC_JOINING_GROUP_STRAIGHT_WAW)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_ALEPH)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_BETH)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_GIMEL)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_DALETH)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_WAW)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_ZAYIN)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_HETH)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_TETH)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_YODH)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_KAPH)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_LAMEDH)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_DHAMEDH)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_THAMEDH)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_MEM)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_NUN)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_SAMEKH)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_AYIN)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_PE)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_SADHE)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_QOPH)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_RESH)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_TAW)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_ONE)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_FIVE)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_TEN)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_TWENTY)
+  TRY(UC_JOINING_GROUP_MANICHAEAN_HUNDRED)
 #undef TRY
   abort ();
 }
@@ -6255,8 +6339,8 @@
 {
   int64_t attr = 0;
 
-  /* U+20BB..U+20CF is reserved for prefixes.  */
-  if (ch >= 0x20BB && ch <= 0x20CF)
+  /* U+20BC..U+20CF is reserved for prefixes.  */
+  if (ch >= 0x20BC && ch <= 0x20CF)
     return (int64_t) 1 << LBP_PR;
 
   if (unicode_attributes[ch].name != NULL)
@@ -6410,6 +6494,11 @@
           || ch == 0x2CFF /* COPTIC MORPHOLOGICAL DIVIDER */
           || (ch >= 0x2E0E && ch <= 0x2E15) /* EDITORIAL CORONIS .. UPWARDS ANCORA */
           || ch == 0x2E17 /* DOUBLE OBLIQUE HYPHEN */
+          || ch == 0x2E3C /* STENOGRAPHIC FULL STOP */
+          || ch == 0x2E3D /* VERTICAL SIX DOTS */
+          || ch == 0x2E3E /* WIGGLY VERTICAL LINE */
+          || ch == 0x2E40 /* DOUBLE HYPHEN */
+          || ch == 0x2E41 /* REVERSED COMMA */
           || ch == 0xA60D /* VAI COMMA */
           || ch == 0xA60F /* VAI QUESTION MARK */
           || ch == 0xA92E /* KAYAH LI SIGN CWI */
@@ -6436,6 +6525,7 @@
           || ch == 0xAAF1 /* MEETEI MAYEK AHANG KHUDAM */
           || ch == 0xABEB /* MEETEI MAYEK CHEIKHEI */
           || ch == 0x10857 /* IMPERIAL ARAMAIC SECTION SIGN */
+          || (ch >= 0x10AF0 && ch <= 0x10AF5) /* MANICHAEAN PUNCTUATION STAR..MANICHAEAN PUNCTUATION TWO DOTS */
           || ch == 0x10B39 /* AVESTAN ABBREVIATION MARK */
           || ch == 0x10B3A /* TINY TWO DOTS OVER ONE DOT PUNCTUATION */
           || ch == 0x10B3B /* SMALL TWO DOTS OVER ONE DOT PUNCTUATION */
@@ -6456,9 +6546,27 @@
           || ch == 0x111C5 /* SHARADA DANDA */
           || ch == 0x111C6 /* SHARADA DOUBLE DANDA */
           || ch == 0x111C8 /* SHARADA SEPARATOR */
+          || ch == 0x11238 /* KHOJKI DANDA */
+          || ch == 0x11239 /* KHOJKI DOUBLE DANDA */
+          || ch == 0x1123B /* KHOJKI SECTION MARK */
+          || ch == 0x1123C /* KHOJKI DOUBLE SECTION MARK */
+          || ch == 0x115C2 /* SIDDHAM DANDA */
+          || ch == 0x115C3 /* SIDDHAM DOUBLE DANDA */
+          || ch == 0x115C9 /* SIDDHAM END OF TEXT MARK */
+          || ch == 0x11641 /* MODI DANDA */
+          || ch == 0x11642 /* MODI DOUBLE DANDA */
           || ch == 0x12471 /* CUNEIFORM PUNCTUATION SIGN VERTICAL COLON */
           || ch == 0x12472 /* CUNEIFORM PUNCTUATION SIGN DIAGONAL COLON */
-          || ch == 0x12473 /* CUNEIFORM PUNCTUATION SIGN DIAGONAL TRICOLON */)
+          || ch == 0x12473 /* CUNEIFORM PUNCTUATION SIGN DIAGONAL TRICOLON */
+          || ch == 0x12474 /* CUNEIFORM PUNCTUATION SIGN DIAGONAL QUADCOLON */
+          || ch == 0x16A6E /* MRO DANDA */
+          || ch == 0x16A6F /* MRO DOUBLE DANDA */
+          || ch == 0x16AF5 /* BASSA VAH FULL STOP */
+          || ch == 0x16B37 /* PAHAWH HMONG SIGN VOS THOM */
+          || ch == 0x16B38 /* PAHAWH HMONG SIGN VOS TSHAB CEEB */
+          || ch == 0x16B39 /* PAHAWH HMONG SIGN CIM CHEEM */
+          || ch == 0x16B44 /* PAHAWH HMONG SIGN XAUS */
+          || ch == 0x1BC9F /* DUPLOYAN PUNCTUATION CHINOOK FULL STOP */)
         attr |= (int64_t) 1 << LBP_BA;
 
       /* break opportunity before */
@@ -6480,7 +6588,9 @@
           || ch == 0x0FD3 /* TIBETAN MARK INITIAL BRDA RNYING YIG MGO MDUN MA */
           || ch == 0xA874 /* PHAGS-PA SINGLE HEAD MARK */
           || ch == 0xA875 /* PHAGS-PA DOUBLE HEAD MARK */
-          || ch == 0x1806 /* MONGOLIAN TODO SOFT HYPHEN */)
+          || ch == 0x1806 /* MONGOLIAN TODO SOFT HYPHEN */
+          || ch == 0x11175 /* MAHAJANI SECTION MARK */
+          || ch == 0x115C1 /* SIDDHAM SIGN SIDDHAM */)
         attr |= (int64_t) 1 << LBP_BB;
 
       /* hyphen */
@@ -6499,9 +6609,7 @@
       /* closing punctuation */
       if ((unicode_attributes[ch].category[0] == 'P'
            && unicode_attributes[ch].category[1] == 'e'
-           && !(attr & ((int64_t) 1 << LBP_CP))
-           && ch != 0x2309
-           && ch != 0x230B)
+           && !(attr & ((int64_t) 1 << LBP_CP)))
           || ch == 0x3001 /* IDEOGRAPHIC COMMA */
           || ch == 0x3002 /* IDEOGRAPHIC FULL STOP */
           || ch == 0xFE11 /* PRESENTATION FORM FOR VERTICAL IDEOGRAPHIC COMMA */
@@ -6557,14 +6665,17 @@
           || ch == 0xFE56 /* SMALL QUESTION MARK */
           || ch == 0xFE57 /* SMALL EXCLAMATION MARK */
           || ch == 0xFF01 /* FULLWIDTH EXCLAMATION MARK */
-          || ch == 0xFF1F /* FULLWIDTH QUESTION MARK */)
+          || ch == 0xFF1F /* FULLWIDTH QUESTION MARK */
+          || ch == 0x115C4 /* SIDDHAM SEPARATOR DOT */
+          || ch == 0x115C5 /* SIDDHAM SEPARATOR BAR */)
         attr |= (int64_t) 1 << LBP_EX;
 
       /* inseparable */
       if (ch == 0x2024 /* ONE DOT LEADER */
           || ch == 0x2025 /* TWO DOT LEADER */
           || ch == 0x2026 /* HORIZONTAL ELLIPSIS */
-          || ch == 0xFE19 /* PRESENTATION FORM FOR VERTICAL HORIZONTAL ELLIPSIS */)
+          || ch == 0xFE19 /* PRESENTATION FORM FOR VERTICAL HORIZONTAL ELLIPSIS */
+          || ch == 0x10AF6 /* MANICHAEAN PUNCTUATION LINE FILLER */)
         attr |= (int64_t) 1 << LBP_IN;
 
       /* non starter */
@@ -6596,15 +6707,16 @@
           || ch == 0xFF70 /* HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK */
           || ch == 0xFF9E /* HALFWIDTH KATAKANA VOICED SOUND MARK */
           || ch == 0xFF9F /* HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK */
+          || ch == 0x1F679 /* HEAVY INTERROBANG ORNAMENT */
+          || ch == 0x1F67A /* SANS-SERIF INTERROBANG ORNAMENT */
+          || ch == 0x1F67B /* HEAVY SANS-SERIF INTERROBANG ORNAMENT */
           || strstr (unicode_attributes[ch].name, "HIRAGANA LETTER SMALL ") != NULL
           || strstr (unicode_attributes[ch].name, "KATAKANA LETTER SMALL ") != NULL)
         attr |= (int64_t) 1 << LBP_NS;
 
       /* opening punctuation */
       if ((unicode_attributes[ch].category[0] == 'P'
-           && unicode_attributes[ch].category[1] == 's'
-           && ch != 0x2308
-           && ch != 0x230A)
+           && unicode_attributes[ch].category[1] == 's')
           || ch == 0x00A1 /* INVERTED EXCLAMATION MARK */
           || ch == 0x00BF /* INVERTED QUESTION MARK */
           || ch == 0x2E18 /* INVERTED INTERROBANG */
@@ -6627,12 +6739,17 @@
           || ch == 0x275C /* HEAVY SINGLE COMMA QUOTATION MARK ORNAMENT */
           || ch == 0x275D /* HEAVY DOUBLE TURNED COMMA QUOTATION MARK ORNAMENT */
           || ch == 0x275E /* HEAVY DOUBLE COMMA QUOTATION MARK ORNAMENT */
+          || ch == 0x275F /* HEAVY LOW SINGLE COMMA QUOTATION MARK ORNAMENT */
+          || ch == 0x2760 /* HEAVY LOW DOUBLE COMMA QUOTATION MARK ORNAMENT */
           || ch == 0x2E00 /* RIGHT ANGLE SUBSTITUTION MARKER */
           || ch == 0x2E01 /* RIGHT ANGLE DOTTED SUBSTITUTION MARKER */
           || ch == 0x2E06 /* RAISED INTERPOLATION MARKER */
           || ch == 0x2E07 /* RAISED DOTTED INTERPOLATION MARKER */
           || ch == 0x2E08 /* DOTTED TRANSPOSITION MARKER */
-          || ch == 0x2E0B /* RAISED SQUARE */)
+          || ch == 0x2E0B /* RAISED SQUARE */
+          || ch == 0x1F676 /* SANS-SERIF HEAVY DOUBLE TURNED COMMA QUOTATION MARK ORNAMENT  */
+          || ch == 0x1F677 /* SANS-SERIF HEAVY DOUBLE COMMA QUOTATION MARK ORNAMENT */
+          || ch == 0x1F678 /* SANS-SERIF HEAVY LOW DOUBLE COMMA QUOTATION MARK ORNAMENT */)
         attr |= (int64_t) 1 << LBP_QU;
 
       /* infix separator (numeric) */
@@ -6674,6 +6791,7 @@
           || ch == 0x2036 /* REVERSED DOUBLE PRIME */
           || ch == 0x2037 /* REVERSED TRIPLE PRIME */
           || ch == 0x20A7 /* PESETA SIGN */
+          || ch == 0x20BB /* NORDIC MARK SIGN */
           || ch == 0x2103 /* DEGREE CELSIUS */
           || ch == 0x2109 /* DEGREE FAHRENHEIT */
           || ch == 0xFDFC /* RIAL SIGN */
@@ -6747,6 +6865,8 @@
            || ch == 0x19DE /* NEW TAI LUE SIGN LAE */
            || ch == 0x19DF /* NEW TAI LUE SIGN LAEV */
            || (ch >= 0x1AA0 && ch <= 0x1AAD) /* TAI THAM SIGN */
+           || (ch >= 0xA9E0 && ch <= 0xA9EF) /* Myanmar */
+           || (ch >= 0xA9FA && ch <= 0xA9FE) /* Myanmar */
            || (ch >= 0xAA77 && ch <= 0xAA79) /* MYANMAR SYMBOL AITON */
            || (ch >= 0xAADE && ch <= 0xAADF) /* TAI VIET SYMBOL */)
           && ((ch >= 0x0E00 && ch <= 0x0EFF) /* Thai, Lao */
@@ -6754,6 +6874,8 @@
               || (ch >= 0x1780 && ch <= 0x17FF) /* Khmer */
               || (ch >= 0x1950 && ch <= 0x19DF) /* Tai Le, New Tai Lue */
               || (ch >= 0x1A20 && ch <= 0x1AAF) /* Tai Tham */
+              || (ch >= 0xA9E0 && ch <= 0xA9EF) /* Myanmar */
+              || (ch >= 0xA9FA && ch <= 0xA9FE) /* Myanmar */
               || (ch >= 0xAA60 && ch <= 0xAADF) /* Myanmar Extended-A, Tai Viet */))
         attr |= (int64_t) 1 << LBP_SA;
 
@@ -6832,6 +6954,7 @@
           || ch == 0x26FD /* FUEL PUMP */
           || ch == 0x26FE /* CUP ON BLACK SQUARE */
           || ch == 0x26FF /* WHITE FLAG WITH HORIZONTAL MIDDLE BLACK STRIPE */
+          || ch == 0x2700 /* BLACK SAFETY SCISSORS */
           || ch == 0x2701 /* UPPER BLADE SCISSORS */
           || ch == 0x2702 /* BLACK SCISSORS */
           || ch == 0x2703 /* LOWER BLADE SCISSORS */
@@ -6908,18 +7031,23 @@
           || (ch >= 0x1B000 && ch <= 0x1B001) /* Kana Supplement */
           || (ch >= 0x1F000 && ch <= 0x1F02B) /* Mahjong Tiles */
           || (ch >= 0x1F030 && ch <= 0x1F093) /* Domino Tiles */
-          || (ch >= 0x1F0A0 && ch <= 0x1F0DF) /* Playing Cards */
+          || (ch >= 0x1F0A0 && ch <= 0x1F0F5) /* Playing Cards */
           || (ch >= 0x1F200 && ch <= 0x1F248) /* Enclosed Ideographic Supplement */
           || (ch >= 0x1F250 && ch <= 0x1F251) /* Enclosed Ideographic Supplement */
           || (ch >= 0x1F300 && ch <= 0x1F5FF /* Miscellaneous Symbols and Pictographs */
               && ch != 0x1F3B5 && ch != 0x1F3B6 && ch != 0x1F3BC
               && ch != 0x1F4A0 && ch != 0x1F4A2 && ch != 0x1F4A4
               && ch != 0x1F4AF && ch != 0x1F4B1 && ch != 0x1F4B2
+              && !(ch >= 0x1F39C && ch <= 0x1F39D)
               && !(ch >= 0x1F500 && ch <= 0x1F506)
               && !(ch >= 0x1F517 && ch <= 0x1F524)
-              && !(ch >= 0x1F532 && ch <= 0x1F543))
+              && !(ch >= 0x1F532 && ch <= 0x1F549)
+              && !(ch >= 0x1F5D4 && ch <= 0x1F5DB)
+              && !(ch >= 0x1F5F4 && ch <= 0x1F5F9))
           || (ch >= 0x1F600 && ch <= 0x1F64F) /* Emoticons */
-          || (ch >= 0x1F680 && ch <= 0x1F6C5) /* Transport and Map Symbols */
+          || (ch >= 0x1F680 && ch <= 0x1F6CF) /* Transport and Map Symbols */
+          || (ch >= 0x1F6E0 && ch <= 0x1F6EC) /* Transport and Map Symbols */
+          || (ch >= 0x1F6F0 && ch <= 0x1F6F3) /* Transport and Map Symbols */
           || (ch >= 0x2A700 && ch <= 0x2B734) /* CJK Ideograph Extension C */
           || (ch >= 0x2B740 && ch <= 0x2B81D) /* CJK Ideograph Extension D */)
         if (!(attr & (((int64_t) 1 << LBP_NS) | ((int64_t) 1 << LBP_CM))))
@@ -6982,16 +7110,13 @@
           || ch == 0x0602 /* ARABIC FOOTNOTE MARKER */
           || ch == 0x0603 /* ARABIC SIGN SAFHA */
           || ch == 0x0604 /* ARABIC SIGN SAMVAT */
+          || ch == 0x0605 /* ARABIC NUMBER MARK ABOVE */
           || ch == 0x06DD /* ARABIC END OF AYAH */
           || ch == 0x070F /* SYRIAC ABBREVIATION MARK */
           || ch == 0x2061 /* FUNCTION APPLICATION */
           || ch == 0x2062 /* INVISIBLE TIMES */
           || ch == 0x2063 /* INVISIBLE SEPARATOR */
           || ch == 0x2064 /* INVISIBLE PLUS */
-          || ch == 0x2308 /* LEFT CEILING */
-          || ch == 0x2309 /* RIGHT CEILING */
-          || ch == 0x230A /* LEFT FLOOR */
-          || ch == 0x230B /* RIGHT FLOOR */
           /* Extra characters for compatibility with Unicode LineBreak.txt.  */
           || ch == 0x110BD /* KAITHI NUMBER SIGN */)
         if (!(attr & (((int64_t) 1 << LBP_GL) | ((int64_t) 1 << LBP_B2) | ((int64_t) 1 << LBP_BA) | ((int64_t) 1 << LBP_BB) | ((int64_t) 1 << LBP_HY) | ((int64_t) 1 << LBP_CB) | ((int64_t) 1 << LBP_CL) | ((int64_t) 1 << LBP_CP) | ((int64_t) 1 << LBP_EX) | ((int64_t) 1 << LBP_IN) | ((int64_t) 1 << LBP_NS) | ((int64_t) 1 << LBP_OP) | ((int64_t) 1 << LBP_QU) | ((int64_t) 1 << LBP_IS) | ((int64_t) 1 << LBP_NU) | ((int64_t) 1 << LBP_PO) | ((int64_t) 1 << LBP_PR) | ((int64_t) 1 << LBP_SY) | ((int64_t) 1 << LBP_H2) | ((int64_t) 1 << LBP_H3) | ((int64_t) 1 << LBP_HL) | ((int64_t) 1 << LBP_JL) | ((int64_t) 1 << LBP_JV) | ((int64_t) 1 << LBP_JT) | ((int64_t) 1 << LBP_RI) | ((int64_t) 1 << LBP_SA) | ((int64_t) 1 << LBP_ID)))
@@ -7045,7 +7170,9 @@
                 || ch == 0x2155 /* VULGAR FRACTION ONE FIFTH */
                 || ch == 0x2574 /* BOX DRAWINGS LIGHT LEFT */
                 || ch == 0x2616 /* WHITE SHOGI PIECE */
-                || ch == 0x2617 /* BLACK SHOGI PIECE */)
+                || ch == 0x2617 /* BLACK SHOGI PIECE */
+                || ch == 0x1F10B /* DINGBAT CIRCLED SANS-SERIF DIGIT ZERO */
+                || ch == 0x1F10C /* DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT ZERO */)
               attr |= (int64_t) 1 << LBP_AI;
             else
               attr |= (int64_t) 1 << LBP_AL;
--- a/lib/unicase/cased.h
+++ b/lib/unicase/cased.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Casing Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[15 << 4];
+    /*unsigned*/ int level3[18 << 4];
   }
 u_casing_property_cased =
 {
@@ -106,6 +106,7 @@
        -1,
         3 +   256 * sizeof (short) / sizeof (int) +   144,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   160,
        -1,
        -1,
        -1,
@@ -145,13 +146,22 @@
        -1,
        -1,
        -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   160,
-       -1,
         3 +   256 * sizeof (short) / sizeof (int) +   176,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   192,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   192,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   208,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   224,
        -1,
        -1,
        -1,
@@ -245,18 +255,8 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   208,
-        3 +   256 * sizeof (short) / sizeof (int) +   224,
+        3 +   256 * sizeof (short) / sizeof (int) +   240,
+        3 +   256 * sizeof (short) / sizeof (int) +   256,
        -1,
        -1,
        -1,
@@ -269,7 +269,7 @@
        -1,
        -1,
        -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   272,
        -1,
        -1,
        -1,
@@ -285,11 +285,11 @@
     0xFFFFFFFF, 0xF7FFFFFF, 0xFFFFFFF0, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFEFFFFF, 0x01FFFFFF, 0x00000003, 0x0000001F,
-    0x00000000, 0x00000000, 0x00000020, 0x3CCF0000,
+    0x00000000, 0x00000000, 0x00000020, 0xBCCF0000,
     0xFFFFD740, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFBFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE00FF, 0x007FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFEFFFF, 0x007FFFFF, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFFFFF, 0x000020BF, 0x00000000,
@@ -316,9 +316,13 @@
     0xFFFFFFFF, 0x000020BF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x00003FFF,
-    0x00FFFFFF, 0x00000000, 0x00000000, 0x00000000,
+    0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000F78FF, 0x000007FF, 0x00000000, 0x07000000,
+    0xFFFF78FF, 0x00033FFF, 0x00000000, 0x07000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0xF7FFFFFF, 0x00000030,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00F8007F, 0x00000000, 0x00000000, 0x00000000,
@@ -331,6 +335,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF,
     0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF,
     0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF,
@@ -338,6 +346,10 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFF3F, 0xF7FFFFFD, 0xF7FFFFFF,
     0xFFDFFFFF, 0xFFDFFFFF, 0xFFFF7FFF, 0xFFFF7FFF,
-    0xFFFFFDFF, 0xFFFFFDFF, 0x00000FF7, 0x00000000
+    0xFFFFFDFF, 0xFFFFFDFF, 0x00000FF7, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0xFFFF03FF, 0xFFFF03FF,
+    0x000003FF, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unicase/ignorable.h
+++ b/lib/unicase/ignorable.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Casing Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[15];
     short level2[3 << 7];
-    /*unsigned*/ int level3[34 << 4];
+    /*unsigned*/ int level3[40 << 4];
   }
 u_casing_property_case_ignorable =
 {
@@ -163,19 +163,17 @@
        -1,
        16 +   384 * sizeof (short) / sizeof (int) +   400,
        16 +   384 * sizeof (short) / sizeof (int) +   416,
-       -1,
-       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   432,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   432,
-       -1,
        -1,
        16 +   384 * sizeof (short) / sizeof (int) +   448,
        -1,
        -1,
        16 +   384 * sizeof (short) / sizeof (int) +   464,
-       -1,
-       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   480,
+       16 +   384 * sizeof (short) / sizeof (int) +   496,
+       16 +   384 * sizeof (short) / sizeof (int) +   512,
        -1,
        -1,
        -1,
@@ -217,7 +215,9 @@
        -1,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   480,
+       16 +   384 * sizeof (short) / sizeof (int) +   528,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   544,
        -1,
        -1,
        -1,
@@ -256,6 +256,18 @@
        -1,
        -1,
        -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   560,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   576,
+       16 +   384 * sizeof (short) / sizeof (int) +   592,
        -1,
        -1,
        -1,
@@ -266,8 +278,7 @@
        -1,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   496,
-       16 +   384 * sizeof (short) / sizeof (int) +   512,
+       16 +   384 * sizeof (short) / sizeof (int) +   608,
        -1,
        -1,
        -1,
@@ -279,18 +290,7 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   528,
+       16 +   384 * sizeof (short) / sizeof (int) +   624,
        -1,
        -1,
        -1,
@@ -432,21 +432,21 @@
     0x000003F8, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x02000000, 0x00000000,
     0xFFFE0000, 0xBFFFFFFF, 0x000000B6, 0x00100000,
-    0x17FF001F, 0x00000000, 0xFFFFF801, 0x00010000,
+    0x17FF003F, 0x00000000, 0xFFFFF801, 0x00010000,
     0x00000000, 0x00000000, 0xBFC00000, 0x00003DFF,
     0x00028000, 0xFFFF0000, 0x000007FF, 0x00000000,
     0x00000000, 0x0001FFC0, 0x00000000, 0x043FF800,
     0xFFC00000, 0x00003FFF, 0x0E000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x7FFFFFF0,
+    0x00000000, 0x00000000, 0x00000000, 0xFFFFFFF0,
     0x00000007, 0x14000000, 0x00FE21FE, 0x0002000C,
     0x00000002, 0x10000000, 0x0000201E, 0x0000000C,
     0x00000006, 0x10000000, 0x00023986, 0x00230000,
     0x00000006, 0x10000000, 0x000021BE, 0x0000000C,
     0x00000002, 0x90000000, 0x0040201E, 0x0000000C,
     0x00000004, 0x00000000, 0x00002001, 0x00000000,
-    0x00000000, 0xC0000000, 0x00603DC1, 0x0000000C,
-    0x00000000, 0x90000000, 0x00003040, 0x0000000C,
-    0x00000000, 0x00000000, 0x0000201E, 0x0000000C,
+    0x00000001, 0xC0000000, 0x00603DC1, 0x0000000C,
+    0x00000002, 0x90000000, 0x00003040, 0x0000000C,
+    0x00000002, 0x00000000, 0x0000201E, 0x0000000C,
     0x00000000, 0x00000000, 0x005C0400, 0x00000000,
     0x00000000, 0x07F20000, 0x00007FC0, 0x00000000,
     0x00000000, 0x1BF20000, 0x00003F40, 0x00000000,
@@ -469,13 +469,13 @@
     0x00000000, 0x0E040187, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x09800000, 0x00000000, 0x7F400000, 0x9FF81FE5,
-    0x00000000, 0x00000080, 0x00000000, 0x00000000,
+    0x00000000, 0x7FFF0080, 0x00000000, 0x00000000,
     0x0000000F, 0x17D00000, 0x00000004, 0x000FF800,
-    0x00000003, 0x00000B3C, 0x00000000, 0x0003A340,
+    0x00000003, 0x00003B3C, 0x00000000, 0x0003A340,
     0x00000000, 0x00CFF000, 0x00000000, 0x3F000000,
-    0x00000000, 0x00000000, 0xFFF70000, 0x001021FD,
+    0x00000000, 0x00000000, 0xFFF70000, 0x031021FD,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFFFFFFF, 0xF000007F,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0xF03FFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -511,16 +511,16 @@
     0x00000844, 0x00000060, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000010, 0x0003FFFF,
     0x00000000, 0x00003FC0, 0x0003FF80, 0x00000000,
-    0x00000007, 0x13C80000, 0x00008000, 0x00000000,
-    0x00000000, 0x00667E00, 0x00001008, 0x00010000,
+    0x00000007, 0x13C80000, 0x00008000, 0x00000060,
+    0x00000000, 0x00667E00, 0x00001008, 0x10010000,
     0x00000000, 0xC19D0000, 0x20000002, 0x00583000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x08000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00002120,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x40000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFC0000, 0x00000003, 0x00000000,
-    0x0008FFFF, 0x0000007F, 0x00240000, 0x00000000,
+    0x0008FFFF, 0x00003FFF, 0x00240000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x80000000,
     0x04004080, 0x40000000, 0x00000001, 0x00010000,
     0xC0000000, 0x00000000, 0x00000000, 0x0E000008,
@@ -528,23 +528,43 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x20000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000001,
+    0x00000000, 0x00000000, 0x00000000, 0x07C00000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x0000F06E, 0x87000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000060,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000002, 0xFF000000, 0x0000007F, 0x80000000,
+    0x00000003, 0x26780000, 0x00000000, 0x00000000,
+    0x00000007, 0x001FEF80, 0x00000000, 0x00080000,
+    0x00000003, 0x7FC00000, 0x00000000, 0x00000000,
+    0x00000000, 0x00D38000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x80000000, 0x000007F8,
+    0x00000002, 0x10000000, 0x00000001, 0x001F1FC0,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x85F80000, 0x0000000D, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xB03C0000, 0x00000001, 0x00000000,
+    0x00000000, 0xA7F80000, 0x00000001, 0x00000000,
+    0x00000000, 0x00BF2800, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000002, 0xFF000000, 0x0000007F, 0x00000000,
-    0x00000003, 0x26780000, 0x00000000, 0x00000000,
-    0x00000007, 0x001FEF80, 0x00000000, 0x00000000,
-    0x00000003, 0x7FC00000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00BF2800, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x001F0000,
+    0x00000000, 0x007F0000, 0x0000000F, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFF8000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x60000000, 0x0000000F, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xFFF80380,
     0x00000FE7, 0x00003C00, 0x00000000, 0x00000000,
@@ -552,6 +572,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x007F0000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000002, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
--- a/lib/unicase/special-casing-table.gperf
+++ b/lib/unicase/special-casing-table.gperf
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Special casing rules of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 struct special_casing_rule { char code[3]; };
 %struct-type
 %language=ANSI-C
--- a/lib/unicase/tocasefold.h
+++ b/lib/unicase/tocasefold.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Simple character mapping of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define mapping_header_0 16
 #define mapping_header_1 2
 #define mapping_header_2 7
@@ -11,7 +11,7 @@
   {
     int level1[2];
     short level2[2 << 9];
-    int level3[26 << 7];
+    int level3[27 << 7];
   }
 u_mapping =
 {
@@ -87,7 +87,7 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,  3328,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -242,7 +242,7 @@
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         1,     0,     1,     0,     0,     0,     1,     0,
-        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,   116,
         0,     0,     0,     0,     0,     0,    38,     0,
        37,    37,    37,     0,    64,     0,    63,    63,
         0,    32,    32,    32,    32,    32,    32,    32,
@@ -296,7 +296,7 @@
         1,     0,     1,     0,     1,     0,     1,     0,
         1,     0,     1,     0,     1,     0,     1,     0,
         1,     0,     1,     0,     1,     0,     1,     0,
-        0,     0,     0,     0,     0,     0,     0,     0,
+        1,     0,     1,     0,     1,     0,     1,     0,
         0,    48,    48,    48,    48,    48,    48,    48,
        48,    48,    48,    48,    48,    48,    48,    48,
        48,    48,    48,    48,    48,    48,    48,    48,
@@ -486,7 +486,7 @@
         1,     0,     1,     0,     1,     0,     1,     0,
         1,     0,     1,     0,     1,     0,     1,     0,
         1,     0,     1,     0,     1,     0,     1,     0,
-        0,     0,     0,     0,     0,     0,     0,     0,
+        1,     0,     1,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
@@ -517,11 +517,11 @@
         0,     1,     0,     1,     0, -35332,     1,     0,
         1,     0,     1,     0,     1,     0,     1,     0,
         0,     0,     0,     1,     0, -42280,     0,     0,
-        1,     0,     1,     0,     0,     0,     0,     0,
-        0,     0,     0,     0,     0,     0,     0,     0,
+        1,     0,     1,     0,     0,     0,     1,     0,
+        1,     0,     1,     0,     1,     0,     1,     0,
         1,     0,     1,     0,     1,     0,     1,     0,
-        1,     0, -42308,     0,     0,     0,     0,     0,
-        0,     0,     0,     0,     0,     0,     0,     0,
+        1,     0, -42308, -42319, -42315, -42305,     0,     0,
+    -42258, -42282,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
@@ -562,6 +562,22 @@
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+       32,    32,    32,    32,    32,    32,    32,    32,
+       32,    32,    32,    32,    32,    32,    32,    32,
+       32,    32,    32,    32,    32,    32,    32,    32,
+       32,    32,    32,    32,    32,    32,    32,    32,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0
   }
 };
--- a/lib/unicase/tolower.h
+++ b/lib/unicase/tolower.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Simple character mapping of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define mapping_header_0 16
 #define mapping_header_1 2
 #define mapping_header_2 7
@@ -11,7 +11,7 @@
   {
     int level1[2];
     short level2[2 << 9];
-    int level3[26 << 7];
+    int level3[27 << 7];
   }
 u_mapping =
 {
@@ -87,7 +87,7 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,  3328,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -242,7 +242,7 @@
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         1,     0,     1,     0,     0,     0,     1,     0,
-        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,   116,
         0,     0,     0,     0,     0,     0,    38,     0,
        37,    37,    37,     0,    64,     0,    63,    63,
         0,    32,    32,    32,    32,    32,    32,    32,
@@ -296,7 +296,7 @@
         1,     0,     1,     0,     1,     0,     1,     0,
         1,     0,     1,     0,     1,     0,     1,     0,
         1,     0,     1,     0,     1,     0,     1,     0,
-        0,     0,     0,     0,     0,     0,     0,     0,
+        1,     0,     1,     0,     1,     0,     1,     0,
         0,    48,    48,    48,    48,    48,    48,    48,
        48,    48,    48,    48,    48,    48,    48,    48,
        48,    48,    48,    48,    48,    48,    48,    48,
@@ -486,7 +486,7 @@
         1,     0,     1,     0,     1,     0,     1,     0,
         1,     0,     1,     0,     1,     0,     1,     0,
         1,     0,     1,     0,     1,     0,     1,     0,
-        0,     0,     0,     0,     0,     0,     0,     0,
+        1,     0,     1,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
@@ -517,11 +517,11 @@
         0,     1,     0,     1,     0, -35332,     1,     0,
         1,     0,     1,     0,     1,     0,     1,     0,
         0,     0,     0,     1,     0, -42280,     0,     0,
-        1,     0,     1,     0,     0,     0,     0,     0,
-        0,     0,     0,     0,     0,     0,     0,     0,
+        1,     0,     1,     0,     0,     0,     1,     0,
+        1,     0,     1,     0,     1,     0,     1,     0,
         1,     0,     1,     0,     1,     0,     1,     0,
-        1,     0, -42308,     0,     0,     0,     0,     0,
-        0,     0,     0,     0,     0,     0,     0,     0,
+        1,     0, -42308, -42319, -42315, -42305,     0,     0,
+    -42258, -42282,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
@@ -562,6 +562,22 @@
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+       32,    32,    32,    32,    32,    32,    32,    32,
+       32,    32,    32,    32,    32,    32,    32,    32,
+       32,    32,    32,    32,    32,    32,    32,    32,
+       32,    32,    32,    32,    32,    32,    32,    32,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0
   }
 };
--- a/lib/unicase/totitle.h
+++ b/lib/unicase/totitle.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Simple character mapping of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define mapping_header_0 16
 #define mapping_header_1 2
 #define mapping_header_2 7
@@ -11,7 +11,7 @@
   {
     int level1[2];
     short level2[2 << 9];
-    int level3[29 << 7];
+    int level3[30 << 7];
   }
 u_mapping =
 {
@@ -87,7 +87,7 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,  3712,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -222,15 +222,15 @@
     10815,     0,    -1,     0,     0,     0,     0,    -1,
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
     10783, 10780, 10782,  -210,  -206,     0,  -205,  -205,
-        0,  -202,     0,  -203,     0,     0,     0,     0,
-     -205,     0,     0,  -207,     0, 42280, 42308,     0,
-     -209,  -211,     0, 10743,     0,     0,     0,  -211,
+        0,  -202,     0,  -203, 42319,     0,     0,     0,
+     -205, 42315,     0,  -207,     0, 42280, 42308,     0,
+     -209,  -211,     0, 10743, 42305,     0,     0,  -211,
         0, 10749,  -213,     0,     0,  -214,     0,     0,
         0,     0,     0,     0,     0, 10727,     0,     0,
-     -218,     0,     0,  -218,     0,     0,     0,     0,
+     -218,     0,     0,  -218,     0,     0,     0, 42282,
      -218,   -69,  -217,  -217,   -71,     0,     0,     0,
         0,     0,  -219,     0,     0,     0,     0,     0,
-        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0, 42258,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
@@ -273,7 +273,7 @@
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
-      -86,   -80,     7,     0,     0,   -96,     0,     0,
+      -86,   -80,     7,  -116,     0,   -96,     0,     0,
        -1,     0,     0,    -1,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
@@ -312,7 +312,7 @@
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
-        0,     0,     0,     0,     0,     0,     0,     0,
+        0,    -1,     0,    -1,     0,    -1,     0,    -1,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
@@ -534,7 +534,7 @@
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
-        0,     0,     0,     0,     0,     0,     0,     0,
+        0,    -1,     0,    -1,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
@@ -565,8 +565,8 @@
         0,     0,    -1,     0,    -1,     0,     0,    -1,
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
         0,     0,     0,     0,    -1,     0,     0,     0,
-        0,    -1,     0,    -1,     0,     0,     0,     0,
-        0,     0,     0,     0,     0,     0,     0,     0,
+        0,    -1,     0,    -1,     0,     0,     0,    -1,
+        0,    -1,     0,    -1,     0,    -1,     0,    -1,
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
         0,    -1,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
@@ -610,6 +610,22 @@
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+      -32,   -32,   -32,   -32,   -32,   -32,   -32,   -32,
+      -32,   -32,   -32,   -32,   -32,   -32,   -32,   -32,
+      -32,   -32,   -32,   -32,   -32,   -32,   -32,   -32,
+      -32,   -32,   -32,   -32,   -32,   -32,   -32,   -32,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0
   }
 };
--- a/lib/unicase/toupper.h
+++ b/lib/unicase/toupper.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Simple character mapping of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define mapping_header_0 16
 #define mapping_header_1 2
 #define mapping_header_2 7
@@ -11,7 +11,7 @@
   {
     int level1[2];
     short level2[2 << 9];
-    int level3[29 << 7];
+    int level3[30 << 7];
   }
 u_mapping =
 {
@@ -87,7 +87,7 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,  3712,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -222,15 +222,15 @@
     10815,     0,    -1,     0,     0,     0,     0,    -1,
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
     10783, 10780, 10782,  -210,  -206,     0,  -205,  -205,
-        0,  -202,     0,  -203,     0,     0,     0,     0,
-     -205,     0,     0,  -207,     0, 42280, 42308,     0,
-     -209,  -211,     0, 10743,     0,     0,     0,  -211,
+        0,  -202,     0,  -203, 42319,     0,     0,     0,
+     -205, 42315,     0,  -207,     0, 42280, 42308,     0,
+     -209,  -211,     0, 10743, 42305,     0,     0,  -211,
         0, 10749,  -213,     0,     0,  -214,     0,     0,
         0,     0,     0,     0,     0, 10727,     0,     0,
-     -218,     0,     0,  -218,     0,     0,     0,     0,
+     -218,     0,     0,  -218,     0,     0,     0, 42282,
      -218,   -69,  -217,  -217,   -71,     0,     0,     0,
         0,     0,  -219,     0,     0,     0,     0,     0,
-        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0, 42258,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
@@ -273,7 +273,7 @@
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
-      -86,   -80,     7,     0,     0,   -96,     0,     0,
+      -86,   -80,     7,  -116,     0,   -96,     0,     0,
        -1,     0,     0,    -1,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
@@ -312,7 +312,7 @@
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
-        0,     0,     0,     0,     0,     0,     0,     0,
+        0,    -1,     0,    -1,     0,    -1,     0,    -1,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
@@ -534,7 +534,7 @@
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
-        0,     0,     0,     0,     0,     0,     0,     0,
+        0,    -1,     0,    -1,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
@@ -565,8 +565,8 @@
         0,     0,    -1,     0,    -1,     0,     0,    -1,
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
         0,     0,     0,     0,    -1,     0,     0,     0,
-        0,    -1,     0,    -1,     0,     0,     0,     0,
-        0,     0,     0,     0,     0,     0,     0,     0,
+        0,    -1,     0,    -1,     0,     0,     0,    -1,
+        0,    -1,     0,    -1,     0,    -1,     0,    -1,
         0,    -1,     0,    -1,     0,    -1,     0,    -1,
         0,    -1,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
@@ -610,6 +610,22 @@
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+      -32,   -32,   -32,   -32,   -32,   -32,   -32,   -32,
+      -32,   -32,   -32,   -32,   -32,   -32,   -32,   -32,
+      -32,   -32,   -32,   -32,   -32,   -32,   -32,   -32,
+      -32,   -32,   -32,   -32,   -32,   -32,   -32,   -32,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     0,     0,     0,     0,     0,
         0,     0,     0,     0,     0,     0,     0,     0
   }
 };
--- a/lib/unictype.in.h
+++ b/lib/unictype.in.h
@@ -523,7 +523,35 @@
   UC_JOINING_GROUP_YUDH_HE,               /* Yudh_He */
   UC_JOINING_GROUP_ZAIN,                  /* Zain */
   UC_JOINING_GROUP_ZHAIN,                 /* Zhain */
-  UC_JOINING_GROUP_ROHINGYA_YEH           /* Rohingya_Yeh */
+  UC_JOINING_GROUP_ROHINGYA_YEH,          /* Rohingya_Yeh */
+  UC_JOINING_GROUP_STRAIGHT_WAW,          /* Straight_Waw */
+  UC_JOINING_GROUP_MANICHAEAN_ALEPH,      /* Manichaean_Aleph */
+  UC_JOINING_GROUP_MANICHAEAN_BETH,       /* Manichaean_Beth */
+  UC_JOINING_GROUP_MANICHAEAN_GIMEL,      /* Manichaean_Gimel */
+  UC_JOINING_GROUP_MANICHAEAN_DALETH,     /* Manichaean_Daleth */
+  UC_JOINING_GROUP_MANICHAEAN_WAW,        /* Manichaean_Waw */
+  UC_JOINING_GROUP_MANICHAEAN_ZAYIN,      /* Manichaean_Zayin */
+  UC_JOINING_GROUP_MANICHAEAN_HETH,       /* Manichaean_Heth */
+  UC_JOINING_GROUP_MANICHAEAN_TETH,       /* Manichaean_Teth */
+  UC_JOINING_GROUP_MANICHAEAN_YODH,       /* Manichaean_Yodh */
+  UC_JOINING_GROUP_MANICHAEAN_KAPH,       /* Manichaean_Kaph */
+  UC_JOINING_GROUP_MANICHAEAN_LAMEDH,     /* Manichaean_Lamedh */
+  UC_JOINING_GROUP_MANICHAEAN_DHAMEDH,    /* Manichaean_Dhamedh */
+  UC_JOINING_GROUP_MANICHAEAN_THAMEDH,    /* Manichaean_Thamedh */
+  UC_JOINING_GROUP_MANICHAEAN_MEM,        /* Manichaean_Mem */
+  UC_JOINING_GROUP_MANICHAEAN_NUN,        /* Manichaean_Nun */
+  UC_JOINING_GROUP_MANICHAEAN_SAMEKH,     /* Manichaean_Aleph */
+  UC_JOINING_GROUP_MANICHAEAN_AYIN,       /* Manichaean_Ayin */
+  UC_JOINING_GROUP_MANICHAEAN_PE,         /* Manichaean_Pe */
+  UC_JOINING_GROUP_MANICHAEAN_SADHE,      /* Manichaean_Sadhe */
+  UC_JOINING_GROUP_MANICHAEAN_QOPH,       /* Manichaean_Qoph */
+  UC_JOINING_GROUP_MANICHAEAN_RESH,       /* Manichaean_Resh */
+  UC_JOINING_GROUP_MANICHAEAN_TAW,        /* Manichaean_Taw */
+  UC_JOINING_GROUP_MANICHAEAN_ONE,        /* Manichaean_One */
+  UC_JOINING_GROUP_MANICHAEAN_FIVE,       /* Manichaean_Five */
+  UC_JOINING_GROUP_MANICHAEAN_TEN,        /* Manichaean_Ten */
+  UC_JOINING_GROUP_MANICHAEAN_TWENTY,     /* Manichaean_Twenty */
+  UC_JOINING_GROUP_MANICHAEAN_HUNDRED     /* Manichaean_Hundred */
 };
 
 /* Return the name of a joining group.  */
--- a/lib/unictype/bidi_of.h
+++ b/lib/unictype/bidi_of.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Bidi categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define bidi_category_header_0 16
 #define bidi_category_header_1 17
 #define bidi_category_header_2 7
@@ -11,7 +11,7 @@
   {
     int level1[17];
     short level2[4 << 9];
-    unsigned short level3[131 * 40 + 1];
+    unsigned short level3[147 * 40 + 1];
   }
 u_bidi_category =
 {
@@ -27,20 +27,20 @@
      2432,  2560,  2688,  2816,  2944,  3072,  3200,  3328,
      3456,  3584,    -1,    -1,    -1,    -1,  3712,  3840,
      3968,    -1,    -1,    -1,    -1,  4096,  4224,  4352,
-     4480,  4608,  4736,  4864,  4992,    -1,  5120,  5248,
-     5376,  5504,    -1,  5632,    -1,    -1,    -1,  5760,
-     5888,  6016,  6144,  6272,  6400,  6528,  6656,  6784,
-     6912,  7040,  6528,  6528,  6528,  7168,  7296,  6528,
-       -1,    -1,  6528,  6528,  6528,  6528,  7424,    -1,
-       -1,  7552,  7680,  7808,  7936,  8064,  6528,  8192,
-     8320,  8448,    -1,  8576,  8704,  8832,  8960,  9088,
+     4480,  4608,  4736,  4864,  4992,  5120,  5248,  5376,
+     5504,  5632,    -1,  5760,    -1,    -1,    -1,  5888,
+     6016,  6144,  6272,  6400,  6528,  6656,  6784,  6912,
+     7040,  7168,  6656,  6656,  6656,  7296,  6656,  6656,
+       -1,    -1,  6656,  6656,  6656,  6656,  7424,  7552,
+       -1,  7680,  7808,  7936,  8064,  8192,  6656,  8320,
+     8448,  8576,    -1,  8704,  8832,  8960,  9088,  9216,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,  9216,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,  9344,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -62,8 +62,8 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,  9344,    -1,    -1,  9472,  9600,  9728,  9856,
-     9984, 10112, 10240, 10368, 10496, 10624,    -1, 10752,
+       -1,  9472,    -1,    -1,  9600,  9728,  9856,  9984,
+    10112, 10240, 10368, 10496, 10624, 10752,    -1, 10880,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -83,14 +83,14 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1, 10880, 11008,
-    11008, 11008, 11136, 11264, 11392, 11520, 11648, 11776,
-       -1,    -1, 11904, 12032,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1, 11008, 11136,
+    11136, 11136, 11264, 11392, 11520, 11648, 11776, 11904,
+       -1,    -1, 12032, 12160,    -1, 12288, 12416,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    12160, 12160, 12288, 12160, 12416, 12160, 12544, 12160,
-    12160, 12160, 12160, 12160, 12672, 12160, 12160, 12160,
-    12800, 12928, 13056, 13184,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1, 13312,    -1,    -1,
+    12544, 12544, 12672, 12544, 12800, 12928, 13056, 12544,
+    12544, 12544, 12544, 12544, 13184, 12544, 12544, 12544,
+    13312, 13440, 13568, 13696, 13824, 13952, 14080,    -1,
+       -1, 14208,    -1, 14336, 14464, 14592,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -111,8 +111,8 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1, 13440,
+       -1,    -1,    -1,    -1,    -1, 14720, 14848,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1, 14976,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -132,23 +132,23 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1, 15104,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1, 13568, 13696, 13824,    -1, 13952,    -1,
-       -1,    -1,    -1,    -1,    -1, 14080, 14208, 14336,
+       -1,    -1, 15232, 15360, 15488,    -1, 15616,    -1,
+       -1,    -1,    -1,    -1,    -1, 15744, 15872, 16000,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1, 14464, 14592,    -1,    -1,
-    14720, 14848, 14976,    -1,    -1,    -1, 15104, 15232,
-    15360, 15488, 15616, 15744, 15872, 16000, 16128,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1, 16256,
+    12544, 16128,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1, 16256, 16384,    -1,    -1,
+    16512, 16640, 16768,    -1,    -1,    -1, 16896, 17024,
+     6656, 17152, 17280, 17408, 17536, 17664, 17792, 17920,
+    18048, 18176,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1, 18304,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -212,11 +212,11 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1, 16256,
-    16384, 16384, 16512, 16640, 16384, 16384, 16384, 16384,
-    16384, 16384, 16384, 16384, 16384, 16384, 16384, 16384,
-    16384, 16384, 16384, 16384, 16384, 16384, 16384, 16384,
-    16384, 16384, 16384, 16384, 16384, 16384, 16384, 16384,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1, 18304,
+    18432, 18432, 18560, 18688, 18432, 18432, 18432, 18432,
+    18432, 18432, 18432, 18432, 18432, 18432, 18432, 18432,
+    18432, 18432, 18432, 18432, 18432, 18432, 18432, 18432,
+    18432, 18432, 18432, 18432, 18432, 18432, 18432, 18432,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -276,7 +276,7 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1, 16256
+       -1,    -1,    -1,    -1,    -1,    -1,    -1, 18304
   },
   {
     0x39ce, 0x9ce7, 0x0e73, 0x183e, 0x739f, 0x39ce, 0x9ce7, 0xce73,
@@ -309,12 +309,12 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0048, 0x5000, 0xb5a3, 0x5ad6, 0xad6b,
+    0x0000, 0x0000, 0x0000, 0x0048, 0x54a4, 0xb5a3, 0x5ad6, 0xad6b,
     0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
     0x5ad6, 0xad6b, 0xd6b5, 0x68da, 0xb5a3, 0xdad1, 0x6368, 0x318c,
     0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631,
     0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6,
-    0xad6b, 0x88b5, 0x4494, 0xc229, 0x9488, 0xb5ad, 0x5ad6, 0xad6b,
+    0xad6b, 0x96b5, 0x4494, 0xc229, 0x9488, 0xb5ad, 0x5ad6, 0xad6b,
     0x4235, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
     0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0xd690,
     0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xad6b, 0xd6b5,
@@ -340,10 +340,10 @@
     0x18c6, 0x8c63, 0xc631, 0xa318, 0x36b5, 0x18c6, 0x8c63, 0xc631,
     0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6,
     0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318,
-    0x318c, 0x18c6, 0x1064, 0x0842, 0x8421, 0x4210, 0x18c6, 0x8c63,
+    0x318c, 0x18c6, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x9084,
     0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c,
     0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0x5ad1,
-    0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x1b5a,
+    0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a,
     0x35ad, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0xd034, 0x0000, 0xb5a0, 0x5ad6, 0x0d6b, 0x0000,
@@ -374,17 +374,17 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x000d, 0x0000, 0x0000, 0x0000,
     0x001a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0xa529, 0x5294, 0x0049, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x000d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x6b40, 0x000d, 0x4000, 0x0d6b, 0xd6b4,
     0x001a, 0x0000, 0x5a00, 0x0003, 0x0000, 0x0000, 0xb400, 0x0006,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5200, 0x294a, 0x04a5,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x01a0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0xd000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd000,
     0x001a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xb400, 0x0006,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x01a0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0xb5a0, 0x00d6, 0x0000, 0x0000,
     0x001a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xb400, 0x0006,
@@ -479,13 +479,18 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x4000, 0xad03, 0xd6b5, 0x035a, 0x340d, 0x5a00,
     0xad6b, 0xd6b5, 0x0000, 0x8000, 0x5ad6, 0xad6b, 0xd6b5, 0x6800,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xb5ad,
+    0x5ad6, 0xad6b, 0xd6b5, 0x035a, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0xb5ad, 0x0006, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x40d0, 0xad6b, 0xd035, 0x0000, 0x3400, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0xd680, 0x6b5a, 0xb5ad, 0x0006, 0x0000, 0x0000, 0x0000,
     0x01ad, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0xb400, 0x1ad6, 0xad00, 0x0681, 0x0000, 0x0000,
+    0x0000, 0x0000, 0xb400, 0x1ad6, 0xad00, 0xd681, 0x001a, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4000,
     0xad03, 0x0001, 0x681a, 0x01ad, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -498,12 +503,12 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x35ad, 0x5ad0, 0xad6b, 0xd6b5, 0x6b5a, 0xb40d, 0x5ad6,
-    0x0d6b, 0x0000, 0x001a, 0x0000, 0x00d0, 0x0000, 0x0000, 0x0000,
+    0x0d6b, 0x0000, 0x001a, 0x0000, 0x00d0, 0xad00, 0x0001, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5,
     0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6,
-    0x0003, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd000, 0x6b5a,
+    0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x1ad6, 0x0000, 0xd000, 0x6b5a,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x9024, 0x0252, 0x0000, 0x0000, 0x0000,
@@ -516,7 +521,7 @@
     0xd5a4, 0xe73a, 0x739c, 0x0008, 0x1080, 0x0842, 0x24a5, 0x04a5,
     0x2108, 0x1084, 0x0842, 0x24a5, 0x04a5, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a,
-    0x94a5, 0x4a52, 0x0029, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x94a5, 0x4a52, 0xa529, 0x0014, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6,
     0xad6b, 0xd6b5, 0x6b5a, 0x000d, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0252, 0xa529, 0x5204, 0x0002, 0x0000, 0x0000, 0x8120, 0x1294,
@@ -548,7 +553,7 @@
     0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52,
     0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a,
     0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529,
-    0x5294, 0x294a, 0x94a5, 0x4a52, 0x0009, 0x0000, 0x0000, 0x0000,
+    0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x004a, 0x0000,
     0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
     0x294a, 0x94a5, 0x4a52, 0xa529, 0x0004, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x4a52, 0xa529, 0x5294, 0x004a,
@@ -564,15 +569,15 @@
     0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a,
     0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529,
     0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5,
-    0x4a40, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
+    0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
     0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52,
     0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a,
     0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529,
-    0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5,
-    0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
+    0x5294, 0x294a, 0x94a5, 0x4a52, 0x8009, 0x5294, 0x294a, 0x94a5,
+    0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0x2529, 0x5200,
     0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52,
-    0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a,
-    0x0001, 0x4a52, 0xa529, 0x5294, 0x0002, 0x0000, 0x0000, 0x0000,
+    0xa529, 0x5294, 0x0002, 0x94a4, 0x4a52, 0xa529, 0x1294, 0x2948,
+    0x94a5, 0x0252, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -591,7 +596,7 @@
     0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a,
     0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
     0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52,
-    0xa529, 0x5294, 0x094a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
@@ -687,13 +692,13 @@
     0x35ad, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8000,
     0x4006, 0xad6b, 0xd001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1a00,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0xa000, 0xd6b5, 0x035a, 0x35a0,
     0x5a00, 0x0003, 0x0000, 0x0000, 0x8000, 0x0006, 0x0000, 0xd000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xb40d,
     0x00d6, 0x0d68, 0x0000, 0x6b40, 0x01a0, 0x0000, 0x0000, 0x0000,
@@ -725,7 +730,7 @@
     0x2108, 0x39ce, 0x9ce7, 0xce73, 0xe739, 0x739c, 0x39ce, 0x9ce7,
     0xce73, 0xe739, 0x739c, 0x1084, 0x0842, 0x8421, 0x4210, 0x2124,
     0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0x4a52, 0xa529, 0x5294,
-    0x4212, 0x2108, 0xb5ad, 0x5ad6, 0x8423, 0x4210, 0x2108, 0x4a52,
+    0x4212, 0x2108, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x211a, 0x4a52,
     0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a,
     0x94a5, 0x324c, 0x9922, 0x5294, 0x294a, 0x54a5, 0xa652, 0xa524,
     0x5224, 0x4929, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108,
@@ -749,11 +754,21 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x4a52, 0xa529, 0x5294, 0x294a,
     0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529,
     0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5,
-    0x4a52, 0xa529, 0x5294, 0x004a, 0x0000, 0x4a52, 0xa529, 0x5294,
-    0x094a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x4a52, 0xa529, 0x5294, 0x294a, 0x0001, 0x4a52, 0xa529, 0x5294,
+    0x094a, 0x0000, 0x0012, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x001a,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x210d, 0x1084,
+    0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x0421, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x4000, 0xad6b, 0x0035, 0x0000,
     0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318,
     0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63,
     0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c,
@@ -771,6 +786,11 @@
     0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6,
     0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318,
     0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63,
+    0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c,
+    0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0x5a31,
+    0x631b, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6,
+    0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318,
+    0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63,
     0xc631, 0x4318, 0x294a, 0x94a5, 0x8c63, 0xc631, 0x6318, 0x318c,
     0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631,
     0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6,
@@ -783,7 +803,7 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0xad00, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0x0003, 0x0000,
     0x0000, 0x4800, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0x2529,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6800,
     0x01ad, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8000,
     0x5ad6, 0xa003, 0x0035, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -793,23 +813,68 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0xad68, 0x06b5, 0x6b5a, 0xb5ad,
     0x00d6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x8000, 0x0006, 0x0000, 0x0000, 0x0000,
     0x01ad, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x4000, 0xad6b, 0xd6b5, 0x035a, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6800, 0x01ad,
+    0x40d0, 0x006b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6800, 0x8000, 0x5ad6,
+    0xad6b, 0x0035, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x01a0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0xd000, 0x0000, 0x000d, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4000,
+    0xad6b, 0xd6b5, 0x0000, 0xb5ad, 0x00d6, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8000,
+    0x5ad6, 0x0d6b, 0x0034, 0x6800, 0xb40d, 0x0006, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xb400,
+    0x1ad6, 0x0000, 0xd000, 0x681a, 0x000d, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8000,
+    0x5ad6, 0xad6b, 0x0035, 0x681a, 0x000d, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0680, 0x001a, 0xb5ad,
     0x1ad6, 0x0068, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0xb5ad, 0x00d6, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xb5ad,
+    0x5ad6, 0x0003, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x6800, 0x35ad, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x035a, 0x39ce, 0x0007, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -844,6 +909,11 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0009, 0x0000, 0x0000,
     0x4200, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
     0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210,
+    0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318,
+    0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63,
+    0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0x0031, 0x6318, 0x318c,
+    0x18c6, 0xb5ad, 0x5ad6, 0x0003, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x1084, 0x0802, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1080, 0x0040, 0x8020, 0x4210, 0x2108, 0x1084,
     0x0840, 0x8021, 0x0200, 0x0000, 0x1000, 0x0000, 0x8020, 0x0200,
@@ -861,59 +931,69 @@
     0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5,
     0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0x0009, 0x0000,
     0x0000, 0x0000, 0x4a52, 0xa529, 0x5294, 0x294a, 0x04a5, 0x4a40,
-    0xa529, 0x5294, 0x294a, 0x04a5, 0x4a40, 0xa529, 0x5294, 0x294a,
-    0x94a5, 0x4a40, 0xa529, 0x5294, 0x294a, 0x94a5, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x2108, 0x1084, 0x0842, 0x0021, 0x0000, 0x0000, 0x0000, 0x0000,
+    0xa529, 0x5294, 0x294a, 0x94a5, 0x4a40, 0xa529, 0x5294, 0x294a,
+    0x94a5, 0x4a40, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529,
+    0x5294, 0x294a, 0x94a5, 0x4a52, 0x2529, 0x0000, 0x0000, 0x0000,
+    0x2108, 0x1084, 0x0842, 0x2921, 0x0001, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0948, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
-    0x294a, 0x94a5, 0x0012, 0x0000, 0x0000, 0x0000, 0x0000, 0x4a52,
-    0x2529, 0x5290, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a,
+    0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x0001, 0x4a52,
+    0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a,
     0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529,
-    0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x0001,
-    0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0x0009, 0x0000,
-    0x0000, 0x0000, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52,
-    0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0x8129, 0x5294, 0x004a,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4a52, 0xa529,
-    0x5294, 0x294a, 0x94a5, 0x0012, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x0025,
+    0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
+    0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52,
+    0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a,
+    0x04a5, 0x0000, 0xa520, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529,
+    0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x0094, 0x0000, 0x0000,
     0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
     0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52,
-    0xa529, 0x5294, 0x294a, 0x04a5, 0x4812, 0xa529, 0x5294, 0x294a,
+    0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a,
+    0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529,
+    0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x04a5,
+    0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
+    0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52,
+    0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x004a,
+    0x0000, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529,
+    0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x2902, 0x94a5,
+    0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
+    0x294a, 0x94a5, 0x4a52, 0xa409, 0x5294, 0x294a, 0x94a5, 0x4a52,
+    0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a,
+    0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529,
+    0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5,
+    0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
+    0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52,
+    0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa400, 0x5294, 0x294a,
     0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529,
     0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5,
     0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
     0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52,
     0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a,
-    0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529,
-    0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x4094, 0x294a, 0x0001,
-    0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
-    0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52,
-    0xa529, 0x5294, 0x294a, 0x0025, 0x4a52, 0x0009, 0x0000, 0x0000,
-    0x0000, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529,
-    0x0094, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2900, 0x94a5,
-    0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
-    0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52,
-    0xa529, 0x5294, 0x294a, 0x94a5, 0x0012, 0xa400, 0x5294, 0x294a,
-    0x94a5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
-    0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52,
-    0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0x2529, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x94a5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4a52, 0xa529,
+    0x5294, 0x294a, 0x0001, 0x4a52, 0x0009, 0x0000, 0x0000, 0x0000,
     0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
     0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52,
     0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a,
     0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529,
     0x5294, 0x294a, 0x94a5, 0x4a52, 0x0009, 0x0000, 0x0000, 0x0000,
+    0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
+    0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52,
+    0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a,
+    0x94a5, 0x4a52, 0x0129, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x4a52, 0xa529, 0x5294, 0x094a, 0x0000, 0x4a52, 0xa529, 0x5294,
+    0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52,
+    0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x0094, 0x0000,
+    0x0000, 0x4a52, 0xa529, 0x5294, 0x0002, 0x0000, 0x4a52, 0xa529,
+    0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5,
+    0x4a52, 0xa529, 0x0094, 0x0000, 0x0000, 0x4a52, 0xa529, 0x5294,
+    0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x0025, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
--- a/lib/unictype/blocks.h
+++ b/lib/unictype/blocks.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Unicode blocks.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 static const uc_block_t blocks[] =
 {
   { 0x0000, 0x007F, "Basic Latin" },
@@ -58,6 +58,7 @@
   { 0x19E0, 0x19FF, "Khmer Symbols" },
   { 0x1A00, 0x1A1F, "Buginese" },
   { 0x1A20, 0x1AAF, "Tai Tham" },
+  { 0x1AB0, 0x1AFF, "Combining Diacritical Marks Extended" },
   { 0x1B00, 0x1B7F, "Balinese" },
   { 0x1B80, 0x1BBF, "Sundanese" },
   { 0x1BC0, 0x1BFF, "Batak" },
@@ -136,11 +137,13 @@
   { 0xA930, 0xA95F, "Rejang" },
   { 0xA960, 0xA97F, "Hangul Jamo Extended-A" },
   { 0xA980, 0xA9DF, "Javanese" },
+  { 0xA9E0, 0xA9FF, "Myanmar Extended-B" },
   { 0xAA00, 0xAA5F, "Cham" },
   { 0xAA60, 0xAA7F, "Myanmar Extended-A" },
   { 0xAA80, 0xAADF, "Tai Viet" },
   { 0xAAE0, 0xAAFF, "Meetei Mayek Extensions" },
   { 0xAB00, 0xAB2F, "Ethiopic Extended-A" },
+  { 0xAB30, 0xAB6F, "Latin Extended-E" },
   { 0xABC0, 0xABFF, "Meetei Mayek" },
   { 0xAC00, 0xD7AF, "Hangul Syllables" },
   { 0xD7B0, 0xD7FF, "Hangul Jamo Extended-B" },
@@ -167,54 +170,83 @@
   { 0x101D0, 0x101FF, "Phaistos Disc" },
   { 0x10280, 0x1029F, "Lycian" },
   { 0x102A0, 0x102DF, "Carian" },
+  { 0x102E0, 0x102FF, "Coptic Epact Numbers" },
   { 0x10300, 0x1032F, "Old Italic" },
   { 0x10330, 0x1034F, "Gothic" },
+  { 0x10350, 0x1037F, "Old Permic" },
   { 0x10380, 0x1039F, "Ugaritic" },
   { 0x103A0, 0x103DF, "Old Persian" },
   { 0x10400, 0x1044F, "Deseret" },
   { 0x10450, 0x1047F, "Shavian" },
   { 0x10480, 0x104AF, "Osmanya" },
+  { 0x10500, 0x1052F, "Elbasan" },
+  { 0x10530, 0x1056F, "Caucasian Albanian" },
+  { 0x10600, 0x1077F, "Linear A" },
   { 0x10800, 0x1083F, "Cypriot Syllabary" },
   { 0x10840, 0x1085F, "Imperial Aramaic" },
+  { 0x10860, 0x1087F, "Palmyrene" },
+  { 0x10880, 0x108AF, "Nabataean" },
   { 0x10900, 0x1091F, "Phoenician" },
   { 0x10920, 0x1093F, "Lydian" },
   { 0x10980, 0x1099F, "Meroitic Hieroglyphs" },
   { 0x109A0, 0x109FF, "Meroitic Cursive" },
   { 0x10A00, 0x10A5F, "Kharoshthi" },
   { 0x10A60, 0x10A7F, "Old South Arabian" },
+  { 0x10A80, 0x10A9F, "Old North Arabian" },
+  { 0x10AC0, 0x10AFF, "Manichaean" },
   { 0x10B00, 0x10B3F, "Avestan" },
   { 0x10B40, 0x10B5F, "Inscriptional Parthian" },
   { 0x10B60, 0x10B7F, "Inscriptional Pahlavi" },
+  { 0x10B80, 0x10BAF, "Psalter Pahlavi" },
   { 0x10C00, 0x10C4F, "Old Turkic" },
   { 0x10E60, 0x10E7F, "Rumi Numeral Symbols" },
   { 0x11000, 0x1107F, "Brahmi" },
   { 0x11080, 0x110CF, "Kaithi" },
   { 0x110D0, 0x110FF, "Sora Sompeng" },
   { 0x11100, 0x1114F, "Chakma" },
+  { 0x11150, 0x1117F, "Mahajani" },
   { 0x11180, 0x111DF, "Sharada" },
+  { 0x111E0, 0x111FF, "Sinhala Archaic Numbers" },
+  { 0x11200, 0x1124F, "Khojki" },
+  { 0x112B0, 0x112FF, "Khudawadi" },
+  { 0x11300, 0x1137F, "Grantha" },
+  { 0x11480, 0x114DF, "Tirhuta" },
+  { 0x11580, 0x115FF, "Siddham" },
+  { 0x11600, 0x1165F, "Modi" },
   { 0x11680, 0x116CF, "Takri" },
+  { 0x118A0, 0x118FF, "Warang Citi" },
+  { 0x11AC0, 0x11AFF, "Pau Cin Hau" },
   { 0x12000, 0x123FF, "Cuneiform" },
   { 0x12400, 0x1247F, "Cuneiform Numbers and Punctuation" },
   { 0x13000, 0x1342F, "Egyptian Hieroglyphs" },
   { 0x16800, 0x16A3F, "Bamum Supplement" },
+  { 0x16A40, 0x16A6F, "Mro" },
+  { 0x16AD0, 0x16AFF, "Bassa Vah" },
+  { 0x16B00, 0x16B8F, "Pahawh Hmong" },
   { 0x16F00, 0x16F9F, "Miao" },
   { 0x1B000, 0x1B0FF, "Kana Supplement" },
+  { 0x1BC00, 0x1BC9F, "Duployan" },
+  { 0x1BCA0, 0x1BCAF, "Shorthand Format Controls" },
   { 0x1D000, 0x1D0FF, "Byzantine Musical Symbols" },
   { 0x1D100, 0x1D1FF, "Musical Symbols" },
   { 0x1D200, 0x1D24F, "Ancient Greek Musical Notation" },
   { 0x1D300, 0x1D35F, "Tai Xuan Jing Symbols" },
   { 0x1D360, 0x1D37F, "Counting Rod Numerals" },
   { 0x1D400, 0x1D7FF, "Mathematical Alphanumeric Symbols" },
+  { 0x1E800, 0x1E8DF, "Mende Kikakui" },
   { 0x1EE00, 0x1EEFF, "Arabic Mathematical Alphabetic Symbols" },
   { 0x1F000, 0x1F02F, "Mahjong Tiles" },
   { 0x1F030, 0x1F09F, "Domino Tiles" },
   { 0x1F0A0, 0x1F0FF, "Playing Cards" },
   { 0x1F100, 0x1F1FF, "Enclosed Alphanumeric Supplement" },
   { 0x1F200, 0x1F2FF, "Enclosed Ideographic Supplement" },
-  { 0x1F300, 0x1F5FF, "Miscellaneous Symbols And Pictographs" },
+  { 0x1F300, 0x1F5FF, "Miscellaneous Symbols and Pictographs" },
   { 0x1F600, 0x1F64F, "Emoticons" },
-  { 0x1F680, 0x1F6FF, "Transport And Map Symbols" },
+  { 0x1F650, 0x1F67F, "Ornamental Dingbats" },
+  { 0x1F680, 0x1F6FF, "Transport and Map Symbols" },
   { 0x1F700, 0x1F77F, "Alchemical Symbols" },
+  { 0x1F780, 0x1F7FF, "Geometric Shapes Extended" },
+  { 0x1F800, 0x1F8FF, "Supplemental Arrows-C" },
   { 0x20000, 0x2A6DF, "CJK Unified Ideographs Extension B" },
   { 0x2A700, 0x2B73F, "CJK Unified Ideographs Extension C" },
   { 0x2B740, 0x2B81F, "CJK Unified Ideographs Extension D" },
@@ -254,676 +286,272 @@
    42,  47,
    47,  49,
    49,  53,
-   53,  55,
-   55,  58,
-   58,  62,
-   62,  65,
-   65,  66,
+   53,  56,
+   56,  59,
+   59,  63,
+   63,  66,
    66,  67,
-   67,  71,
-   71,  74,
-   74,  75,
+   67,  68,
+   68,  72,
+   72,  75,
    75,  76,
-   76,  79,
-   79,  82,
-   82,  83,
-   83,  86,
-   86,  87,
-   87,  89,
-   89,  90,
+   76,  77,
+   77,  80,
+   80,  83,
+   83,  84,
+   84,  87,
+   87,  88,
+   88,  90,
    90,  91,
-   91,  94,
-   94,  98,
-   98, 100,
-  100, 102,
-  102, 105,
-  105, 111,
-  111, 112,
+   91,  92,
+   92,  95,
+   95,  99,
+   99, 101,
+  101, 103,
+  103, 106,
+  106, 112,
   112, 113,
   113, 114,
-  113, 114,
-  113, 114,
-  113, 114,
-  113, 114,
-  113, 114,
-  113, 114,
-  113, 114,
-  113, 114,
-  113, 114,
-  113, 114,
-  113, 114,
-  113, 114,
-  113, 114,
-  113, 114,
-  113, 114,
-  113, 114,
-  113, 114,
-  113, 114,
-  113, 114,
-  113, 114,
-  113, 114,
-  113, 114,
-  113, 114,
-  113, 114,
-  113, 115,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
-  115, 116,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 116,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
+  116, 117,
   116, 117,
   116, 117,
   116, 117,
   116, 117,
-  116, 119,
-  119, 120,
-  119, 122,
-  122, 124,
-  124, 129,
-  129, 133,
-  133, 137,
-  137, 139,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 140,
-  139, 141,
-  141, 142,
-  141, 142,
-  141, 142,
-  141, 143,
-  143, 144,
-  143, 144,
-  143, 144,
-  143, 144,
-  144, 145,
-  144, 145,
-  144, 145,
-  144, 145,
-  144, 145,
-  144, 145,
-  144, 145,
-  144, 145,
-  144, 145,
-  144, 145,
-  144, 145,
-  144, 145,
-  144, 145,
-  144, 145,
-  144, 145,
-  144, 145,
-  144, 145,
-  144, 145,
-  144, 145,
-  144, 145,
-  144, 145,
-  144, 145,
+  117, 118,
+  117, 118,
+  117, 118,
+  117, 118,
+  117, 120,
+  120, 121,
+  120, 123,
+  123, 125,
+  125, 130,
+  130, 135,
+  135, 139,
+  139, 142,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 143,
+  142, 144,
   144, 145,
   144, 145,
   144, 145,
-  145, 146,
-  145, 146,
-  146, 148,
+  144, 146,
+  146, 147,
+  146, 147,
+  146, 147,
+  146, 147,
+  147, 148,
+  147, 148,
+  147, 148,
+  147, 148,
+  147, 148,
+  147, 148,
+  147, 148,
+  147, 148,
+  147, 148,
+  147, 148,
+  147, 148,
+  147, 148,
+  147, 148,
+  147, 148,
+  147, 148,
+  147, 148,
+  147, 148,
+  147, 148,
+  147, 148,
+  147, 148,
+  147, 148,
   147, 148,
   147, 148,
-  148, 154,
-  154, 156,
-  156, 158,
-  158, 162,
-  162, 164,
-  164, 168,
-  168, 171,
-  171, 171,
-  171, 171,
-  171, 171,
-  171, 173,
-  173, 177,
-  177, 179,
-  179, 182,
-  182, 183,
-  183, 183,
-  183, 184,
-  184, 184,
-  184, 187,
-  187, 189,
-  189, 189,
-  189, 189,
-  189, 189,
-  189, 189,
-  189, 190,
-  190, 190,
-  190, 190,
-  190, 190,
-  190, 190,
-  190, 190,
-  190, 190,
-  190, 190,
-  190, 190,
-  190, 190,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  191, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 193,
-  192, 193,
-  192, 193,
-  192, 193,
-  192, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 194,
-  193, 194,
-  193, 194,
-  194, 194,
-  194, 194,
-  194, 194,
-  194, 194,
-  194, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
-  195, 195,
+  147, 148,
+  147, 148,
+  148, 149,
+  148, 149,
+  149, 151,
+  150, 151,
+  150, 151,
+  151, 157,
+  157, 159,
+  159, 161,
+  161, 165,
+  165, 168,
+  168, 173,
+  173, 176,
+  176, 178,
+  178, 179,
+  178, 179,
+  179, 183,
+  183, 187,
+  187, 191,
+  191, 195,
   195, 196,
   196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
-  196, 196,
   196, 197,
-  197, 198,
-  198, 199,
-  199, 201,
-  201, 202,
-  201, 202,
-  201, 202,
-  201, 202,
-  202, 202,
-  202, 202,
-  202, 202,
-  202, 202,
-  202, 202,
-  202, 202,
-  202, 202,
-  202, 202,
-  202, 202,
-  202, 202,
-  202, 202,
-  202, 202,
-  202, 202,
-  202, 202,
-  202, 202,
-  202, 202,
-  202, 202,
-  202, 202,
-  202, 202,
-  202, 202,
-  202, 202,
-  202, 202,
-  202, 203,
-  203, 203,
-  203, 206,
+  197, 197,
+  197, 200,
+  200, 204,
+  204, 206,
   206, 207,
   207, 208,
   208, 209,
-  208, 209,
-  208, 209,
   209, 211,
+  211, 211,
   211, 212,
   212, 212,
-  212, 212,
-  212, 212,
-  212, 212,
-  212, 212,
-  212, 212,
-  212, 212,
-  212, 212,
   212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
-  212, 213,
+  213, 213,
+  213, 213,
+  213, 213,
+  213, 213,
+  213, 213,
   213, 214,
   213, 214,
   213, 214,
   213, 214,
-  213, 214,
-  213, 214,
-  213, 214,
-  213, 214,
-  213, 214,
-  213, 214,
-  213, 214,
-  213, 214,
-  213, 214,
-  213, 214,
-  213, 214,
-  213, 214,
-  213, 215,
   214, 215,
   215, 215,
   215, 215,
@@ -936,66 +564,470 @@
   215, 215,
   215, 215,
   215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
-  215, 215,
   215, 216,
   215, 216,
   215, 216,
+  215, 216,
+  215, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
+  216, 216,
   216, 216,
   216, 216,
   216, 216,
   216, 216,
-  216, 216
+  216, 217,
+  216, 217,
+  216, 219,
+  219, 220,
+  220, 220,
+  220, 220,
+  220, 220,
+  220, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 221,
+  221, 222,
+  222, 222,
+  222, 222,
+  222, 222,
+  222, 222,
+  222, 222,
+  222, 222,
+  222, 222,
+  222, 222,
+  222, 222,
+  222, 222,
+  222, 222,
+  222, 224,
+  224, 224,
+  224, 224,
+  224, 224,
+  224, 224,
+  224, 224,
+  224, 224,
+  224, 224,
+  224, 224,
+  224, 224,
+  224, 224,
+  224, 224,
+  224, 224,
+  224, 224,
+  224, 224,
+  224, 224,
+  224, 224,
+  224, 224,
+  224, 224,
+  224, 224,
+  224, 225,
+  225, 226,
+  226, 227,
+  227, 229,
+  229, 230,
+  229, 230,
+  229, 230,
+  229, 230,
+  230, 230,
+  230, 230,
+  230, 230,
+  230, 230,
+  230, 230,
+  230, 230,
+  230, 230,
+  230, 230,
+  230, 230,
+  230, 230,
+  230, 230,
+  230, 230,
+  230, 230,
+  230, 230,
+  230, 230,
+  230, 230,
+  230, 231,
+  231, 231,
+  231, 231,
+  231, 231,
+  231, 231,
+  231, 231,
+  231, 232,
+  232, 232,
+  232, 235,
+  235, 236,
+  236, 237,
+  237, 238,
+  237, 238,
+  237, 238,
+  238, 241,
+  241, 243,
+  243, 244,
+  244, 244,
+  244, 244,
+  244, 244,
+  244, 244,
+  244, 244,
+  244, 244,
+  244, 244,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  244, 245,
+  245, 246,
+  245, 246,
+  245, 246,
+  245, 246,
+  245, 246,
+  245, 246,
+  245, 246,
+  245, 246,
+  245, 246,
+  245, 246,
+  245, 246,
+  245, 246,
+  245, 246,
+  245, 246,
+  245, 246,
+  245, 246,
+  245, 247,
+  246, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 247,
+  247, 248,
+  247, 248,
+  247, 248,
+  248, 248,
+  248, 248,
+  248, 248,
+  248, 248,
+  248, 248
 };
-#define blocks_upper_first_index 216
-#define blocks_upper_last_index 220
+#define blocks_upper_first_index 248
+#define blocks_upper_last_index 252
--- a/lib/unictype/categ_C.h
+++ b/lib/unictype/categ_C.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[17];
     short level2[5 << 7];
-    /*unsigned*/ int level3[64 << 4];
+    /*unsigned*/ int level3[71 << 4];
   }
 u_categ_C =
 {
@@ -55,13 +55,13 @@
        18 +   640 * sizeof (short) / sizeof (int) +   240,
        18 +   640 * sizeof (short) / sizeof (int) +   256,
        18 +   640 * sizeof (short) / sizeof (int) +   272,
+       -1,
+       -1,
        18 +   640 * sizeof (short) / sizeof (int) +   288,
-       -1,
        18 +   640 * sizeof (short) / sizeof (int) +   304,
        18 +   640 * sizeof (short) / sizeof (int) +   320,
        18 +   640 * sizeof (short) / sizeof (int) +   336,
        18 +   640 * sizeof (short) / sizeof (int) +   352,
-       18 +   640 * sizeof (short) / sizeof (int) +   368,
        -1,
        -1,
        -1,
@@ -74,7 +74,7 @@
        -1,
        -1,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   384,
+       18 +   640 * sizeof (short) / sizeof (int) +   368,
        -1,
        -1,
        -1,
@@ -115,13 +115,13 @@
        -1,
        -1,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   400,
+       18 +   640 * sizeof (short) / sizeof (int) +   384,
        -1,
        -1,
+       18 +   640 * sizeof (short) / sizeof (int) +   400,
        18 +   640 * sizeof (short) / sizeof (int) +   416,
        18 +   640 * sizeof (short) / sizeof (int) +   432,
        18 +   640 * sizeof (short) / sizeof (int) +   448,
-       18 +   640 * sizeof (short) / sizeof (int) +   464,
        -1,
        -1,
        -1,
@@ -143,22 +143,23 @@
        -1,
        -1,
        -1,
+       18 +   640 * sizeof (short) / sizeof (int) +   464,
        18 +   640 * sizeof (short) / sizeof (int) +   480,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
        18 +   640 * sizeof (short) / sizeof (int) +   496,
        18 +   640 * sizeof (short) / sizeof (int) +   512,
        18 +   640 * sizeof (short) / sizeof (int) +   528,
@@ -167,131 +168,130 @@
        18 +   640 * sizeof (short) / sizeof (int) +   576,
        18 +   640 * sizeof (short) / sizeof (int) +   592,
        18 +   640 * sizeof (short) / sizeof (int) +   608,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
        18 +   640 * sizeof (short) / sizeof (int) +   624,
        18 +   640 * sizeof (short) / sizeof (int) +   640,
        18 +   640 * sizeof (short) / sizeof (int) +   656,
        18 +   640 * sizeof (short) / sizeof (int) +   672,
        18 +   640 * sizeof (short) / sizeof (int) +   688,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
        18 +   640 * sizeof (short) / sizeof (int) +   704,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       -1,
        18 +   640 * sizeof (short) / sizeof (int) +   720,
        18 +   640 * sizeof (short) / sizeof (int) +   736,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
+       18 +   640 * sizeof (short) / sizeof (int) +   752,
+       18 +   640 * sizeof (short) / sizeof (int) +   768,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       -1,
+       18 +   640 * sizeof (short) / sizeof (int) +   784,
+       18 +   640 * sizeof (short) / sizeof (int) +   800,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
        -1,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   752,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
+       18 +   640 * sizeof (short) / sizeof (int) +   816,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   768,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   784,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   800,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   816,
        18 +   640 * sizeof (short) / sizeof (int) +   832,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
        18 +   640 * sizeof (short) / sizeof (int) +   848,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
        18 +   640 * sizeof (short) / sizeof (int) +   864,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
        18 +   640 * sizeof (short) / sizeof (int) +   880,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
        18 +   640 * sizeof (short) / sizeof (int) +   896,
        18 +   640 * sizeof (short) / sizeof (int) +   912,
        18 +   640 * sizeof (short) / sizeof (int) +   928,
        18 +   640 * sizeof (short) / sizeof (int) +   944,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   960,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   976,
+       18 +   640 * sizeof (short) / sizeof (int) +   992,
+       18 +   640 * sizeof (short) / sizeof (int) +  1008,
+       18 +   640 * sizeof (short) / sizeof (int) +  1024,
+       18 +   640 * sizeof (short) / sizeof (int) +  1040,
+       18 +   640 * sizeof (short) / sizeof (int) +  1056,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
        -1,
        -1,
        -1,
@@ -375,7 +375,7 @@
        -1,
        -1,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   960,
+       18 +   640 * sizeof (short) / sizeof (int) +  1072,
        -1,
        -1,
        -1,
@@ -383,299 +383,299 @@
        -1,
        -1,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   976,
-       18 +   640 * sizeof (short) / sizeof (int) +   992,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
+       18 +   640 * sizeof (short) / sizeof (int) +  1088,
+       18 +   640 * sizeof (short) / sizeof (int) +  1104,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   992,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +  1008,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496
+       18 +   640 * sizeof (short) / sizeof (int) +  1104,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +  1120,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
+       18 +   640 * sizeof (short) / sizeof (int) +   480
   },
   {
     0xFFFFFFFF, 0x00000000, 0x00000000, 0x80000000,
@@ -684,28 +684,28 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x83000000,
+    0x00000000, 0x00000000, 0x00000000, 0x03000000,
     0x0000280F, 0x00000004, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x0001FF00, 0x01800000, 0x00000001,
-    0x00017900, 0x00000000, 0x0000FF00, 0xFFE0F800,
+    0x00000000, 0x00010000, 0x01800000, 0x00000001,
+    0x00011900, 0x00000000, 0x0000FF00, 0xFFE0F800,
     0x3000003F, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x20000000, 0x00000000,
     0x0000C000, 0x00000000, 0x00001800, 0x00000000,
     0x00000000, 0xFFFC0000, 0x00000000, 0xF8000000,
     0x00000000, 0x8000C000, 0xB0000000, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFE002, 0xFFFFFFFF, 0x8000000F,
-    0x00000000, 0x00000000, 0x00000000, 0x01000000,
-    0x00066011, 0x0C3A0200, 0x4F7F8660, 0xF0000030,
+    0xFFFFFFFF, 0xFFF80000, 0xFFFFFFFF, 0x0000000F,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00066010, 0x0C3A0200, 0x4F7F8660, 0xF0000030,
     0x00067811, 0x2C920200, 0xA1FDC678, 0xFFC0003F,
     0x00044011, 0x0C120200, 0xFFFEC440, 0xFFFC0030,
     0x00066011, 0x0C120200, 0x4F3FC660, 0xFF000030,
     0x29C23813, 0x3C0038E7, 0xFF7EC238, 0xF800003F,
-    0x00022011, 0x1C100200, 0xFC9FC220, 0x00FF0030,
-    0x00022013, 0x0C100200, 0xBF9FC220, 0xFFF90030,
-    0x00022013, 0x18000000, 0xFF7F8220, 0x01C00030,
-    0x03800013, 0xD0040000, 0x00A07B80, 0xFFE3FFFF,
+    0x00022010, 0x1C000200, 0xFC9FC220, 0x00FF0030,
+    0x00022011, 0x0C100200, 0xBF9FC220, 0xFFF90030,
+    0x00022011, 0x18000000, 0xFF7F8220, 0x01C00030,
+    0x03800013, 0xD0040000, 0x00A07B80, 0xFFE3003F,
     0x00000001, 0x78000000, 0xF0000000, 0xFFFFFFFF,
     0x010FDA69, 0xC4001351, 0x0C00C0A0, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000100, 0x0001E000,
@@ -719,50 +719,46 @@
     0x00C20000, 0x00000000, 0x18000000, 0xE0000000,
     0xFC000000, 0x00000000, 0x00000000, 0xFFE00000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xE0000000, 0x00000000, 0x00000000, 0xFFFE0000,
+    0xE0000000, 0x00000000, 0x00000000, 0xFE000000,
     0xFFE02000, 0xFF800000, 0xFFF00000, 0xFFF22000,
     0x00000000, 0x00000000, 0xC0000000, 0xFC00FC00,
     0xFC00C000, 0x00000000, 0x00000000, 0xFF000000,
     0x00000000, 0x0000F800, 0x00000000, 0xFFC00000,
-    0xE0000000, 0xF000F000, 0x0000000E, 0xFFE0C000,
+    0x80000000, 0xF000F000, 0x0000000E, 0xFFE0C000,
     0x00000000, 0x0000F000, 0x3800FC00, 0x00000000,
     0x30000000, 0x00000000, 0x80000000, 0x60000000,
-    0xFC00FC00, 0xFFFFC000, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFC00FC00, 0x8000C000, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x0000F000, 0xE0000000,
     0x00000000, 0x00000000, 0x00000000, 0x0FF00000,
     0x00000000, 0x07000000, 0x00001C00, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FF00, 0xFF800000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FF00, 0xFC800000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x0FFFFF80,
+    0x00000000, 0x00000000, 0x00000000, 0x0FC00000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xC0C00000, 0x00000000, 0x5500C0C0, 0xC0000000,
     0x00000000, 0x00200000, 0x10300020, 0x80230000,
     0x0000F800, 0x00007C00, 0x00000000, 0x000CFFFF,
-    0xE0008000, 0xF8000000, 0x0000FFFF, 0xFFFE0000,
+    0xE0008000, 0xC0000000, 0x0000FFFF, 0xFFFE0000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x0000FC00, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0xFFF00000,
+    0x00000000, 0x00000000, 0x00000000, 0xF8000000,
     0x00000000, 0xFFFFFF80, 0xFFFFF800, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000001, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFC00E000, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00300000,
+    0x00C00000, 0x1C000000, 0xFFFC0200, 0xFFFFFFFF,
     0x00000000, 0x00008000, 0x80000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x01F00000,
     0x00000000, 0x0000DF40, 0x00000000, 0x7FFE7F00,
     0xFF800000, 0x80808080, 0x80808080, 0x00000000,
-    0x00000000, 0xF0000000, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0xFFFFFFF8, 0xFFFFFFFF,
     0x04000000, 0x00000000, 0x00000000, 0xFFF00000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFC00000, 0xF000FFFF,
@@ -787,16 +783,16 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFF000, 0x00000000, 0x00000000,
-    0x7F000000, 0x00000000, 0x00000000, 0xFF000000,
+    0x40000000, 0x00000000, 0x00000000, 0xFF000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFF08000, 0xFFFFF800, 0xFFFFFFFF, 0x00FFFFFF,
+    0x00008000, 0xFFFCC000, 0xFFFFFFFF, 0x007FFFFF,
     0x00000000, 0xFC00F000, 0x00000000, 0xFF000000,
     0x00000000, 0x00000000, 0xFC003FE0, 0xF0000000,
     0x00000000, 0x00000000, 0x7FF00000, 0xE0000000,
-    0x00000000, 0x00000000, 0x3C004000, 0xFFFFFFFF,
-    0x00000000, 0xFF800000, 0x0C00C000, 0xF0000000,
+    0x00000000, 0x00000000, 0x3C004000, 0x80000000,
+    0x00000000, 0xFF800000, 0x0C00C000, 0x00000000,
     0x00000000, 0x00000000, 0x07FFFFF8, 0xFF800000,
-    0xFF818181, 0xFFFF8080, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFF818181, 0x00008080, 0x00000000, 0xFFFFFFCF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0xFC00C000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -818,30 +814,34 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x0000FFFF, 0x00000000,
     0x00030000, 0x00000000, 0xFFFFFF00, 0xC000FFFF,
-    0xFC000000, 0x0000FF80, 0x00080000, 0x0020F080,
+    0xFC000000, 0x0000C000, 0x00080000, 0x0020F080,
     0x00000000, 0x00000000, 0x00000000, 0xE0000000,
     0x00000001, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x80000000, 0xE3030303, 0xCFFF8080,
     0x00001000, 0x48000080, 0xC000C000, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0xF8000000,
     0x00000078, 0x00700000, 0x00000000, 0x00000000,
-    0xF000F800, 0xFFFFFFFF, 0x0000FFFF, 0xC0000000,
+    0xF000E000, 0xFFFFFFFE, 0x0000FFFF, 0xC0000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xE0000000, 0x00000000, 0xFFFE0000, 0xFFFFFFFF,
-    0x80000000, 0x0000FFF0, 0xFFFFF800, 0xFFFFFFFF,
+    0xE0000000, 0x00000000, 0xFFFE0000, 0xF0000000,
+    0x00000000, 0x0000FFF0, 0x0000F800, 0xF8000000,
     0x40000000, 0x00000000, 0xFFC000F0, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xC0000000, 0xFFFFFC00, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x0000FF00, 0x00000000, 0xFFFF7FF0,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000002C0, 0x6E400000, 0x00400000, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFF800000, 0xFFC00000, 0xFFFFFF00,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x000002C0, 0x6E400000, 0x00400000, 0x00000000,
+    0x80000000, 0xFFFF007F, 0xFFFFFFFF, 0xFFFFFFFF,
     0x70000000, 0x7C000000, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x3F000000, 0xFFFFFFFF, 0xFFFFFFFF,
     0x01100F90, 0x78F00000, 0xFE00FF00, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0xFFFFFFFF, 0x00000000, 0xFF800780,
     0x00000000, 0x01C00000, 0x00C00000, 0x00F80000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xE1FC0000, 0xFFFF01FF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0xFFFFFE00, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -850,19 +850,35 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00000000, 0x00000000, 0x0003C000, 0xFFFF0000,
+    0x00000000, 0x00000000, 0x0003C000, 0x7FFF0000,
     0x00000000, 0x20000000, 0x0000FFFC, 0xFC00FE00,
-    0x00000000, 0x00200000, 0xFFFFFFF0, 0xFFFFFFFF,
-    0x00000000, 0x00000000, 0xFC00FE00, 0xFFFFFFFF,
+    0x00000000, 0x00200000, 0x0000FFF0, 0xFF800000,
+    0x00000000, 0x00000000, 0xF800DE00, 0xFFE00001,
+    0x00040000, 0xC0000000, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0x0000FFFF, 0x00000000, 0xFC00F800,
+    0x00066011, 0x0C120200, 0x1F7FC660, 0xFFE0E030,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0xFC00FF00, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00C00000, 0xFFFFFC00, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0xFC00FFE0, 0xFFFFFFFF,
     0x00000000, 0xFF000000, 0xFFFFFC00, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0x00000000, 0x00000000, 0x7FF80000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0xFE000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0xFFFF8000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00000000, 0x00000000, 0x00000000, 0xFFF0FFF8,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFE000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0xFFE08000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -870,10 +886,10 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00000000, 0xFE000000, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0xFE000000, 0x80000000, 0xFFFF3C00,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, 0xFFC0C000,
+    0x00000000, 0x00000000, 0x0400FFC0, 0x1F000004,
+    0xFFFF0000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x0000FFE0, 0x80000000,
@@ -882,6 +898,10 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0xE000F800,
+    0x0C00FE00, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xFFC00000,
     0x00000000, 0x00000180, 0x00000000, 0x07F80000,
@@ -898,25 +918,33 @@
     0x00000000, 0x000000C0, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00003000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFF800060, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000010, 0xF5080169, 0x5569157B, 0xA1080869,
     0xF0000400, 0xF0000411, 0xFFFFFFFF, 0xFFFCFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x0000F000, 0x00000000, 0x00000000,
-    0xFFF00000, 0x80018000, 0x00010001, 0xFFFFFFFF,
-    0x0000F800, 0x00008000, 0x00000000, 0x0000F000,
+    0xFFF00000, 0x00018000, 0x00010001, 0xFFC00000,
+    0x0000E000, 0x00008000, 0x00000000, 0x0000F000,
     0xF8000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F,
     0x0000FFF8, 0xF8000000, 0xFFFCFE00, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00000000, 0x0040FFFE, 0x00000000, 0xE0000000,
-    0xFFF00000, 0x00000000, 0xFFFFF820, 0xFFFE0000,
-    0x00000000, 0x80000000, 0x00000002, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0xE1000000,
-    0x00000000, 0xC0000000, 0x0000FFF0, 0xFFFFFF00,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF,
-    0x00000000, 0x00000000, 0xFFFF001E, 0xFFFFFFFF,
-    0x00000000, 0x00000000, 0xFFFFFFC0, 0xFFFFFFFF,
+    0x00000000, 0x0000E000, 0x00000000, 0xC0000000,
+    0x00000000, 0x00000000, 0x000F8000, 0xFF000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x80000000,
+    0x00000000, 0x00000000, 0x0000F800, 0x04000000,
+    0x00000000, 0x00000010, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000018, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFF0000, 0xFFF0E000,
     0x00000000, 0x00000000, 0x00000000, 0xFFF00000,
+    0x00000000, 0x00000000, 0xFFE00000, 0xFFFFFFFF,
+    0x0000F000, 0x00000000, 0xFC00FF00, 0x00000000,
+    0x0000FF00, 0xFFFFC000, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFF800000, 0xFFFFFFFF,
--- a/lib/unictype/categ_Cc.h
+++ b/lib/unictype/categ_Cc.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/categ_Cf.h
+++ b/lib/unictype/categ_Cf.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[15];
     short level2[3 << 7];
-    /*unsigned*/ int level3[8 << 4];
+    /*unsigned*/ int level3[9 << 4];
   }
 u_categ_Cf =
 {
@@ -256,6 +256,7 @@
        -1,
        -1,
        -1,
+       16 +   384 * sizeof (short) / sizeof (int) +    96,
        -1,
        -1,
        -1,
@@ -265,8 +266,7 @@
        -1,
        -1,
        -1,
-       -1,
-       16 +   384 * sizeof (short) / sizeof (int) +    96,
+       16 +   384 * sizeof (short) / sizeof (int) +   112,
        -1,
        -1,
        -1,
@@ -290,7 +290,7 @@
        -1,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   112,
+       16 +   384 * sizeof (short) / sizeof (int) +   128,
        -1,
        -1,
        -1,
@@ -424,7 +424,7 @@
     0x00000000, 0x00002000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x1000001F, 0x00000000, 0x00000000, 0x00000000,
+    0x1000003F, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x20000000, 0x00000000,
     0x00008000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -445,6 +445,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x0000000F, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x07F80000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/categ_Cn.h
+++ b/lib/unictype/categ_Cn.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[17];
     short level2[6 << 7];
-    /*unsigned*/ int level3[63 << 4];
+    /*unsigned*/ int level3[70 << 4];
   }
 u_categ_Cn =
 {
@@ -55,13 +55,13 @@
        18 +   768 * sizeof (short) / sizeof (int) +   224,
        18 +   768 * sizeof (short) / sizeof (int) +   240,
        18 +   768 * sizeof (short) / sizeof (int) +   256,
+       -1,
+       -1,
        18 +   768 * sizeof (short) / sizeof (int) +   272,
-       -1,
        18 +   768 * sizeof (short) / sizeof (int) +   288,
        18 +   768 * sizeof (short) / sizeof (int) +   304,
        18 +   768 * sizeof (short) / sizeof (int) +   320,
        18 +   768 * sizeof (short) / sizeof (int) +   336,
-       18 +   768 * sizeof (short) / sizeof (int) +   352,
        -1,
        -1,
        -1,
@@ -74,7 +74,7 @@
        -1,
        -1,
        -1,
-       18 +   768 * sizeof (short) / sizeof (int) +   368,
+       18 +   768 * sizeof (short) / sizeof (int) +   352,
        -1,
        -1,
        -1,
@@ -115,13 +115,13 @@
        -1,
        -1,
        -1,
-       18 +   768 * sizeof (short) / sizeof (int) +   384,
+       18 +   768 * sizeof (short) / sizeof (int) +   368,
        -1,
        -1,
+       18 +   768 * sizeof (short) / sizeof (int) +   384,
        18 +   768 * sizeof (short) / sizeof (int) +   400,
        18 +   768 * sizeof (short) / sizeof (int) +   416,
        18 +   768 * sizeof (short) / sizeof (int) +   432,
-       18 +   768 * sizeof (short) / sizeof (int) +   448,
        -1,
        -1,
        -1,
@@ -143,7 +143,7 @@
        -1,
        -1,
        -1,
-       18 +   768 * sizeof (short) / sizeof (int) +   464,
+       18 +   768 * sizeof (short) / sizeof (int) +   448,
        -1,
        -1,
        -1,
@@ -161,6 +161,7 @@
        -1,
        -1,
        -1,
+       18 +   768 * sizeof (short) / sizeof (int) +   464,
        18 +   768 * sizeof (short) / sizeof (int) +   480,
        18 +   768 * sizeof (short) / sizeof (int) +   496,
        18 +   768 * sizeof (short) / sizeof (int) +   512,
@@ -173,125 +174,124 @@
        18 +   768 * sizeof (short) / sizeof (int) +   624,
        18 +   768 * sizeof (short) / sizeof (int) +   640,
        18 +   768 * sizeof (short) / sizeof (int) +   656,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
        18 +   768 * sizeof (short) / sizeof (int) +   672,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       -1,
        18 +   768 * sizeof (short) / sizeof (int) +   688,
        18 +   768 * sizeof (short) / sizeof (int) +   704,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
+       18 +   768 * sizeof (short) / sizeof (int) +   720,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       -1,
+       18 +   768 * sizeof (short) / sizeof (int) +   752,
+       18 +   768 * sizeof (short) / sizeof (int) +   768,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
        -1,
        -1,
-       18 +   768 * sizeof (short) / sizeof (int) +   720,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
+       18 +   768 * sizeof (short) / sizeof (int) +   784,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
        -1,
+       18 +   768 * sizeof (short) / sizeof (int) +   800,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   816,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
        18 +   768 * sizeof (short) / sizeof (int) +   736,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   752,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   768,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   784,
-       18 +   768 * sizeof (short) / sizeof (int) +   800,
-       18 +   768 * sizeof (short) / sizeof (int) +   816,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
        18 +   768 * sizeof (short) / sizeof (int) +   832,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
        18 +   768 * sizeof (short) / sizeof (int) +   848,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
        18 +   768 * sizeof (short) / sizeof (int) +   864,
        18 +   768 * sizeof (short) / sizeof (int) +   880,
        18 +   768 * sizeof (short) / sizeof (int) +   896,
        18 +   768 * sizeof (short) / sizeof (int) +   912,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   928,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   944,
+       18 +   768 * sizeof (short) / sizeof (int) +   960,
+       18 +   768 * sizeof (short) / sizeof (int) +   976,
+       18 +   768 * sizeof (short) / sizeof (int) +   992,
+       18 +   768 * sizeof (short) / sizeof (int) +  1008,
+       18 +   768 * sizeof (short) / sizeof (int) +  1024,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
        -1,
        -1,
        -1,
@@ -375,7 +375,7 @@
        -1,
        -1,
        -1,
-       18 +   768 * sizeof (short) / sizeof (int) +   928,
+       18 +   768 * sizeof (short) / sizeof (int) +  1040,
        -1,
        -1,
        -1,
@@ -383,299 +383,299 @@
        -1,
        -1,
        -1,
-       18 +   768 * sizeof (short) / sizeof (int) +   944,
-       18 +   768 * sizeof (short) / sizeof (int) +   960,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
+       18 +   768 * sizeof (short) / sizeof (int) +  1056,
+       18 +   768 * sizeof (short) / sizeof (int) +  1072,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
        -1,
-       18 +   768 * sizeof (short) / sizeof (int) +   960,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   976,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
+       18 +   768 * sizeof (short) / sizeof (int) +  1072,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +  1088,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
+       18 +   768 * sizeof (short) / sizeof (int) +   736,
        -1,
        -1,
        -1,
@@ -803,33 +803,33 @@
        -1,
        -1,
        -1,
-       18 +   768 * sizeof (short) / sizeof (int) +   992
+       18 +   768 * sizeof (short) / sizeof (int) +  1104
   },
   {
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x83000000,
+    0x00000000, 0x00000000, 0x00000000, 0x03000000,
     0x0000280F, 0x00000004, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x0001FF00, 0x01800000, 0x00000001,
-    0x00017900, 0x00000000, 0x0000FF00, 0xFFE0F800,
-    0x20000020, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00010000, 0x01800000, 0x00000001,
+    0x00011900, 0x00000000, 0x0000FF00, 0xFFE0F800,
+    0x20000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00004000, 0x00000000, 0x00001800, 0x00000000,
     0x00000000, 0xFFFC0000, 0x00000000, 0xF8000000,
     0x00000000, 0x8000C000, 0xB0000000, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFE002, 0xFFFFFFFF, 0x8000000F,
-    0x00000000, 0x00000000, 0x00000000, 0x01000000,
-    0x00066011, 0x0C3A0200, 0x4F7F8660, 0xF0000030,
+    0xFFFFFFFF, 0xFFF80000, 0xFFFFFFFF, 0x0000000F,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00066010, 0x0C3A0200, 0x4F7F8660, 0xF0000030,
     0x00067811, 0x2C920200, 0xA1FDC678, 0xFFC0003F,
     0x00044011, 0x0C120200, 0xFFFEC440, 0xFFFC0030,
     0x00066011, 0x0C120200, 0x4F3FC660, 0xFF000030,
     0x29C23813, 0x3C0038E7, 0xFF7EC238, 0xF800003F,
-    0x00022011, 0x1C100200, 0xFC9FC220, 0x00FF0030,
-    0x00022013, 0x0C100200, 0xBF9FC220, 0xFFF90030,
-    0x00022013, 0x18000000, 0xFF7F8220, 0x01C00030,
-    0x03800013, 0xD0040000, 0x00A07B80, 0xFFE3FFFF,
+    0x00022010, 0x1C000200, 0xFC9FC220, 0x00FF0030,
+    0x00022011, 0x0C100200, 0xBF9FC220, 0xFFF90030,
+    0x00022011, 0x18000000, 0xFF7F8220, 0x01C00030,
+    0x03800013, 0xD0040000, 0x00A07B80, 0xFFE3003F,
     0x00000001, 0x78000000, 0xF0000000, 0xFFFFFFFF,
     0x010FDA69, 0xC4001351, 0x0C00C0A0, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000100, 0x0001E000,
@@ -843,50 +843,46 @@
     0x00C20000, 0x00000000, 0x18000000, 0xE0000000,
     0xFC000000, 0x00000000, 0x00000000, 0xFFE00000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xE0000000, 0x00000000, 0x00000000, 0xFFFE0000,
+    0xE0000000, 0x00000000, 0x00000000, 0xFE000000,
     0xFFE02000, 0xFF800000, 0xFFF00000, 0xFFF22000,
     0x00000000, 0x00000000, 0xC0000000, 0xFC00FC00,
     0xFC008000, 0x00000000, 0x00000000, 0xFF000000,
     0x00000000, 0x0000F800, 0x00000000, 0xFFC00000,
-    0xE0000000, 0xF000F000, 0x0000000E, 0xFFE0C000,
+    0x80000000, 0xF000F000, 0x0000000E, 0xFFE0C000,
     0x00000000, 0x0000F000, 0x3800FC00, 0x00000000,
     0x30000000, 0x00000000, 0x80000000, 0x60000000,
-    0xFC00FC00, 0xFFFFC000, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFC00FC00, 0x8000C000, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x0000F000, 0xE0000000,
     0x00000000, 0x00000000, 0x00000000, 0x0FF00000,
     0x00000000, 0x07000000, 0x00001C00, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FF00, 0xFF800000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FF00, 0xFC800000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x0FFFFF80,
+    0x00000000, 0x00000000, 0x00000000, 0x0FC00000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xC0C00000, 0x00000000, 0x5500C0C0, 0xC0000000,
     0x00000000, 0x00200000, 0x10300020, 0x80230000,
     0x00000000, 0x00000000, 0x00000000, 0x000C0020,
-    0xE0008000, 0xF8000000, 0x0000FFFF, 0xFFFE0000,
+    0xE0008000, 0xC0000000, 0x0000FFFF, 0xFFFE0000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x0000FC00, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0xFFF00000,
+    0x00000000, 0x00000000, 0x00000000, 0xF8000000,
     0x00000000, 0xFFFFFF80, 0xFFFFF800, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000001, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFC00E000, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00300000,
+    0x00C00000, 0x1C000000, 0xFFFC0200, 0xFFFFFFFF,
     0x00000000, 0x00008000, 0x80000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x01F00000,
     0x00000000, 0x0000DF40, 0x00000000, 0x7FFE7F00,
     0xFF800000, 0x80808080, 0x80808080, 0x00000000,
-    0x00000000, 0xF0000000, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0xFFFFFFF8, 0xFFFFFFFF,
     0x04000000, 0x00000000, 0x00000000, 0xFFF00000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFC00000, 0xF000FFFF,
@@ -911,16 +907,16 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFF000, 0x00000000, 0x00000000,
-    0x7F000000, 0x00000000, 0x00000000, 0xFF000000,
+    0x40000000, 0x00000000, 0x00000000, 0xFF000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFF08000, 0xFFFFF800, 0xFFFFFFFF, 0x00FFFFFF,
+    0x00008000, 0xFFFCC000, 0xFFFFFFFF, 0x007FFFFF,
     0x00000000, 0xFC00F000, 0x00000000, 0xFF000000,
     0x00000000, 0x00000000, 0xFC003FE0, 0xF0000000,
     0x00000000, 0x00000000, 0x7FF00000, 0xE0000000,
-    0x00000000, 0x00000000, 0x3C004000, 0xFFFFFFFF,
-    0x00000000, 0xFF800000, 0x0C00C000, 0xF0000000,
+    0x00000000, 0x00000000, 0x3C004000, 0x80000000,
+    0x00000000, 0xFF800000, 0x0C00C000, 0x00000000,
     0x00000000, 0x00000000, 0x07FFFFF8, 0xFF800000,
-    0xFF818181, 0xFFFF8080, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFF818181, 0x00008080, 0x00000000, 0xFFFFFFCF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0xFC00C000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -934,34 +930,34 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x0000FFFF, 0x00000000,
     0x00030000, 0x00000000, 0xFFFFFF00, 0xC000FFFF,
-    0xFC000000, 0x0000FF80, 0x00080000, 0x0020F080,
+    0xFC000000, 0x0000C000, 0x00080000, 0x0020F080,
     0x00000000, 0x00000000, 0x00000000, 0x60000000,
     0x00000001, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x80000000, 0xE3030303, 0xC1FF8080,
     0x00001000, 0x48000080, 0xC000C000, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0xF8000000,
     0x00000078, 0x00700000, 0x00000000, 0x00000000,
-    0xF000F800, 0xFFFFFFFF, 0x0000FFFF, 0xC0000000,
+    0xF000E000, 0xFFFFFFFE, 0x0000FFFF, 0xC0000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xE0000000, 0x00000000, 0xFFFE0000, 0xFFFFFFFF,
-    0x80000000, 0x0000FFF0, 0xFFFFF800, 0xFFFFFFFF,
+    0xE0000000, 0x00000000, 0xFFFE0000, 0xF0000000,
+    0x00000000, 0x0000FFF0, 0x0000F800, 0xF8000000,
     0x40000000, 0x00000000, 0xFFC000F0, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xC0000000, 0xFFFFFC00, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x0000FF00, 0x00000000, 0xFFFF7FF0,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFF800000, 0xFFC00000, 0xFFFFFF00,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000002C0, 0x6E400000, 0x00400000, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x000002C0, 0x6E400000, 0x00400000, 0x00000000,
+    0x80000000, 0xFFFF007F, 0xFFFFFFFF, 0xFFFFFFFF,
     0x70000000, 0x7C000000, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x3F000000, 0xFFFFFFFF, 0xFFFFFFFF,
     0x01100F90, 0x78F00000, 0xFE00FF00, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0xFFFFFFFF, 0x00000000, 0xFF800780,
     0x00000000, 0x01C00000, 0x00C00000, 0x00F80000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xE1FC0000, 0xFFFF01FF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0xFFFFFE00, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -970,19 +966,39 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00000000, 0x00000000, 0x0003C000, 0xFFFF0000,
+    0x00000000, 0x00000000, 0x0003C000, 0x7FFF0000,
     0x00000000, 0x00000000, 0x0000FFFC, 0xFC00FE00,
-    0x00000000, 0x00200000, 0xFFFFFFF0, 0xFFFFFFFF,
-    0x00000000, 0x00000000, 0xFC00FE00, 0xFFFFFFFF,
+    0x00000000, 0x00200000, 0x0000FFF0, 0xFF800000,
+    0x00000000, 0x00000000, 0xF800DE00, 0xFFE00001,
+    0x00040000, 0xC0000000, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0x0000FFFF, 0x00000000, 0xFC00F800,
+    0x00066011, 0x0C120200, 0x1F7FC660, 0xFFE0E030,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0xFC00FF00, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00C00000, 0xFFFFFC00, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0xFC00FFE0, 0xFFFFFFFF,
     0x00000000, 0xFF000000, 0xFFFFFC00, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0x00000000, 0x00000000, 0x7FF80000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0xFE000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0xFFFF8000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00000000, 0x00000000, 0x00000000, 0xFFF0FFF8,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFE000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0xFFE08000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -990,10 +1006,10 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00000000, 0xFE000000, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0xFE000000, 0x80000000, 0xFFFF3C00,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, 0xFFC0C000,
+    0x00000000, 0x00000000, 0x0400FFC0, 0x1F000004,
+    0xFFFF0000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x0000FFE0, 0x80000000,
@@ -1002,6 +1018,10 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0xE000F800,
+    0x0C00FE00, 0xFFFFFFF0, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xFFC00000,
     0x00000000, 0x00000180, 0x00000000, 0x00000000,
@@ -1018,25 +1038,33 @@
     0x00000000, 0x000000C0, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00003000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFF800060, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000010, 0xF5080169, 0x5569157B, 0xA1080869,
     0xF0000400, 0xF0000411, 0xFFFFFFFF, 0xFFFCFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x0000F000, 0x00000000, 0x00000000,
-    0xFFF00000, 0x80018000, 0x00010001, 0xFFFFFFFF,
-    0x0000F800, 0x00008000, 0x00000000, 0x0000F000,
+    0xFFF00000, 0x00018000, 0x00010001, 0xFFC00000,
+    0x0000E000, 0x00008000, 0x00000000, 0x0000F000,
     0xF8000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F,
     0x0000FFF8, 0xF8000000, 0xFFFCFE00, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00000000, 0x0040FFFE, 0x00000000, 0xE0000000,
-    0xFFF00000, 0x00000000, 0xFFFFF820, 0xFFFE0000,
-    0x00000000, 0x80000000, 0x00000002, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0xE1000000,
-    0x00000000, 0xC0000000, 0x0000FFF0, 0xFFFFFF00,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF,
-    0x00000000, 0x00000000, 0xFFFF001E, 0xFFFFFFFF,
-    0x00000000, 0x00000000, 0xFFFFFFC0, 0xFFFFFFFF,
+    0x00000000, 0x0000E000, 0x00000000, 0xC0000000,
+    0x00000000, 0x00000000, 0x000F8000, 0xFF000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x80000000,
+    0x00000000, 0x00000000, 0x0000F800, 0x04000000,
+    0x00000000, 0x00000010, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000018, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFF0000, 0xFFF0E000,
     0x00000000, 0x00000000, 0x00000000, 0xFFF00000,
+    0x00000000, 0x00000000, 0xFFE00000, 0xFFFFFFFF,
+    0x0000F000, 0x00000000, 0xFC00FF00, 0x00000000,
+    0x0000FF00, 0xFFFFC000, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFF800000, 0xFFFFFFFF,
--- a/lib/unictype/categ_Co.h
+++ b/lib/unictype/categ_Co.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/categ_Cs.h
+++ b/lib/unictype/categ_Cs.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/categ_L.h
+++ b/lib/unictype/categ_L.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[3];
     short level2[3 << 7];
-    /*unsigned*/ int level3[51 << 4];
+    /*unsigned*/ int level3[58 << 4];
   }
 u_categ_L =
 {
@@ -153,21 +153,21 @@
         4 +   384 * sizeof (short) / sizeof (int) +   512,
         4 +   384 * sizeof (short) / sizeof (int) +   528,
         4 +   384 * sizeof (short) / sizeof (int) +   544,
-       -1,
         4 +   384 * sizeof (short) / sizeof (int) +   560,
         4 +   384 * sizeof (short) / sizeof (int) +   576,
         4 +   384 * sizeof (short) / sizeof (int) +   592,
-       -1,
         4 +   384 * sizeof (short) / sizeof (int) +   608,
        -1,
-       -1,
         4 +   384 * sizeof (short) / sizeof (int) +   624,
-       -1,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   640,
+        4 +   384 * sizeof (short) / sizeof (int) +   656,
+        4 +   384 * sizeof (short) / sizeof (int) +   672,
+        4 +   384 * sizeof (short) / sizeof (int) +   688,
+        4 +   384 * sizeof (short) / sizeof (int) +   704,
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   320,
-        4 +   384 * sizeof (short) / sizeof (int) +   640,
+        4 +   384 * sizeof (short) / sizeof (int) +   720,
        -1,
        -1,
        -1,
@@ -176,7 +176,7 @@
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   320,
         4 +   384 * sizeof (short) / sizeof (int) +   320,
-        4 +   384 * sizeof (short) / sizeof (int) +   656,
+        4 +   384 * sizeof (short) / sizeof (int) +   736,
        -1,
        -1,
        -1,
@@ -203,9 +203,9 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   320,
-        4 +   384 * sizeof (short) / sizeof (int) +   672,
+        4 +   384 * sizeof (short) / sizeof (int) +   752,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   688,
+        4 +   384 * sizeof (short) / sizeof (int) +   768,
        -1,
        -1,
        -1,
@@ -238,12 +238,14 @@
        -1,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   704,
+        4 +   384 * sizeof (short) / sizeof (int) +   784,
        -1,
        -1,
        -1,
        -1,
        -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   800,
+       -1,
        -1,
        -1,
        -1,
@@ -254,10 +256,8 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   720,
-        4 +   384 * sizeof (short) / sizeof (int) +   736,
+        4 +   384 * sizeof (short) / sizeof (int) +   816,
+        4 +   384 * sizeof (short) / sizeof (int) +   832,
        -1,
        -1,
        -1,
@@ -266,10 +266,10 @@
        -1,
        -1,
        -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   848,
        -1,
        -1,
-       -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   752,
+        4 +   384 * sizeof (short) / sizeof (int) +   864,
        -1,
        -1,
        -1,
@@ -361,7 +361,7 @@
         4 +   384 * sizeof (short) / sizeof (int) +   320,
         4 +   384 * sizeof (short) / sizeof (int) +   320,
         4 +   384 * sizeof (short) / sizeof (int) +   320,
-        4 +   384 * sizeof (short) / sizeof (int) +   768,
+        4 +   384 * sizeof (short) / sizeof (int) +   880,
         4 +   384 * sizeof (short) / sizeof (int) +   320,
         4 +   384 * sizeof (short) / sizeof (int) +   320,
         4 +   384 * sizeof (short) / sizeof (int) +   320,
@@ -369,8 +369,8 @@
         4 +   384 * sizeof (short) / sizeof (int) +   320,
         4 +   384 * sizeof (short) / sizeof (int) +   320,
         4 +   384 * sizeof (short) / sizeof (int) +   320,
-        4 +   384 * sizeof (short) / sizeof (int) +   784,
-        4 +   384 * sizeof (short) / sizeof (int) +   800,
+        4 +   384 * sizeof (short) / sizeof (int) +   896,
+        4 +   384 * sizeof (short) / sizeof (int) +   912,
        -1,
        -1,
        -1,
@@ -403,7 +403,7 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   320,
-        4 +   384 * sizeof (short) / sizeof (int) +   800,
+        4 +   384 * sizeof (short) / sizeof (int) +   912,
        -1,
        -1
   },
@@ -414,25 +414,25 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x0003FFC3, 0x0000501F,
-    0x00000000, 0x00000000, 0x00000000, 0x3CDF0000,
+    0x00000000, 0x00000000, 0x00000000, 0xBCDF0000,
     0xFFFFD740, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFBFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE00FF, 0x027FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFEFFFF, 0x027FFFFF, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0xFFFF0000, 0x000707FF,
     0x00000000, 0xFFFFFFFF, 0x000007FF, 0xFFFEC000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x002FFFFF, 0x9C00C060,
     0xFFFD0000, 0x0000FFFF, 0xFFFFE000, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0002003F, 0xFFFFFC00, 0x043007FF,
     0x043FFFFF, 0x00000110, 0x01FFFFFF, 0x00000000,
-    0x00000000, 0x00001FFD, 0x00000000, 0x00000000,
-    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFEFE0003,
-    0xFFF99FE0, 0x23C5FDFF, 0xB0004000, 0x00030003,
+    0x00000000, 0x0007FFFF, 0x00000000, 0x00000000,
+    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFFFE0003,
+    0xFFF99FE1, 0x23C5FDFF, 0xB0004000, 0x00030003,
     0xFFF987E0, 0x036DFDFF, 0x5E000000, 0x001C0000,
     0xFFFBBFE0, 0x23EDFDFF, 0x00010000, 0x00000003,
     0xFFF99FE0, 0x23EDFDFF, 0xB0000000, 0x00020003,
     0xD63DC7E8, 0x03FFC718, 0x00010000, 0x00000000,
-    0xFFFDDFE0, 0x23EFFDFF, 0x03000000, 0x00000003,
+    0xFFFDDFE0, 0x23FFFDFF, 0x03000000, 0x00000003,
     0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x00060003,
     0xFFFDDFE0, 0x27FFFFFF, 0x00004000, 0xFC000003,
     0xFC7FFFE0, 0x2FFBFFFF, 0x0000007F, 0x00000000,
@@ -453,12 +453,12 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF9FFF,
-    0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x000007FF,
+    0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x01FE07FF,
     0x0003DFFF, 0x0003FFFF, 0x0003FFFF, 0x0001DFFF,
     0xFFFFFFFF, 0x000FFFFF, 0x10800000, 0x00000000,
     0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFF05FF, 0xFFFFFFFF, 0x003FFFFF,
-    0x1FFFFFFF, 0x00000000, 0xFFFF0000, 0x001F3FFF,
+    0x7FFFFFFF, 0x00000000, 0xFFFF0000, 0x001F3FFF,
     0xFFFFFFFF, 0x00000FFF, 0x000000FE, 0x00000000,
     0x007FFFFF, 0xFFFFFFFF, 0x001FFFFF, 0x00000000,
     0x00000000, 0x00000080, 0x00000000, 0x00000000,
@@ -505,16 +505,16 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFF1FFF, 0x00000C00, 0xFFFFFFFF, 0x80007FFF,
-    0x00FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F,
+    0x3FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F,
     0xFF800000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000F79FF, 0x000007FF, 0x00000000, 0xFF000000,
+    0xFFFF79FF, 0x00033FFF, 0x00000000, 0xFF800000,
     0xFFFFF7BB, 0x00000007, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFC, 0x000FFFFF, 0x00000000, 0x08FC0000,
     0xFFFFFC00, 0xFFFF003F, 0x0000007F, 0x1FFFFFFF,
-    0xFFFFFFF0, 0x0007FFFF, 0x00008000, 0x00000000,
-    0xFFFFFFFF, 0x000001FF, 0x00000FF7, 0x047FFFFF,
+    0xFFFFFFF0, 0x0007FFFF, 0x00008000, 0x7C00FFDF,
+    0xFFFFFFFF, 0x000001FF, 0x00000FF7, 0xC47FFFFF,
     0xFFFFFFFF, 0x3E62FFFF, 0x38000005, 0x001C07FF,
-    0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
+    0x007E7E7E, 0xFFFF7F7F, 0xF7FFFFFF, 0x00000030,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000007,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -542,44 +542,64 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x1FFFFFFF, 0xFFFFFFFF, 0x0001FFFF, 0x00000000,
-    0x7FFFFFFF, 0xFFFF0000, 0x000003FD, 0x00000000,
+    0xFFFFFFFF, 0xFFFF0000, 0xFFFF03FD, 0x003FFFFF,
     0x3FFFFFFF, 0xFFFFFFFF, 0x0000FF0F, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFF00FF, 0xFFFFFFFF, 0x0000000F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFD3F, 0x91BFFFFF, 0x003FFFFF, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0x007FFFFF, 0x003FFFFF, 0x000000FF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFD3F, 0x91BFFFFF, 0x003FFFFF, 0x007FFFFF,
+    0x7FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x003FFFFF, 0x03FFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xC0FFFFFF, 0x00000000, 0x00000000,
     0xFEEF0001, 0x000FFFFF, 0x00000000, 0x1FFFFFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x1FFFFFFF, 0x00000000, 0xFFFFFEFF, 0x0000001F,
     0xFFFFFFFF, 0x003FFFFF, 0x003FFFFF, 0x0007FFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x0003FFFF, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x000001FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFF8, 0x00FFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFF8, 0x0000FFFF, 0xFFFF0000, 0x000001FF,
-    0xFFFFFFF8, 0x0000007F, 0x00000000, 0x00000000,
-    0xFFFFFFF8, 0x0007FFFF, 0x0000001E, 0x00000000,
+    0xFFFFFFF8, 0x0000007F, 0xFFFF0000, 0x0047FFFF,
+    0xFFFFFFF8, 0x0007FFFF, 0x0400001E, 0x00000000,
+    0xFFFBFFFF, 0x00000FFF, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0x7FFFFFFF, 0x00000000,
+    0xFFF99FE0, 0x23EDFDFF, 0xE0000000, 0x00000003,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x0000FFFF, 0x000000B0, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x00007FFF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x0000FFFF, 0x00000010, 0x00000000,
     0xFFFFFFFF, 0x000007FF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x80000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0x01FFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x01FFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0x00007FFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0x01FFFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x01FFFFFF, 0x7FFFFFFF, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFF0000, 0x00003FFF,
+    0xFFFFFFFF, 0x0000FFFF, 0x0000000F, 0xE0FFFFF8,
+    0x0000FFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x0001001F, 0x00000000,
@@ -588,6 +608,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFF07FF,
+    0x03FF01FF, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF,
     0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF,
     0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF,
@@ -596,6 +620,10 @@
     0xFFFFFFFF, 0xFFFFFF3F, 0xF7FFFFFD, 0xF7FFFFFF,
     0xFFDFFFFF, 0xFFDFFFFF, 0xFFFF7FFF, 0xFFFF7FFF,
     0xFFFFFDFF, 0xFFFFFDFF, 0x00000FF7, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000001F, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFEF, 0x0AF7FE96, 0xAA96EA84, 0x5EF7F796,
     0x0FFFFBFF, 0x0FFFFBEE, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/categ_LC.h
+++ b/lib/unictype/categ_LC.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[14 << 4];
+    /*unsigned*/ int level3[16 << 4];
   }
 u_categ_LC =
 {
@@ -106,6 +106,7 @@
        -1,
         3 +   256 * sizeof (short) / sizeof (int) +   128,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   144,
        -1,
        -1,
        -1,
@@ -145,13 +146,22 @@
        -1,
        -1,
        -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   144,
-       -1,
         3 +   256 * sizeof (short) / sizeof (int) +   160,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   176,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   176,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   192,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   208,
        -1,
        -1,
        -1,
@@ -245,18 +255,8 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   192,
-        3 +   256 * sizeof (short) / sizeof (int) +   208,
+        3 +   256 * sizeof (short) / sizeof (int) +   224,
+        3 +   256 * sizeof (short) / sizeof (int) +   240,
        -1,
        -1,
        -1,
@@ -285,11 +285,11 @@
     0xFFFFFFFF, 0xF7FFFFFF, 0xFFFFFFF0, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFEFFFFF, 0x0000FFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x38CF0000,
+    0x00000000, 0x00000000, 0x00000000, 0xB8CF0000,
     0xFFFFD740, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFBFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE00FF, 0x007FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFEFFFF, 0x007FFFFF, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFFFFF, 0x000020BF, 0x00000000,
@@ -312,9 +312,13 @@
     0xFFFFFFFF, 0x000020BF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x00003FFF,
-    0x00FFFFFF, 0x00000000, 0x00000000, 0x00000000,
+    0x0FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFEFFFF,
-    0x000F78FF, 0x000007FF, 0x00000000, 0x04000000,
+    0xFFFF78FF, 0x00033FFF, 0x00000000, 0x04000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0x07FFFFFF, 0x00000030,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00F8007F, 0x00000000, 0x00000000, 0x00000000,
@@ -327,6 +331,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF,
     0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF,
     0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF,
--- a/lib/unictype/categ_Ll.h
+++ b/lib/unictype/categ_Ll.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[13 << 4];
+    /*unsigned*/ int level3[15 << 4];
   }
 u_categ_Ll =
 {
@@ -106,6 +106,7 @@
        -1,
         3 +   256 * sizeof (short) / sizeof (int) +   112,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   128,
        -1,
        -1,
        -1,
@@ -145,13 +146,22 @@
        -1,
        -1,
        -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   128,
-       -1,
         3 +   256 * sizeof (short) / sizeof (int) +   144,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   160,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   160,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   176,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   192,
        -1,
        -1,
        -1,
@@ -245,18 +255,8 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   176,
-        3 +   256 * sizeof (short) / sizeof (int) +   192,
+        3 +   256 * sizeof (short) / sizeof (int) +   208,
+        3 +   256 * sizeof (short) / sizeof (int) +   224,
        -1,
        -1,
        -1,
@@ -289,7 +289,7 @@
     0x00010000, 0xFFFFF000, 0xAAE37FFF, 0x192FAAAA,
     0x00000000, 0xFFFF0000, 0xFFFFFFFF, 0xAAAAAAAA,
     0xAAAAA802, 0xAAAAAAAA, 0xAAAAD554, 0xAAAAAAAA,
-    0xAAAAAAAA, 0x000000AA, 0x00000000, 0xFFFFFFFE,
+    0xAAAAAAAA, 0x0000AAAA, 0x00000000, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -308,9 +308,13 @@
     0xFFFFFFFF, 0x000020BF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xAAAAAAAA, 0x00002AAA,
-    0x00AAAAAA, 0x00000000, 0x00000000, 0x00000000,
+    0x0AAAAAAA, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xAAABAAA8, 0xAAAAAAAA, 0x95FEAAAA,
-    0x000A50AA, 0x000002AA, 0x00000000, 0x04000000,
+    0xAABA50AA, 0x000002AA, 0x00000000, 0x04000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0x07FFFFFF, 0x00000030,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00F8007F, 0x00000000, 0x00000000, 0x00000000,
@@ -323,6 +327,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFC000000, 0x000FFFFF, 0xFFDFC000, 0x000000FF,
     0x0FFFFFFC, 0xEBC00000, 0x0000FFEF, 0xFFFFFC00,
     0xC000000F, 0x00FFFFFF, 0xFFFC0000, 0x00000FFF,
--- a/lib/unictype/categ_Lm.h
+++ b/lib/unictype/categ_Lm.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[21 << 4];
+    /*unsigned*/ int level3[22 << 4];
   }
 u_categ_Lm =
 {
@@ -202,9 +202,9 @@
        -1,
        -1,
        -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   320,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   320,
+        3 +   256 * sizeof (short) / sizeof (int) +   336,
        -1,
        -1,
        -1,
@@ -344,16 +344,16 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00001000, 0x00000000, 0x00000000, 0x80000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x30000000, 0x00000000, 0x00000000, 0x00000000,
     0xFF800000, 0x00000000, 0x00000000, 0x00010000,
     0x00000100, 0x00000000, 0x00000000, 0x03000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00008000, 0x00000000,
+    0x00000000, 0x00000000, 0x00008000, 0x00000040,
     0x00000000, 0x00000000, 0x00000000, 0x00010000,
     0x00000000, 0x00000000, 0x20000000, 0x00180000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xF0000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -361,6 +361,10 @@
     0xC0000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x0000000F, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFF80000, 0x00000000, 0x00000000, 0x00000000
   }
--- a/lib/unictype/categ_Lo.h
+++ b/lib/unictype/categ_Lo.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[3];
     short level2[3 << 7];
-    /*unsigned*/ int level3[48 << 4];
+    /*unsigned*/ int level3[55 << 4];
   }
 u_categ_Lo =
 {
@@ -153,21 +153,21 @@
         4 +   384 * sizeof (short) / sizeof (int) +   496,
         4 +   384 * sizeof (short) / sizeof (int) +   512,
         4 +   384 * sizeof (short) / sizeof (int) +   528,
-       -1,
         4 +   384 * sizeof (short) / sizeof (int) +   544,
         4 +   384 * sizeof (short) / sizeof (int) +   560,
         4 +   384 * sizeof (short) / sizeof (int) +   576,
-       -1,
         4 +   384 * sizeof (short) / sizeof (int) +   592,
        -1,
-       -1,
         4 +   384 * sizeof (short) / sizeof (int) +   608,
-       -1,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   624,
+        4 +   384 * sizeof (short) / sizeof (int) +   640,
+        4 +   384 * sizeof (short) / sizeof (int) +   656,
+        4 +   384 * sizeof (short) / sizeof (int) +   672,
+        4 +   384 * sizeof (short) / sizeof (int) +   688,
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   288,
-        4 +   384 * sizeof (short) / sizeof (int) +   624,
+        4 +   384 * sizeof (short) / sizeof (int) +   704,
        -1,
        -1,
        -1,
@@ -176,7 +176,7 @@
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   288,
         4 +   384 * sizeof (short) / sizeof (int) +   288,
-        4 +   384 * sizeof (short) / sizeof (int) +   640,
+        4 +   384 * sizeof (short) / sizeof (int) +   720,
        -1,
        -1,
        -1,
@@ -203,9 +203,9 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   288,
-        4 +   384 * sizeof (short) / sizeof (int) +   656,
+        4 +   384 * sizeof (short) / sizeof (int) +   736,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   672,
+        4 +   384 * sizeof (short) / sizeof (int) +   752,
        -1,
        -1,
        -1,
@@ -238,7 +238,13 @@
        -1,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   688,
+        4 +   384 * sizeof (short) / sizeof (int) +   768,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   784,
        -1,
        -1,
        -1,
@@ -260,16 +266,10 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   800,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   704,
+        4 +   384 * sizeof (short) / sizeof (int) +   816,
        -1,
        -1,
        -1,
@@ -361,7 +361,7 @@
         4 +   384 * sizeof (short) / sizeof (int) +   288,
         4 +   384 * sizeof (short) / sizeof (int) +   288,
         4 +   384 * sizeof (short) / sizeof (int) +   288,
-        4 +   384 * sizeof (short) / sizeof (int) +   720,
+        4 +   384 * sizeof (short) / sizeof (int) +   832,
         4 +   384 * sizeof (short) / sizeof (int) +   288,
         4 +   384 * sizeof (short) / sizeof (int) +   288,
         4 +   384 * sizeof (short) / sizeof (int) +   288,
@@ -369,8 +369,8 @@
         4 +   384 * sizeof (short) / sizeof (int) +   288,
         4 +   384 * sizeof (short) / sizeof (int) +   288,
         4 +   384 * sizeof (short) / sizeof (int) +   288,
-        4 +   384 * sizeof (short) / sizeof (int) +   736,
-        4 +   384 * sizeof (short) / sizeof (int) +   752,
+        4 +   384 * sizeof (short) / sizeof (int) +   848,
+        4 +   384 * sizeof (short) / sizeof (int) +   864,
        -1,
        -1,
        -1,
@@ -403,7 +403,7 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   288,
-        4 +   384 * sizeof (short) / sizeof (int) +   752,
+        4 +   384 * sizeof (short) / sizeof (int) +   864,
        -1,
        -1
   },
@@ -425,14 +425,14 @@
     0xFFFD0000, 0x0000FFFF, 0xFFFFE000, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0002003F, 0xFFFFFC00, 0x000007FF,
     0x003FFFFF, 0x00000000, 0x01FFFFFF, 0x00000000,
-    0x00000000, 0x00001FFD, 0x00000000, 0x00000000,
-    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFEFC0003,
-    0xFFF99FE0, 0x23C5FDFF, 0xB0004000, 0x00030003,
+    0x00000000, 0x0007FFFF, 0x00000000, 0x00000000,
+    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFFFC0003,
+    0xFFF99FE1, 0x23C5FDFF, 0xB0004000, 0x00030003,
     0xFFF987E0, 0x036DFDFF, 0x5E000000, 0x001C0000,
     0xFFFBBFE0, 0x23EDFDFF, 0x00010000, 0x00000003,
     0xFFF99FE0, 0x23EDFDFF, 0xB0000000, 0x00020003,
     0xD63DC7E8, 0x03FFC718, 0x00010000, 0x00000000,
-    0xFFFDDFE0, 0x23EFFDFF, 0x03000000, 0x00000003,
+    0xFFFDDFE0, 0x23FFFDFF, 0x03000000, 0x00000003,
     0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x00060003,
     0xFFFDDFE0, 0x27FFFFFF, 0x00004000, 0xFC000003,
     0xFC7FFFE0, 0x2FFBFFFF, 0x0000007F, 0x00000000,
@@ -453,12 +453,12 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF9FFF,
-    0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x000007FF,
+    0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x01FE07FF,
     0x0003DFFF, 0x0003FFFF, 0x0003FFFF, 0x0001DFFF,
     0xFFFFFFFF, 0x000FFFFF, 0x10000000, 0x00000000,
     0x00000000, 0xFFFFFFFF, 0xFFFFFFF7, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFF05FF, 0xFFFFFFFF, 0x003FFFFF,
-    0x1FFFFFFF, 0x00000000, 0xFFFF0000, 0x001F3FFF,
+    0x7FFFFFFF, 0x00000000, 0xFFFF0000, 0x001F3FFF,
     0xFFFFFFFF, 0x00000FFF, 0x000000FE, 0x00000000,
     0x007FFFFF, 0xFFFFFFFF, 0x001FFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -503,12 +503,12 @@
     0xFFFF0FFF, 0x00000C00, 0x00000000, 0x00004000,
     0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0xF8000000,
+    0x00000000, 0x00000000, 0x00000000, 0xF8800000,
     0xFFFFF7BB, 0x00000007, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFC, 0x000FFFFF, 0x00000000, 0x08FC0000,
     0xFFFFFC00, 0xFFFF003F, 0x0000007F, 0x1FFFFFFF,
-    0xFFFFFFF0, 0x0007FFFF, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0x000001FF, 0x00000FF7, 0x047EFFFF,
+    0xFFFFFFF0, 0x0007FFFF, 0x00000000, 0x7C00FF9F,
+    0xFFFFFFFF, 0x000001FF, 0x00000FF7, 0xC47EFFFF,
     0xFFFFFFFF, 0x3E62FFFF, 0x18000005, 0x000407FF,
     0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000007,
@@ -538,44 +538,64 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x1FFFFFFF, 0xFFFFFFFF, 0x0001FFFF, 0x00000000,
-    0x7FFFFFFF, 0xFFFF0000, 0x000003FD, 0x00000000,
+    0xFFFFFFFF, 0xFFFF0000, 0xFFFF03FD, 0x003FFFFF,
     0x3FFFFFFF, 0xFFFFFFFF, 0x0000FF0F, 0x00000000,
     0x00000000, 0x00000000, 0xFFFF0000, 0xFFFFFFFF,
     0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFF00FF, 0xFFFFFFFF, 0x0000000F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFD3F, 0x91BFFFFF, 0x003FFFFF, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0x007FFFFF, 0x003FFFFF, 0x000000FF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFD3F, 0x91BFFFFF, 0x003FFFFF, 0x007FFFFF,
+    0x7FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x003FFFFF, 0x03FFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xC0FFFFFF, 0x00000000, 0x00000000,
     0xFEEF0001, 0x000FFFFF, 0x00000000, 0x1FFFFFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x1FFFFFFF, 0x00000000, 0xFFFFFEFF, 0x0000001F,
     0xFFFFFFFF, 0x003FFFFF, 0x003FFFFF, 0x0007FFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x0003FFFF, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x000001FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFF8, 0x00FFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFF8, 0x0000FFFF, 0xFFFF0000, 0x000001FF,
-    0xFFFFFFF8, 0x0000007F, 0x00000000, 0x00000000,
-    0xFFFFFFF8, 0x0007FFFF, 0x0000001E, 0x00000000,
+    0xFFFFFFF8, 0x0000007F, 0xFFFF0000, 0x0047FFFF,
+    0xFFFFFFF8, 0x0007FFFF, 0x0400001E, 0x00000000,
+    0xFFFBFFFF, 0x00000FFF, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0x7FFFFFFF, 0x00000000,
+    0xFFF99FE0, 0x23EDFDFF, 0xE0000000, 0x00000003,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x0000FFFF, 0x000000B0, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x00007FFF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x0000FFFF, 0x00000010, 0x00000000,
     0xFFFFFFFF, 0x000007FF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x80000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0x01FFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x01FFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0x00007FFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0x01FFFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x01FFFFFF, 0x7FFFFFFF, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFF0000, 0x00003FFF,
+    0xFFFFFFFF, 0x0000FFFF, 0x00000000, 0xE0FFFFF8,
+    0x0000FFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x0001001F, 0x00000000,
@@ -584,6 +604,14 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFF07FF,
+    0x03FF01FF, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000001F, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFEF, 0x0AF7FE96, 0xAA96EA84, 0x5EF7F796,
     0x0FFFFBFF, 0x0FFFFBEE, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/categ_Lt.h
+++ b/lib/unictype/categ_Lt.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/categ_Lu.h
+++ b/lib/unictype/categ_Lu.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[12 << 4];
+    /*unsigned*/ int level3[13 << 4];
   }
 u_categ_Lu =
 {
@@ -161,6 +161,7 @@
        -1,
        -1,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   160,
        -1,
        -1,
        -1,
@@ -254,9 +255,8 @@
        -1,
        -1,
        -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   160,
         3 +   256 * sizeof (short) / sizeof (int) +   176,
+        3 +   256 * sizeof (short) / sizeof (int) +   192,
        -1,
        -1,
        -1,
@@ -285,11 +285,11 @@
     0xB1DBCED6, 0x11AED2D5, 0x4AAAA490, 0x55D25555,
     0x55555555, 0x6C055555, 0x0000557A, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00450000,
+    0x00000000, 0x00000000, 0x00000000, 0x80450000,
     0xFFFED740, 0x00000FFB, 0x551C8000, 0xE6905555,
     0xFFFFFFFF, 0x0000FFFF, 0x00000000, 0x55555555,
     0x55555401, 0x55555555, 0x55552AAB, 0x55555555,
-    0x55555555, 0xFFFE0055, 0x007FFFFF, 0x00000000,
+    0x55555555, 0xFFFE5555, 0x007FFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFFFFF, 0x000020BF, 0x00000000,
@@ -308,9 +308,9 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x55555555, 0x00001555,
-    0x00555555, 0x00000000, 0x00000000, 0x00000000,
+    0x05555555, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x55545554, 0x55555555, 0x6A005555,
-    0x00052855, 0x00000555, 0x00000000, 0x00000000,
+    0x55452855, 0x00033D55, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x07FFFFFE, 0x00000000, 0x00000000,
@@ -319,6 +319,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x03FFFFFF, 0xFFF00000, 0x00003FFF, 0xFFFFFF00,
     0xD0000003, 0x003FDE64, 0xFFFF0000, 0x000003FF,
     0x1FDFE7B0, 0x7B000000, 0x0001FC5F, 0xFFFFF000,
--- a/lib/unictype/categ_M.h
+++ b/lib/unictype/categ_M.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[15];
     short level2[3 << 7];
-    /*unsigned*/ int level3[29 << 4];
+    /*unsigned*/ int level3[35 << 4];
   }
 u_categ_M =
 {
@@ -163,19 +163,17 @@
        -1,
        16 +   384 * sizeof (short) / sizeof (int) +   320,
        16 +   384 * sizeof (short) / sizeof (int) +   336,
-       -1,
-       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   352,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   352,
-       -1,
        -1,
        16 +   384 * sizeof (short) / sizeof (int) +   368,
        -1,
        -1,
        16 +   384 * sizeof (short) / sizeof (int) +   384,
-       -1,
-       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   400,
+       16 +   384 * sizeof (short) / sizeof (int) +   416,
+       16 +   384 * sizeof (short) / sizeof (int) +   432,
        -1,
        -1,
        -1,
@@ -217,7 +215,9 @@
        -1,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   400,
+       16 +   384 * sizeof (short) / sizeof (int) +   448,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   464,
        -1,
        -1,
        -1,
@@ -256,6 +256,18 @@
        -1,
        -1,
        -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   480,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   496,
+       16 +   384 * sizeof (short) / sizeof (int) +   512,
        -1,
        -1,
        -1,
@@ -266,8 +278,7 @@
        -1,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   416,
-       16 +   384 * sizeof (short) / sizeof (int) +   432,
+       16 +   384 * sizeof (short) / sizeof (int) +   528,
        -1,
        -1,
        -1,
@@ -279,18 +290,7 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   448,
+       16 +   384 * sizeof (short) / sizeof (int) +   544,
        -1,
        -1,
        -1,
@@ -433,16 +433,16 @@
     0x00020000, 0xFFFF0000, 0x000007FF, 0x00000000,
     0x00000000, 0x0001FFC0, 0x00000000, 0x000FF800,
     0xFBC00000, 0x00003EEF, 0x0E000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x7FFFFFF0,
+    0x00000000, 0x00000000, 0x00000000, 0xFFFFFFF0,
     0x0000000F, 0xDC000000, 0x00FEFFFF, 0x0000000C,
     0x0000000E, 0xD0000000, 0x0080399F, 0x0000000C,
     0x0000000E, 0xD0000000, 0x00023987, 0x00230000,
     0x0000000E, 0xD0000000, 0x00003BBF, 0x0000000C,
     0x0000000E, 0xD0000000, 0x00C0399F, 0x0000000C,
     0x00000004, 0xC0000000, 0x00803DC7, 0x00000000,
-    0x0000000E, 0xC0000000, 0x00603DDF, 0x0000000C,
-    0x0000000C, 0xD0000000, 0x00603DDF, 0x0000000C,
-    0x0000000C, 0xC0000000, 0x00803DDF, 0x0000000C,
+    0x0000000F, 0xC0000000, 0x00603DDF, 0x0000000C,
+    0x0000000E, 0xD0000000, 0x00603DDF, 0x0000000C,
+    0x0000000E, 0xC0000000, 0x00803DDF, 0x0000000C,
     0x0000000C, 0x00000000, 0xFF5F8400, 0x000C0000,
     0x00000000, 0x07F20000, 0x00007F80, 0x00000000,
     0x00000000, 0x1BF20000, 0x00003F00, 0x00000000,
@@ -465,13 +465,13 @@
     0x00000000, 0x0FFF0FFF, 0x00000000, 0x00000000,
     0x00000000, 0xFFFF0000, 0x00000301, 0x00000000,
     0x0F800000, 0x00000000, 0x7FE00000, 0x9FFFFFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x7FFF0000, 0x00000000, 0x00000000,
     0x0000001F, 0xFFF00000, 0x0000001F, 0x000FF800,
     0x00000007, 0x00003FFE, 0x00000000, 0x000FFFC0,
     0x00000000, 0x00FFFFF0, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFF70000, 0x001C21FF,
+    0x00000000, 0x00000000, 0xFFF70000, 0x031C21FF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFFFFFFF, 0xF000007F,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0xF03FFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFF0000, 0x0001FFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -491,8 +491,8 @@
     0x00000844, 0x000000F8, 0x00000000, 0x00000000,
     0x00000003, 0xFFF00000, 0x0000001F, 0x0003FFFF,
     0x00000000, 0x00003FC0, 0x000FFF80, 0x00000000,
-    0x0000000F, 0xFFF80000, 0x00000001, 0x00000000,
-    0x00000000, 0x007FFE00, 0x00003008, 0x08000000,
+    0x0000000F, 0xFFF80000, 0x00000001, 0x00000020,
+    0x00000000, 0x007FFE00, 0x00003008, 0x38000000,
     0x00000000, 0xC19D0000, 0x00000002, 0x0060F800,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x000037F8,
@@ -500,7 +500,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x40000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x0000FFFF, 0x0000007F, 0x00000000, 0x00000000,
+    0x0000FFFF, 0x00003FFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -508,23 +508,43 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x20000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000001,
+    0x00000000, 0x00000000, 0x00000000, 0x07C00000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x0000F06E, 0x87000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000060,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000007, 0xFF000000, 0x0000007F, 0x80000000,
+    0x00000007, 0x07FF0000, 0x00000000, 0x00000000,
+    0x00000007, 0x001FFF80, 0x00000000, 0x00080000,
+    0x00000007, 0xFFF80000, 0x00000001, 0x00000000,
+    0x00000000, 0x00FFF000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x80000000, 0x000007FF,
+    0x0000000E, 0xD0000000, 0x0080399F, 0x001F1FCC,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0x0000000F, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFF3F8000, 0x00000001, 0x00000000,
+    0x00000000, 0xFFFF0000, 0x00000001, 0x00000000,
+    0x00000000, 0x00FFF800, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000007, 0xFF000000, 0x0000007F, 0x00000000,
-    0x00000007, 0x07FF0000, 0x00000000, 0x00000000,
-    0x00000007, 0x001FFF80, 0x00000000, 0x00000000,
-    0x00000007, 0xFFF80000, 0x00000001, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00FFF800, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x001F0000,
+    0x00000000, 0x007F0000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFE0000, 0x7FFFFFFF,
     0x00078000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x60000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xF807E3E0,
     0x00000FE7, 0x00003C00, 0x00000000, 0x00000000,
@@ -533,6 +553,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x007F0000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF
--- a/lib/unictype/categ_Mc.h
+++ b/lib/unictype/categ_Mc.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[16 << 4];
+    /*unsigned*/ int level3[18 << 4];
   }
 u_categ_Mc =
 {
@@ -158,9 +158,9 @@
        -1,
        -1,
         3 +   256 * sizeof (short) / sizeof (int) +   192,
-       -1,
-       -1,
         3 +   256 * sizeof (short) / sizeof (int) +   208,
+        3 +   256 * sizeof (short) / sizeof (int) +   224,
+        3 +   256 * sizeof (short) / sizeof (int) +   240,
        -1,
        -1,
        -1,
@@ -204,7 +204,7 @@
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   224,
+        3 +   256 * sizeof (short) / sizeof (int) +   256,
        -1,
        -1,
        -1,
@@ -253,7 +253,7 @@
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   240,
+        3 +   256 * sizeof (short) / sizeof (int) +   272,
        -1,
        -1,
        -1,
@@ -310,7 +310,7 @@
     0x06000000, 0x00000000, 0x00A00000, 0x0007E01A,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000010, 0xE8200000, 0x0000001B, 0x00000000,
-    0x00000004, 0x000034C2, 0x00000000, 0x000C5C80,
+    0x00000004, 0x000004C2, 0x00000000, 0x000C5C80,
     0x00000000, 0x00300FF0, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x000C0002,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -323,7 +323,7 @@
     0x00000003, 0xFFF00000, 0x0000000F, 0x00000000,
     0x00000000, 0x00000000, 0x000C0000, 0x00000000,
     0x00000008, 0xEC300000, 0x00000001, 0x00000000,
-    0x00000000, 0x00198000, 0x00002000, 0x08000000,
+    0x00000000, 0x00198000, 0x00002000, 0x28000000,
     0x00000000, 0x00000000, 0x00000000, 0x0020C800,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x000016D8,
@@ -331,7 +331,15 @@
     0x00000004, 0x01870000, 0x00000000, 0x00000000,
     0x00000000, 0x00001000, 0x00000000, 0x00000000,
     0x00000004, 0x80380000, 0x00000001, 0x00000000,
+    0x00000000, 0x002C7000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000007,
+    0x0000000C, 0xC0000000, 0x0080399E, 0x0000000C,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x7A070000, 0x00000002, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x4F038000, 0x00000000, 0x00000000,
+    0x00000000, 0x58070000, 0x00000000, 0x00000000,
     0x00000000, 0x0040D000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/categ_Me.h
+++ b/lib/unictype/categ_Me.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[1];
     short level2[1 << 7];
-    /*unsigned*/ int level3[3 << 4];
+    /*unsigned*/ int level3[4 << 4];
   }
 u_categ_Me =
 {
@@ -31,10 +31,10 @@
        -1,
        -1,
        -1,
+        2 +   128 * sizeof (short) / sizeof (int) +    16,
        -1,
        -1,
-       -1,
-        2 +   128 * sizeof (short) / sizeof (int) +    16,
+        2 +   128 * sizeof (short) / sizeof (int) +    32,
        -1,
        -1,
        -1,
@@ -101,7 +101,7 @@
        -1,
        -1,
        -1,
-        2 +   128 * sizeof (short) / sizeof (int) +    32,
+        2 +   128 * sizeof (short) / sizeof (int) +    48,
        -1,
        -1,
        -1,
@@ -153,6 +153,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x40000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xE0000000, 0x0000001D,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/categ_Mn.h
+++ b/lib/unictype/categ_Mn.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[15];
     short level2[3 << 7];
-    /*unsigned*/ int level3[29 << 4];
+    /*unsigned*/ int level3[35 << 4];
   }
 u_categ_Mn =
 {
@@ -163,19 +163,17 @@
        -1,
        16 +   384 * sizeof (short) / sizeof (int) +   320,
        16 +   384 * sizeof (short) / sizeof (int) +   336,
-       -1,
-       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   352,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   352,
-       -1,
        -1,
        16 +   384 * sizeof (short) / sizeof (int) +   368,
        -1,
        -1,
        16 +   384 * sizeof (short) / sizeof (int) +   384,
-       -1,
-       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   400,
+       16 +   384 * sizeof (short) / sizeof (int) +   416,
+       16 +   384 * sizeof (short) / sizeof (int) +   432,
        -1,
        -1,
        -1,
@@ -217,7 +215,9 @@
        -1,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   400,
+       16 +   384 * sizeof (short) / sizeof (int) +   448,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   464,
        -1,
        -1,
        -1,
@@ -256,6 +256,18 @@
        -1,
        -1,
        -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   480,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   496,
+       16 +   384 * sizeof (short) / sizeof (int) +   512,
        -1,
        -1,
        -1,
@@ -266,8 +278,7 @@
        -1,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   416,
-       16 +   384 * sizeof (short) / sizeof (int) +   432,
+       16 +   384 * sizeof (short) / sizeof (int) +   528,
        -1,
        -1,
        -1,
@@ -279,18 +290,7 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   448,
+       16 +   384 * sizeof (short) / sizeof (int) +   544,
        -1,
        -1,
        -1,
@@ -433,16 +433,16 @@
     0x00020000, 0xFFFF0000, 0x000007FF, 0x00000000,
     0x00000000, 0x0001FFC0, 0x00000000, 0x000FF800,
     0xFBC00000, 0x00003EEF, 0x0E000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x7FFFFFF0,
+    0x00000000, 0x00000000, 0x00000000, 0xFFFFFFF0,
     0x00000007, 0x14000000, 0x00FE21FE, 0x0000000C,
     0x00000002, 0x10000000, 0x0000201E, 0x0000000C,
     0x00000006, 0x10000000, 0x00023986, 0x00230000,
     0x00000006, 0x10000000, 0x000021BE, 0x0000000C,
     0x00000002, 0x90000000, 0x0040201E, 0x0000000C,
     0x00000004, 0x00000000, 0x00002001, 0x00000000,
-    0x00000000, 0xC0000000, 0x00603DC1, 0x0000000C,
-    0x00000000, 0x90000000, 0x00003040, 0x0000000C,
-    0x00000000, 0x00000000, 0x0000201E, 0x0000000C,
+    0x00000001, 0xC0000000, 0x00603DC1, 0x0000000C,
+    0x00000002, 0x90000000, 0x00003040, 0x0000000C,
+    0x00000002, 0x00000000, 0x0000201E, 0x0000000C,
     0x00000000, 0x00000000, 0x005C0400, 0x00000000,
     0x00000000, 0x07F20000, 0x00007F80, 0x00000000,
     0x00000000, 0x1BF20000, 0x00003F00, 0x00000000,
@@ -465,13 +465,13 @@
     0x00000000, 0x0E040187, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x09800000, 0x00000000, 0x7F400000, 0x9FF81FE5,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x3FFF0000, 0x00000000, 0x00000000,
     0x0000000F, 0x17D00000, 0x00000004, 0x000FF800,
-    0x00000003, 0x00000B3C, 0x00000000, 0x0003A340,
+    0x00000003, 0x00003B3C, 0x00000000, 0x0003A340,
     0x00000000, 0x00CFF000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFF70000, 0x001021FD,
+    0x00000000, 0x00000000, 0xFFF70000, 0x031021FD,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFFFFFFF, 0xF000007F,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0xF03FFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x1FFF0000, 0x0001FFE2,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -491,8 +491,8 @@
     0x00000844, 0x00000060, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000010, 0x0003FFFF,
     0x00000000, 0x00003FC0, 0x0003FF80, 0x00000000,
-    0x00000007, 0x13C80000, 0x00000000, 0x00000000,
-    0x00000000, 0x00667E00, 0x00001008, 0x00000000,
+    0x00000007, 0x13C80000, 0x00000000, 0x00000020,
+    0x00000000, 0x00667E00, 0x00001008, 0x10000000,
     0x00000000, 0xC19D0000, 0x00000002, 0x00403000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00002120,
@@ -500,7 +500,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x40000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x0000FFFF, 0x0000007F, 0x00000000, 0x00000000,
+    0x0000FFFF, 0x00003FFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -508,23 +508,43 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x20000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000001,
+    0x00000000, 0x00000000, 0x00000000, 0x07C00000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x0000F06E, 0x87000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000060,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000002, 0xFF000000, 0x0000007F, 0x80000000,
+    0x00000003, 0x06780000, 0x00000000, 0x00000000,
+    0x00000007, 0x001FEF80, 0x00000000, 0x00080000,
+    0x00000003, 0x7FC00000, 0x00000000, 0x00000000,
+    0x00000000, 0x00D38000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x80000000, 0x000007F8,
+    0x00000002, 0x10000000, 0x00000001, 0x001F1FC0,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x85F80000, 0x0000000D, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xB03C0000, 0x00000001, 0x00000000,
+    0x00000000, 0xA7F80000, 0x00000001, 0x00000000,
+    0x00000000, 0x00BF2800, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000002, 0xFF000000, 0x0000007F, 0x00000000,
-    0x00000003, 0x06780000, 0x00000000, 0x00000000,
-    0x00000007, 0x001FEF80, 0x00000000, 0x00000000,
-    0x00000003, 0x7FC00000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00BF2800, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x001F0000,
+    0x00000000, 0x007F0000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00078000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x60000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xF8000380,
     0x00000FE7, 0x00003C00, 0x00000000, 0x00000000,
@@ -533,6 +553,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x007F0000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF
--- a/lib/unictype/categ_N.h
+++ b/lib/unictype/categ_N.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[34 << 4];
+    /*unsigned*/ int level3[39 << 4];
   }
 u_categ_N =
 {
@@ -158,16 +158,19 @@
        -1,
         3 +   256 * sizeof (short) / sizeof (int) +   432,
         3 +   256 * sizeof (short) / sizeof (int) +   448,
-       -1,
-       -1,
         3 +   256 * sizeof (short) / sizeof (int) +   464,
+        3 +   256 * sizeof (short) / sizeof (int) +   480,
+        3 +   256 * sizeof (short) / sizeof (int) +   496,
+        3 +   256 * sizeof (short) / sizeof (int) +   512,
        -1,
        -1,
        -1,
        -1,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   528,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   480,
+       -1,
+       -1,
        -1,
        -1,
        -1,
@@ -199,6 +202,28 @@
        -1,
        -1,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   544,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
        -1,
        -1,
        -1,
@@ -229,19 +254,9 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   560,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   576,
        -1,
        -1,
        -1,
@@ -250,26 +265,11 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   496,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   512,
+        3 +   256 * sizeof (short) / sizeof (int) +   592,
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   528,
+        3 +   256 * sizeof (short) / sizeof (int) +   608,
        -1,
        -1,
        -1,
@@ -298,7 +298,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x7F00FFC0,
     0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
     0x00000000, 0x00000000, 0x00000000, 0x003FFFC0,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
     0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x00000000, 0x000FFFFF, 0x00000000, 0x00000000,
@@ -358,7 +358,7 @@
     0x00000000, 0x003F0000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x000003FF, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
+    0x00000000, 0x00000000, 0x03FF0000, 0x03FF0000,
     0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -370,23 +370,23 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFF80, 0x000FFFFF, 0xFFFFFFFF, 0x01FFFFFF,
-    0x00000400, 0x00000000, 0x00000000, 0x00000000,
+    0x00000C00, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x0FFFFFFE,
     0x00000000, 0x0000000F, 0x00000402, 0x00000000,
     0x00000000, 0x00000000, 0x003E0000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x000003FF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFF000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFF000000, 0xFE000000,
+    0x00000000, 0x0000FF80, 0x00000000, 0x00000000,
     0x0FC00000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x000000FF, 0x60000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xE0000000, 0x00000000, 0x00000000, 0x0000F800,
     0x00000000, 0x00000000, 0xFF000000, 0xFF000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x0000FE00, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x7FFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -394,14 +394,30 @@
     0x00000000, 0x00000000, 0xFFFC0000, 0x0000FFFF,
     0x00000000, 0x00000000, 0x00000000, 0x03FF0000,
     0x00000000, 0xFFC00000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x03FF0000, 0x001FFFFE,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x03FF0000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x00000000, 0x00000000, 0x000003FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000007,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x0007FFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x000003FF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFBFF0000, 0x00000003,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -412,8 +428,12 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFC000, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x0000FF80, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x000007FF, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00001FFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/categ_Nd.h
+++ b/lib/unictype/categ_Nd.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[19 << 4];
+    /*unsigned*/ int level3[22 << 4];
   }
 u_categ_Nd =
 {
@@ -27,15 +27,15 @@
         3 +   256 * sizeof (short) / sizeof (int) +    16,
         3 +   256 * sizeof (short) / sizeof (int) +    32,
         3 +   256 * sizeof (short) / sizeof (int) +    48,
+        3 +   256 * sizeof (short) / sizeof (int) +    48,
         3 +   256 * sizeof (short) / sizeof (int) +    64,
         3 +   256 * sizeof (short) / sizeof (int) +    80,
-        3 +   256 * sizeof (short) / sizeof (int) +    96,
        -1,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +    96,
         3 +   256 * sizeof (short) / sizeof (int) +   112,
         3 +   256 * sizeof (short) / sizeof (int) +   128,
         3 +   256 * sizeof (short) / sizeof (int) +   144,
-        3 +   256 * sizeof (short) / sizeof (int) +   160,
        -1,
        -1,
        -1,
@@ -104,9 +104,9 @@
        -1,
        -1,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   160,
         3 +   256 * sizeof (short) / sizeof (int) +   176,
         3 +   256 * sizeof (short) / sizeof (int) +   192,
-        3 +   256 * sizeof (short) / sizeof (int) +   208,
        -1,
        -1,
        -1,
@@ -148,19 +148,20 @@
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   224,
+        3 +   256 * sizeof (short) / sizeof (int) +   208,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   240,
+        3 +   256 * sizeof (short) / sizeof (int) +   224,
        -1,
        -1,
        -1,
        -1,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   240,
         3 +   256 * sizeof (short) / sizeof (int) +   256,
-       -1,
-       -1,
         3 +   256 * sizeof (short) / sizeof (int) +   272,
+        3 +   256 * sizeof (short) / sizeof (int) +   288,
+        3 +   256 * sizeof (short) / sizeof (int) +   304,
        -1,
        -1,
        -1,
@@ -201,6 +202,30 @@
        -1,
        -1,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   320,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
        -1,
        -1,
        -1,
@@ -231,32 +256,7 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   288,
+        3 +   256 * sizeof (short) / sizeof (int) +   336,
        -1,
        -1,
        -1,
@@ -295,10 +295,6 @@
     0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
     0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
     0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
-    0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
-    0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
-    0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x00000000, 0x000003FF, 0x00000000, 0x00000000,
@@ -330,7 +326,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x000003FF, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
+    0x00000000, 0x00000000, 0x03FF0000, 0x03FF0000,
     0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -348,10 +344,26 @@
     0x00000000, 0xFFC00000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x03FF0000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x00000000, 0x00000000, 0x000003FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x000003FF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x000003FF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFC000, 0xFFFFFFFF
--- a/lib/unictype/categ_Nl.h
+++ b/lib/unictype/categ_Nl.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -303,7 +303,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000402, 0x00000000,
     0x00000000, 0x00000000, 0x003E0000, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000007,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000
--- a/lib/unictype/categ_No.h
+++ b/lib/unictype/categ_No.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[23 << 4];
+    /*unsigned*/ int level3[26 << 4];
   }
 u_categ_No =
 {
@@ -161,6 +161,23 @@
        -1,
        -1,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   336,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
        -1,
        -1,
        -1,
@@ -185,6 +202,27 @@
        -1,
        -1,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   352,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
        -1,
        -1,
        -1,
@@ -216,23 +254,7 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   368,
        -1,
        -1,
        -1,
@@ -243,33 +265,11 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   384,
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   336,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   352,
+        3 +   256 * sizeof (short) / sizeof (int) +   400,
        -1,
        -1,
        -1,
@@ -342,19 +342,19 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFF80, 0x000FFFFF, 0x00000000, 0x01E00000,
-    0x00000400, 0x00000000, 0x00000000, 0x00000000,
+    0x00000C00, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x0FFFFFFE,
     0x00000000, 0x0000000F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFF000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFF000000, 0xFE000000,
+    0x00000000, 0x0000FF80, 0x00000000, 0x00000000,
     0x0FC00000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x000000FF, 0x60000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xE0000000, 0x00000000, 0x00000000, 0x0000F800,
     0x00000000, 0x00000000, 0xFF000000, 0xFF000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x0000FE00, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x7FFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -362,14 +362,26 @@
     0x00000000, 0x00000000, 0xFFFC0000, 0x0000003F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x001FFFFE,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x0007FC00,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xF8000000, 0x00000003,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x0003FFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x0000FF80, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x000007FF, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00001FFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/categ_P.h
+++ b/lib/unictype/categ_P.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[34 << 4];
+    /*unsigned*/ int level3[40 << 4];
   }
 u_categ_P =
 {
@@ -151,13 +151,23 @@
         3 +   256 * sizeof (short) / sizeof (int) +   432,
         3 +   256 * sizeof (short) / sizeof (int) +   448,
         3 +   256 * sizeof (short) / sizeof (int) +   464,
+        3 +   256 * sizeof (short) / sizeof (int) +   480,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   496,
+        3 +   256 * sizeof (short) / sizeof (int) +   512,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   480,
-        3 +   256 * sizeof (short) / sizeof (int) +   496,
+        3 +   256 * sizeof (short) / sizeof (int) +   528,
+        3 +   256 * sizeof (short) / sizeof (int) +   544,
+        3 +   256 * sizeof (short) / sizeof (int) +   560,
+        3 +   256 * sizeof (short) / sizeof (int) +   576,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   512,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   592,
        -1,
        -1,
        -1,
@@ -167,7 +177,32 @@
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   528,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   608,
        -1,
        -1,
        -1,
@@ -208,42 +243,7 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   624,
        -1,
        -1,
        -1,
@@ -359,7 +359,7 @@
     0x00000000, 0x00000000, 0x00000000, 0xDE000000,
     0x00000000, 0x00000000, 0x00000000, 0x00010000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0x0FFF7FFF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFF7FFF, 0x00000007, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -399,21 +399,45 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x80000000, 0x00000000, 0x00010000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00008000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00800000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x80000000, 0x80000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x01FF0000, 0x80000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x007F0000,
     0x00000000, 0xFE000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x1E000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00003F80, 0x00000000,
     0x00000000, 0xD8000000, 0x00000003, 0x00000000,
-    0x00000000, 0x00000000, 0x0000000F, 0x00000000,
-    0x00000000, 0x00000000, 0x000001E0, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x000F0000,
+    0x00000000, 0x00000000, 0x0000000F, 0x00300000,
+    0x00000000, 0x00000000, 0x000021E0, 0x00000000,
+    0x00000000, 0x3F000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000040, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x000003FE, 0x00000000,
+    0x00000000, 0x00000000, 0x0000000E, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x001F0000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x0000C000,
+    0x00000000, 0x00000000, 0x00000000, 0x00200000,
+    0x00000000, 0x0F800000, 0x00000010, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x80000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/categ_Pc.h
+++ b/lib/unictype/categ_Pc.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/categ_Pd.h
+++ b/lib/unictype/categ_Pd.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -168,7 +168,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x04800000, 0x0C000000, 0x00000000, 0x00000000,
+    0x04800000, 0x0C000000, 0x00000001, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/categ_Pe.h
+++ b/lib/unictype/categ_Pe.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -186,7 +186,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x80000000, 0x00000000, 0x00000000,
+    0x00000000, 0x40000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x01000000, 0x55400000, 0x54000115, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/categ_Pf.h
+++ b/lib/unictype/categ_Pf.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/categ_Pi.h
+++ b/lib/unictype/categ_Pi.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/categ_Po.h
+++ b/lib/unictype/categ_Po.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[29 << 4];
+    /*unsigned*/ int level3[35 << 4];
   }
 u_categ_Po =
 {
@@ -151,13 +151,23 @@
         3 +   256 * sizeof (short) / sizeof (int) +   352,
         3 +   256 * sizeof (short) / sizeof (int) +   368,
         3 +   256 * sizeof (short) / sizeof (int) +   384,
+        3 +   256 * sizeof (short) / sizeof (int) +   400,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   416,
+        3 +   256 * sizeof (short) / sizeof (int) +   432,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   400,
-        3 +   256 * sizeof (short) / sizeof (int) +   416,
+        3 +   256 * sizeof (short) / sizeof (int) +   448,
+        3 +   256 * sizeof (short) / sizeof (int) +   464,
+        3 +   256 * sizeof (short) / sizeof (int) +   480,
+        3 +   256 * sizeof (short) / sizeof (int) +   496,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   432,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   512,
        -1,
        -1,
        -1,
@@ -167,7 +177,32 @@
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   448,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   528,
        -1,
        -1,
        -1,
@@ -208,42 +243,7 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   544,
        -1,
        -1,
        -1,
@@ -343,7 +343,7 @@
     0x00000000, 0x00000000, 0x00000000, 0xDE000000,
     0x00000000, 0x00000000, 0x00000000, 0x00010000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xCB7FC9C3, 0x03FF7C00, 0x00000000, 0x00000000,
+    0xCB7FC9C3, 0xF3FF7C00, 0x00000002, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -379,21 +379,45 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x80000000, 0x00000000, 0x00010000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00008000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00800000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x80000000, 0x80000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x01FF0000, 0x80000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x007F0000,
     0x00000000, 0xFE000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x1E000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00003F80, 0x00000000,
     0x00000000, 0xD8000000, 0x00000003, 0x00000000,
-    0x00000000, 0x00000000, 0x0000000F, 0x00000000,
-    0x00000000, 0x00000000, 0x000001E0, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x000F0000,
+    0x00000000, 0x00000000, 0x0000000F, 0x00300000,
+    0x00000000, 0x00000000, 0x000021E0, 0x00000000,
+    0x00000000, 0x3F000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000040, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x000003FE, 0x00000000,
+    0x00000000, 0x00000000, 0x0000000E, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x001F0000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x0000C000,
+    0x00000000, 0x00000000, 0x00000000, 0x00200000,
+    0x00000000, 0x0F800000, 0x00000010, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x80000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/categ_Ps.h
+++ b/lib/unictype/categ_Ps.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -176,7 +176,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00AAAAA8, 0x00000000, 0x05000000, 0x10000000,
-    0x00000000, 0x00000154, 0x00000000, 0x00000000,
+    0x00000000, 0x00000154, 0x00000004, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -186,7 +186,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x40000000, 0x00000000, 0x00000000,
+    0x00000000, 0x80000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00800000, 0xAAA00000, 0x2A00008A, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/categ_S.h
+++ b/lib/unictype/categ_S.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[41 << 4];
+    /*unsigned*/ int level3[46 << 4];
   }
 u_categ_S =
 {
@@ -153,59 +153,8 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   528,
+        3 +   256 * sizeof (short) / sizeof (int) +   544,
        -1,
        -1,
        -1,
@@ -253,9 +202,6 @@
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   528,
-        3 +   256 * sizeof (short) / sizeof (int) +   544,
-       -1,
         3 +   256 * sizeof (short) / sizeof (int) +   560,
        -1,
        -1,
@@ -268,12 +214,66 @@
        -1,
        -1,
        -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
         3 +   256 * sizeof (short) / sizeof (int) +   576,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
         3 +   256 * sizeof (short) / sizeof (int) +   592,
         3 +   256 * sizeof (short) / sizeof (int) +   608,
+       -1,
         3 +   256 * sizeof (short) / sizeof (int) +   624,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
         3 +   256 * sizeof (short) / sizeof (int) +   640,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   656,
+        3 +   256 * sizeof (short) / sizeof (int) +   672,
+        3 +   256 * sizeof (short) / sizeof (int) +   688,
+        3 +   256 * sizeof (short) / sizeof (int) +   704,
+        3 +   256 * sizeof (short) / sizeof (int) +   720,
        -1,
        -1,
        -1
@@ -290,7 +290,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000004, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00008000, 0x00000000, 0x00000000, 0x00000000,
+    0x0000E000, 0x00000000, 0x00000000, 0x00000000,
     0x0000C9C0, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x40000000, 0x60000200,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -336,20 +336,20 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xA0000000, 0xE000E003, 0x6000E000,
     0x00000000, 0x00000000, 0x00040010, 0x1C000000,
-    0x00001C00, 0x07FFFFFF, 0x00000000, 0x00000000,
+    0x00001C00, 0x3FFFFFFF, 0x00000000, 0x00000000,
     0xC1D0037B, 0x0C0042AF, 0x0000BC1F, 0x00000000,
     0xFFFF0000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFF0FF, 0xFFFFF9FF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF,
     0xFFFFFFFF, 0x0000007F, 0x000007FF, 0x00000000,
     0xF0000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x000003FF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x000000FF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000000FF,
     0xFFF00000, 0xFFFFFFFF, 0xFFFFFF9F, 0xFFFF003F,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -357,8 +357,8 @@
     0xFE000007, 0xFFFFFFFF, 0xF0FFFFFF, 0xCFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x03FF1FFF, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFCFFFFF,
+    0xFF3FFFFF, 0xE3FFFFFF, 0x0003FDFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x000007E0,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -393,7 +393,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x03800000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x08000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -410,7 +410,23 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFF800000, 0x00000000, 0xFE000000,
-    0x0FFF03FF, 0x00000000, 0xFFFF0000, 0x1FFFFFFF,
+    0x0FFF13FF, 0x00000001, 0xFFFF0000, 0x1FFFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x01800000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000100, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xF0000000, 0x00000020, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x10000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF,
     0xFFFFFFFF, 0xFFFFFE7F, 0xFFFFFFFF, 0x00001C1F,
@@ -428,20 +444,24 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFF0FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000FFFFF, 0x7FFE7FFF, 0xFFFEFFFE, 0x00000000,
+    0x000FFFFF, 0xFFFE7FFF, 0xFFFEFFFE, 0x003FFFFF,
     0xFFFF0000, 0xFFFF7FFF, 0xFFFFFFFF, 0xFFFF0FFF,
     0x07FFFFFF, 0x00000000, 0x00000000, 0xFFFFFFC0,
     0xFFFF0007, 0x07FFFFFF, 0x000301FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFBF0001, 0xFFFFFFFF, 0x1FFFFFFF,
-    0x000FFFFF, 0xFFFFFFFF, 0x000007DF, 0x0001FFFF,
-    0xFFFFFFFF, 0x7FFFFFFF, 0xFFFFFFFD, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1EFFFFFF,
-    0xFFFFFFFF, 0x3FFFFFFF, 0xFFFF000F, 0x000000FF,
-    0x00000000, 0x00000000, 0x00000000, 0xF8000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFE1, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000000,
+    0xFFFFFFFF, 0xFFFF1FFF, 0xFFFFFFFF, 0x3FFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFF07FFF, 0x00FFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF07FF, 0xFBFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFEF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFE7, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, 0x000F1FFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x001FFFFF, 0x00000000,
+    0xFFFF0FFF, 0xFFFFFFFF, 0x03FF00FF, 0xFFFFFFFF,
+    0xFFFF00FF, 0x00003FFF, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/categ_Sc.h
+++ b/lib/unictype/categ_Sc.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -177,7 +177,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x08000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x07FFFFFF, 0x00000000, 0x00000000,
+    0x00000000, 0x3FFFFFFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x01000000, 0x00000000, 0x00000000,
--- a/lib/unictype/categ_Sk.h
+++ b/lib/unictype/categ_Sk.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[1];
     short level2[1 << 7];
-    /*unsigned*/ int level3[7 << 4];
+    /*unsigned*/ int level3[8 << 4];
   }
 u_categ_Sk =
 {
@@ -103,6 +103,7 @@
        -1,
         2 +   128 * sizeof (short) / sizeof (int) +    64,
        -1,
+        2 +   128 * sizeof (short) / sizeof (int) +    80,
        -1,
        -1,
        -1,
@@ -142,10 +143,9 @@
        -1,
        -1,
        -1,
+        2 +   128 * sizeof (short) / sizeof (int) +    96,
        -1,
-        2 +   128 * sizeof (short) / sizeof (int) +    80,
-       -1,
-        2 +   128 * sizeof (short) / sizeof (int) +    96
+        2 +   128 * sizeof (short) / sizeof (int) +   112
   },
   {
     0x00000000, 0x00000000, 0x40000000, 0x00000001,
@@ -170,6 +170,10 @@
     0x00000600, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x08000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFC0000, 0x00000003, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/categ_Sm.h
+++ b/lib/unictype/categ_Sm.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/categ_So.h
+++ b/lib/unictype/categ_So.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[34 << 4];
+    /*unsigned*/ int level3[39 << 4];
   }
 u_categ_So =
 {
@@ -153,59 +153,8 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   448,
+        3 +   256 * sizeof (short) / sizeof (int) +   464,
        -1,
        -1,
        -1,
@@ -253,8 +202,33 @@
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   448,
-        3 +   256 * sizeof (short) / sizeof (int) +   464,
+        3 +   256 * sizeof (short) / sizeof (int) +   480,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
        -1,
        -1,
        -1,
@@ -269,13 +243,39 @@
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   480,
         3 +   256 * sizeof (short) / sizeof (int) +   496,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
         3 +   256 * sizeof (short) / sizeof (int) +   512,
         3 +   256 * sizeof (short) / sizeof (int) +   528,
        -1,
        -1,
        -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   544,
+        3 +   256 * sizeof (short) / sizeof (int) +   560,
+        3 +   256 * sizeof (short) / sizeof (int) +   576,
+        3 +   256 * sizeof (short) / sizeof (int) +   592,
+        3 +   256 * sizeof (short) / sizeof (int) +   608,
+       -1,
+       -1,
        -1
   },
   {
@@ -286,7 +286,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000004, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00006000, 0x00000000, 0x00000000, 0x00000000,
     0x0000C000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x40000000, 0x60000200,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -330,14 +330,14 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFF0FF, 0xFFFFF9FC, 0xFFFFFFFF, 0xEFFFFFFF,
-    0x07FFFFFF, 0xFFF00000, 0x0FFFFFFF, 0x000FFFFC,
+    0x07FFFFFF, 0xFFF00000, 0x0FFFFFFF, 0x07FFFFFC,
     0xFFFFFFFF, 0x0000007F, 0x000007FF, 0x00000000,
     0xF0000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x000003FF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFF7FFFFF, 0xFFFFFFFD, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF7FFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x000000FF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000000FF,
     0xFFF00000, 0xFFFFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -345,8 +345,8 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0x0000FFFF, 0x03FF0060, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x0000FFFF, 0xFFFFE060, 0xFFCFFFFF,
+    0xFF3FFFFF, 0xE3FFFFFF, 0x0003FDFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x000007E0,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -390,7 +390,23 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFF800000, 0x00000000, 0xFE000000,
-    0x0FFF03FF, 0x00000000, 0xFFFF0000, 0x1FFFFFFF,
+    0x0FFF13FF, 0x00000001, 0xFFFF0000, 0x1FFFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x01800000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000100, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xF0000000, 0x00000020, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x10000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF,
     0xFFFFFFFF, 0xFFFFFE7F, 0xFFFFFFFF, 0x00001C1F,
@@ -400,20 +416,24 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFF0FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000FFFFF, 0x7FFE7FFF, 0xFFFEFFFE, 0x00000000,
+    0x000FFFFF, 0xFFFE7FFF, 0xFFFEFFFE, 0x003FFFFF,
     0xFFFF0000, 0xFFFF7FFF, 0xFFFFFFFF, 0xFFFF0FFF,
     0x07FFFFFF, 0x00000000, 0x00000000, 0xFFFFFFC0,
     0xFFFF0007, 0x07FFFFFF, 0x000301FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFBF0001, 0xFFFFFFFF, 0x1FFFFFFF,
-    0x000FFFFF, 0xFFFFFFFF, 0x000007DF, 0x0001FFFF,
-    0xFFFFFFFF, 0x7FFFFFFF, 0xFFFFFFFD, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1EFFFFFF,
-    0xFFFFFFFF, 0x3FFFFFFF, 0xFFFF000F, 0x000000FF,
-    0x00000000, 0x00000000, 0x00000000, 0xF8000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFE1, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000000,
+    0xFFFFFFFF, 0xFFFF1FFF, 0xFFFFFFFF, 0x3FFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFF07FFF, 0x00FFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF07FF, 0xFBFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFEF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFE7, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, 0x000F1FFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x001FFFFF, 0x00000000,
+    0xFFFF0FFF, 0xFFFFFFFF, 0x03FF00FF, 0xFFFFFFFF,
+    0xFFFF00FF, 0x00003FFF, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/categ_Z.h
+++ b/lib/unictype/categ_Z.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/categ_Zl.h
+++ b/lib/unictype/categ_Zl.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/categ_Zp.h
+++ b/lib/unictype/categ_Zp.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/categ_Zs.h
+++ b/lib/unictype/categ_Zs.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/categ_of.h
+++ b/lib/unictype/categ_of.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Categories of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define category_header_0 16
 #define category_header_1 17
 #define category_header_2 7
@@ -11,7 +11,7 @@
   {
     int level1[17];
     short level2[5 << 9];
-    unsigned short level3[182 * 40 + 1];
+    unsigned short level3[204 * 40 + 1];
   }
 u_category =
 {
@@ -31,16 +31,16 @@
      6656,  6784,  6912,  7040,  7168,  7296,  7424,  7552,
      7680,  7808,  7936,  8064,  8192,  8192,  8320,  8448,
      8576,  8704,  8832,  8960,  9088,  8832,  9216,  9344,
-     8832,  8832,  8192,  9472,  8192,  8192,  9600,    -1,
-     9728,  9856,  9984, 10112, 10240, 10368,  8832, 10496,
-    10624, 10752, 10880, 11008, 11136, 11264,  8832,  8832,
+     8832,  8832,  8192,  9472,  8192,  8192,  9600,  9728,
+     9856,  9984, 10112, 10240, 10368, 10496,  8832, 10624,
+    10752, 10880, 11008, 11136, 11264, 11392,  8832,  8832,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
-     4352,  4352,  4352, 11392,  4352,  4352,  4352,  4352,
+     4352,  4352,  4352, 11520,  4352,  4352,  4352,  4352,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
@@ -60,10 +60,10 @@
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
-     4352,  4352,  4352,  4352,  4352,  4352,  4352, 11520,
-    11648,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
-     4352, 11776,  4352,  4352, 11904, 12032, 12160, 12288,
-    12416, 12544, 12672, 12800, 12928, 13056, 13184, 13312,
+     4352,  4352,  4352,  4352,  4352,  4352,  4352, 11648,
+    11776,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
+     4352, 11904,  4352,  4352, 12032, 12160, 12288, 12416,
+    12544, 12672, 12800, 12928, 13056, 13184, 13312, 13440,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
@@ -74,31 +74,31 @@
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
-     4352,  4352,  4352,  4352,  4352,  4352,  4352, 13440,
-    13568, 13568, 13568, 13568, 13568, 13568, 13568, 13568,
-    13568, 13568, 13568, 13568, 13568, 13568, 13568, 13568,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
+     4352,  4352,  4352,  4352,  4352,  4352,  4352, 13568,
     13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
     13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696,  4352,  4352, 13824, 13952, 14080, 14208,
-     4352,  4352, 14336, 14464, 14592, 14720, 14848, 14976,
-    15104, 15232, 15360, 15488,    -1, 15616, 15744, 15872,
-    16000, 16128,    -1,    -1,    -1,    -1,    -1,    -1,
-    16256,    -1, 16384, 16512, 16640,    -1, 16768,    -1,
-    16896,    -1,    -1,    -1, 17024,    -1,    -1,    -1,
-    17152, 17280, 17408, 17536,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1, 17664,    -1,    -1,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824,  4352,  4352, 13952, 14080, 14208, 14336,
+     4352,  4352, 14464, 14592, 14720, 14848, 14976, 15104,
+    15232, 15360, 15488, 15616,    -1, 15744, 15872, 16000,
+    16128, 16256, 16384,    -1,  4352,  4352, 16512,    -1,
+    16640, 16768, 16896, 17024, 17152, 17280, 17408, 17536,
+    17664,    -1,    -1,    -1, 17792,    -1,    -1,    -1,
+    17920, 18048, 18176, 18304, 18432, 18560, 18688,    -1,
+       -1, 18816,    -1, 18944, 19072, 19200,    -1,    -1,
+       -1, 19328,    -1,    -1,    -1, 19456,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     4352,  4352,  4352,  4352,  4352,  4352, 17792,    -1,
-    17920,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     4352,  4352,  4352,  4352,  4352,  4352,  4352, 19584,
+    19712,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
-    18048,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    19840,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -111,8 +111,8 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     4352,  4352,  4352,  4352, 18176,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1, 18304, 18432,
+     4352,  4352,  4352,  4352, 19968, 20096, 20224, 20352,
+       -1,    -1,    -1,    -1,    -1,    -1, 20480, 20608,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -129,25 +129,25 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    18560,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    20736,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    20864, 20992,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     8832, 18688, 18816, 18944, 19072,    -1, 19200,    -1,
-    19328, 19456, 19584, 19712, 19840, 19968, 20096, 20224,
+     8832, 21120, 21248, 21376, 21504,    -1, 21632,    -1,
+    21760, 21888, 22016, 22144, 22272, 22400, 22528, 22656,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1, 20352, 20480,    -1,    -1,
-    20608, 20736, 20864, 20992, 21120,    -1, 21248, 21376,
-    21504, 21632, 21760, 21888, 22016, 22144, 22272,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     4352, 22784,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1, 22912, 23040,    -1,    -1,
+    23168, 23296, 23424, 23552, 23680,    -1, 23808, 23936,
+     8832, 24064, 24192, 24320, 24448, 24576, 24704, 24832,
+    24960, 25088,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
@@ -190,12 +190,12 @@
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
-     4352,  4352,  4352,  4352,  4352, 22400,  4352,  4352,
+     4352,  4352,  4352,  4352,  4352, 25216,  4352,  4352,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
      4352,  4352,  4352,  4352,  4352,  4352,  4352,  4352,
-     4352,  4352,  4352,  4352,  4352,  4352, 22528,  4352,
-    22656,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     4352,  4352,  4352,  4352,  4352,  4352, 25344,  4352,
+    25472,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -211,9 +211,9 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     4352,  4352,  4352,  4352, 22656,    -1,    -1,    -1,
+     4352,  4352,  4352,  4352, 25472,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    22784,    -1, 22912, 23040,    -1,    -1,    -1,    -1,
+    25600,    -1, 25728, 25856,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -277,70 +277,70 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 13696,
-    13696, 13696, 13696, 13696, 13696, 13696, 13696, 23168
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 13824,
+    13824, 13824, 13824, 13824, 13824, 13824, 13824, 25984
   },
   {
     0xe739, 0x739c, 0x39ce, 0x9ce7, 0xce73, 0xe739, 0x739c, 0x39ce,
@@ -377,7 +377,7 @@
     0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5,
     0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
     0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52,
-    0xa529, 0x5294, 0x294a, 0x8020, 0x2830, 0xbd08, 0x108f, 0xec42,
+    0xa529, 0x5294, 0x294a, 0x8020, 0x2830, 0xbd08, 0x108f, 0x0442,
     0xf7bd, 0x294e, 0x0088, 0x0e80, 0x003a, 0x0001, 0x0000, 0x0000,
     0x0000, 0x0000, 0x7400, 0x0000, 0x0000, 0x1000, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
@@ -394,16 +394,16 @@
     0x0840, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200,
     0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802,
     0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0x2008,
-    0x0080, 0x0802, 0x8020, 0x0200, 0xbd08, 0xdef7, 0xef7b, 0x001d,
+    0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x001d,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x7de8, 0x18c4, 0x8c63, 0x843d, 0x4210,
     0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842,
-    0x8421, 0x4210, 0x3d08, 0xdeb2, 0x9f7b, 0x94bd, 0x4a52, 0xa529,
+    0x8421, 0x4210, 0x3d08, 0xdeb2, 0x9d6b, 0x94bd, 0x4a52, 0xa529,
     0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5,
     0x4a52, 0xa529, 0x5294, 0x2b0a, 0x94b1, 0x4a58, 0xbd2c, 0xdef7,
     0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842,
     0x8421, 0xde90, 0xef7b, 0x9084, 0x7b18, 0xbdef, 0xdef7, 0xef7b,
-    0x6b5a, 0xbbad, 0x3294, 0x19c6, 0xad63, 0x94a5, 0x4a52, 0xa529,
+    0x6b5a, 0xb5ad, 0x3294, 0x19c6, 0xad63, 0x94a5, 0x4a52, 0xa529,
     0xa894, 0x8c7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
     0x0842, 0x8421, 0x4210, 0x2108, 0x1083, 0x0842, 0x8421, 0x5290,
     0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x2108, 0x1084,
@@ -429,16 +429,16 @@
     0x2108, 0x1084, 0x0842, 0xa421, 0xd294, 0xec7b, 0xf7bd, 0x7bde,
     0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
     0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef,
-    0xdef7, 0xef7b, 0x13a4, 0x0842, 0x8421, 0x4210, 0xef7a, 0xf7bd,
+    0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x9084,
     0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
     0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x4a5e,
-    0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0xe94a,
+    0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a,
     0x14a5, 0x0843, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
     0x0842, 0x8421, 0x5314, 0x3188, 0x94a6, 0x4a52, 0xc529, 0x6318,
     0x318a, 0x94a4, 0x4a52, 0x8429, 0x4210, 0x2108, 0x9484, 0x2312,
-    0x0842, 0x8421, 0x4210, 0x1071, 0x0842, 0x9d21, 0x4210, 0x2108,
-    0x18bd, 0x09d3, 0x8421, 0x4210, 0x277a, 0x77a4, 0x0842, 0x8421,
+    0x0842, 0x8421, 0x4210, 0x1071, 0x0842, 0x8421, 0x4210, 0x2108,
+    0x18a4, 0x09d3, 0x8421, 0x4210, 0x277a, 0x77a4, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0x4213, 0x2108, 0x93a4,
     0x3bde, 0x8421, 0x5ef4, 0x3188, 0x94a6, 0x7a52, 0xa637, 0x6377,
     0xe90a, 0xf7bd, 0x7bde, 0xbd37, 0x4ef7, 0x2748, 0x9484, 0x3bd2,
@@ -463,17 +463,17 @@
     0x0842, 0x8421, 0xdef4, 0x31bb, 0x98c5, 0xbbde, 0xa631, 0x631b,
     0xef4a, 0xf7a4, 0x7bde, 0xbd37, 0xdef7, 0xef7b, 0xf7bd, 0x3bde,
     0x0842, 0x8421, 0x4210, 0xa94a, 0x6b5a, 0x75ad, 0xded6, 0xef7b,
-    0x18dd, 0x09d3, 0x8421, 0x4210, 0x213a, 0x13a4, 0x0842, 0x8421,
+    0x18c5, 0x09d3, 0x8421, 0x4210, 0x213a, 0x13a4, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0x4213, 0x2108, 0x1084,
-    0x09d2, 0x8421, 0xdef4, 0x2949, 0x18c5, 0x7a63, 0xa529, 0x5297,
+    0x0842, 0x8421, 0xdef4, 0x2949, 0x18c5, 0x7a63, 0xa529, 0x5297,
     0xef4a, 0xf7bd, 0x4bde, 0x84e9, 0xdef4, 0xef7b, 0x9484, 0x3bd2,
     0x0842, 0x8421, 0x4210, 0xf7bd, 0x7bde, 0x4aef, 0xa529, 0xaa94,
-    0x1bbd, 0x09d3, 0x8421, 0x4210, 0x213a, 0x13a4, 0x0842, 0x8421,
+    0x18bd, 0x09d3, 0x8421, 0x4210, 0x213a, 0x13a4, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0x4213, 0x2108, 0x1084,
     0x09d2, 0x8421, 0x5ef4, 0x2988, 0x18c6, 0x7a63, 0xa631, 0x531b,
     0xef4a, 0xf7bd, 0x8dde, 0xbde9, 0xdef7, 0xe93b, 0x9484, 0x3bd2,
     0x0842, 0x8421, 0x4210, 0x909d, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
-    0x1bbd, 0x09d3, 0x8421, 0x4210, 0x213a, 0x13a4, 0x0842, 0x8421,
+    0x18bd, 0x09d3, 0x8421, 0x4210, 0x213a, 0x13a4, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
     0x0842, 0x8421, 0xde90, 0x3189, 0x94a6, 0xba52, 0xa631, 0x631b,
     0xe90a, 0xf7bd, 0x7bde, 0xbd37, 0xdef7, 0xef7b, 0x9484, 0x3bd2,
@@ -481,8 +481,8 @@
     0x1bbd, 0x09d3, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0xbde9,
     0x4213, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x7484,
     0x0842, 0x8421, 0xd210, 0xef49, 0x1084, 0x0842, 0xbde9, 0xde97,
-    0x377b, 0x94c6, 0x7a52, 0xc6e9, 0x6318, 0x318c, 0xf7bd, 0x7bde,
-    0xbdef, 0xdef7, 0xef7b, 0x1bbd, 0x7b13, 0xbdef, 0xdef7, 0xef7b,
+    0x377b, 0x94c6, 0x7a52, 0xc6e9, 0x6318, 0x318c, 0xf7bd, 0x3bde,
+    0x0842, 0x8421, 0x4210, 0x1bbd, 0x7b13, 0xbdef, 0xdef7, 0xef7b,
     0x109d, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x10a4,
     0x4a52, 0xa529, 0xde94, 0x9f7b, 0x1084, 0xc842, 0xa528, 0x5294,
@@ -552,7 +552,7 @@
     0xe690, 0xef7a, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
     0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210,
     0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842,
-    0x8421, 0x1890, 0x4a63, 0xf7a9, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0x8421, 0x1890, 0x4a63, 0x1089, 0x0842, 0xa421, 0xdef7, 0xef7b,
     0x1084, 0x0842, 0x8421, 0x4210, 0x213a, 0x9484, 0x7a52, 0xbdef,
     0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x9484,
     0x6252, 0xbdec, 0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210,
@@ -574,7 +574,7 @@
     0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842,
     0x8421, 0x4210, 0x2108, 0x1084, 0x4842, 0xbdef, 0xdef7, 0xef7b,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
-    0x4210, 0xef7a, 0x14a5, 0x8c63, 0xc529, 0xd318, 0xef7b, 0x14c6,
+    0x4210, 0xe908, 0x14a5, 0x8c63, 0xc529, 0xd318, 0xef7b, 0x14c6,
     0x8c63, 0xa631, 0xd294, 0xef7b, 0xf7b5, 0x231e, 0x0842, 0x8421,
     0x4210, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842,
     0x8421, 0x4210, 0xef48, 0x1084, 0x7a42, 0xbdef, 0xdef7, 0xef7b,
@@ -589,8 +589,8 @@
     0x2108, 0x1084, 0x4c42, 0xa531, 0x5294, 0xe94a, 0x14c5, 0x4a63,
     0xa529, 0x5294, 0x318c, 0x98c6, 0x4a52, 0xa529, 0x5294, 0x2f7a,
     0x2108, 0x1084, 0x0842, 0xdef5, 0xef7b, 0x2108, 0x1084, 0x0842,
-    0xdef5, 0xef7b, 0xc631, 0x6318, 0x311c, 0x18c6, 0xef63, 0xf7bd,
-    0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
+    0xdef5, 0xef7b, 0xc631, 0x6318, 0x311c, 0x18c6, 0xef63, 0x94a5,
+    0x4a52, 0xa529, 0x5294, 0xe9ca, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
     0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
     0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
     0x94a5, 0x0862, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
@@ -599,7 +599,7 @@
     0xef7b, 0x2108, 0x1084, 0x0842, 0x18c5, 0x8c63, 0xd6b1, 0x6b5a,
     0xb5ad, 0x52d6, 0x294a, 0x94a5, 0x6b52, 0xb5ad, 0x5ad6, 0xef7b,
     0x18a5, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
-    0x4210, 0x2108, 0x94c4, 0x8a52, 0xa531, 0x6298, 0x210c, 0x2108,
+    0x4210, 0x2108, 0x94c4, 0x8a52, 0xa531, 0x5298, 0x210a, 0x2108,
     0x1084, 0x0842, 0x4211, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210,
     0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x4842,
     0xa531, 0x6318, 0x298a, 0x18a5, 0x7bd3, 0xbdef, 0x1ef7, 0x8c63,
@@ -612,7 +612,7 @@
     0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd,
     0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xc631, 0x6318, 0xbd8c, 0xdef7,
     0xef7b, 0x94a5, 0x4a58, 0xa529, 0x5294, 0x294a, 0x94c5, 0x4a52,
-    0x8529, 0x4210, 0x210a, 0x1884, 0x0853, 0xbde9, 0xdef7, 0xef7b,
+    0x8529, 0x4210, 0x210a, 0x1884, 0x0853, 0xa5e9, 0xdef4, 0xef7b,
     0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x3084, 0x18c6, 0x8c63,
     0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c,
@@ -622,7 +622,7 @@
     0x3184, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63,
     0xc631, 0x6318, 0x318c, 0x18c6, 0x94a5, 0x4a52, 0xa529, 0x5294,
     0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52,
-    0xbde9, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0x5ef7, 0x294a,
+    0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xbdef, 0x5ef7, 0x294a,
     0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0x2008,
     0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020,
     0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0x0080,
@@ -650,7 +650,7 @@
     0x5ad6, 0xad6b, 0xd6b5, 0xf46a, 0x94ae, 0x4a52, 0x2949, 0x1b9b,
     0x294a, 0x94a5, 0x4a52, 0x2949, 0xeb9b, 0x8c63, 0xc631, 0x6318,
     0x318c, 0xef7a, 0xce73, 0xe739, 0x739c, 0x39ce, 0x9ce7, 0xce73,
-    0xe739, 0x739c, 0xdece, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
+    0xe739, 0x739c, 0x39ce, 0xef67, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
     0xef7b, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x39ce, 0x9ca7, 0x4a73,
     0xa529, 0x5294, 0x294a, 0xf7a5, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
     0x82b5, 0x6b5a, 0xb505, 0x0006, 0x0840, 0x8000, 0x4150, 0x12ad,
@@ -677,7 +677,7 @@
     0x2956, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52,
     0x6b59, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6,
     0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x2ad6, 0x94a5, 0xd652, 0x6b5a,
-    0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x7bda, 0xbdef, 0xdef7, 0xef7b,
+    0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0xded6, 0xef7b,
     0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
     0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xbded, 0xdef7, 0xef7b, 0xf7bd,
     0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 0xded6,
@@ -703,7 +703,7 @@
     0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6,
     0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a,
     0xb5ad, 0x5ad6, 0x956b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b,
-    0xd6bd, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
+    0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
     0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5,
     0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6,
     0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a,
@@ -721,7 +721,12 @@
     0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
     0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0x4a52,
     0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0x6b29, 0x5295, 0x294a,
-    0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 0xdef6, 0xef7b, 0xf7bd, 0x7bde,
+    0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a,
+    0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x7bda, 0xb5ad, 0x5ad6, 0xad6b,
+    0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ef,
+    0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5,
+    0x6b5a, 0xb5ad, 0xdef6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad7,
+    0xad6b, 0xf6b5, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
     0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xe800, 0x8421,
@@ -745,7 +750,7 @@
     0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a,
     0x3e31, 0x60f8, 0xf18c, 0xf8c1, 0x8c60, 0xc631, 0x6318, 0x3164,
     0xf8b2, 0x8c60, 0x360f, 0x5cd7, 0xcd73, 0x18c5, 0x1c63, 0xc631,
-    0x6318, 0x318c, 0xd632, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
+    0x6318, 0x318c, 0x1632, 0x8c63, 0xb62c, 0x7bde, 0xbdef, 0xdef7,
     0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
     0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
     0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
@@ -813,8 +818,8 @@
     0x7bde, 0xbdef, 0xdef7, 0xef7b, 0x8020, 0x0200, 0x2008, 0x0080,
     0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200,
     0x2008, 0x0080, 0x2902, 0x9ce7, 0x4a58, 0xa529, 0x5294, 0x1c4a,
-    0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0xbd08,
-    0xdef7, 0x2f7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
+    0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0x2008,
+    0x3080, 0x2f46, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
     0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210,
     0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x4842,
     0x294a, 0x94a5, 0x4a52, 0xc4a5, 0x6318, 0xbd8c, 0xdef7, 0xef7b,
@@ -823,11 +828,11 @@
     0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0x0080,
     0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200,
     0x2008, 0x0080, 0x0802, 0x8423, 0x4210, 0x0108, 0x1004, 0x0800,
-    0x8020, 0x0200, 0x8308, 0x1052, 0xe840, 0x8020, 0x7bd0, 0xbdef,
-    0xdef7, 0xef7b, 0x8020, 0x0200, 0x2008, 0xde80, 0xef7b, 0xf7bd,
+    0x8020, 0x0200, 0x8308, 0x1052, 0xe840, 0x8020, 0x0210, 0x2008,
+    0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0x0000, 0xef40, 0xf400,
     0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
     0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
-    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0x63ef, 0x4204, 0x2108,
+    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0x6327, 0x4204, 0x2108,
     0x1484, 0x4842, 0x8421, 0x4290, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x4a63, 0xb531, 0xdad6, 0xef7b, 0x294a,
     0x54a5, 0xb3ad, 0xdef6, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210,
@@ -846,22 +851,22 @@
     0x14a5, 0x0843, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x9084,
     0x4c62, 0xa529, 0x5318, 0x318c, 0xc626, 0x6318, 0x318c, 0x18c6,
-    0x1f63, 0x2108, 0x1084, 0x0842, 0xdef5, 0x8c7b, 0xf7bd, 0x7bde,
-    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0x1f63, 0x2108, 0x1084, 0x0842, 0xdef5, 0x8c7b, 0x1084, 0xca42,
+    0x8420, 0x4210, 0x2108, 0x2108, 0x1084, 0x0842, 0x4211, 0xe908,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0x5294, 0x314a, 0x14a6,
     0x4a63, 0xbde9, 0xdef7, 0xef7b, 0x9084, 0x0842, 0x8421, 0x5210,
     0xef4c, 0x2108, 0x1084, 0x0842, 0x1ef5, 0x8c63, 0x1084, 0x0842,
-    0x8421, 0x4210, 0x2108, 0x1083, 0x0842, 0xb5a9, 0xd312, 0xef7b,
+    0x8421, 0x4210, 0x2108, 0x1083, 0x0842, 0xb5a9, 0x5312, 0x210c,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x9485,
     0x0852, 0x8529, 0x4210, 0x2948, 0x90a4, 0x7bde, 0xbdef, 0xdef7,
     0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0x4277, 0x8c46, 0x1084, 0x0842,
     0x8421, 0x5310, 0x318a, 0x9231, 0x4c31, 0xbde9, 0xdef7, 0xef7b,
     0x109d, 0x0842, 0x9de9, 0x4210, 0xe908, 0x109d, 0x0842, 0xbde9,
-    0xdef7, 0xef7b, 0x1084, 0x0842, 0x84e9, 0x4210, 0xe908, 0xf7bd,
-    0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
-    0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
+    0xdef7, 0xef7b, 0x1084, 0x0842, 0x84e9, 0x4210, 0xe908, 0x8421,
+    0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
+    0x0842, 0x8421, 0x4210, 0x2108, 0x3a04, 0x18c6, 0xf7bd, 0x421e,
     0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
     0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef,
     0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd,
@@ -905,7 +910,7 @@
     0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
-    0x0842, 0x8421, 0x4210, 0x7348, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
+    0x0842, 0x8421, 0x4210, 0x6b88, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
     0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842,
     0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x13bd, 0x0842, 0x8421,
@@ -914,7 +919,7 @@
     0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
     0xbdef, 0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421, 0x3210, 0xef6b,
     0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0xc631, 0x6318, 0x2e6c,
-    0xdef6, 0xef7b, 0x94a5, 0x4a52, 0xbde9, 0xdef7, 0xef7b, 0xb191,
+    0xdef6, 0xef7b, 0x94a5, 0x4a52, 0xa529, 0x5294, 0xef4a, 0xb191,
     0x9ab5, 0xae6b, 0xe6b9, 0x6b9a, 0xb9ae, 0x62e6, 0x2e6c, 0x18c6,
     0x5ad7, 0xc631, 0x631e, 0xac8c, 0xe6b9, 0x8b9a, 0x4a31, 0xa526,
     0x71ec, 0xd8c6, 0xef7b, 0x1084, 0x3a42, 0x8421, 0x4210, 0x2108,
@@ -948,21 +953,21 @@
     0x7bd5, 0xb5af, 0x5ad6, 0xad6b, 0xa529, 0x5294, 0x294a, 0x94a5,
     0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
     0x294a, 0x94a5, 0x4a52, 0xa529, 0x9494, 0xaa52, 0x5ad6, 0xad6b,
-    0xd6b5, 0x6b5a, 0xb5ad, 0xdeaa, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad,
-    0xdad6, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd,
+    0xd6b5, 0x6b5a, 0xb5ad, 0x552a, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad,
+    0xdad6, 0xef7b, 0xf7b5, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd,
     0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
     0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a,
     0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xef4b,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0xef7a, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
     0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210,
-    0x2108, 0xf7a4, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
-    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0x2108, 0xf7a4, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0x2945, 0x94a5,
+    0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xd529, 0xef7b,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
-    0x4210, 0xe908, 0x294a, 0x7bd5, 0xbdef, 0xdef7, 0xef7b, 0x1084,
+    0x4210, 0x2108, 0x294a, 0x7bd5, 0xbdef, 0xdef7, 0xef7b, 0x1084,
     0x0842, 0x8421, 0x4210, 0x2108, 0x1124, 0x0842, 0x8421, 0xdea4,
-    0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
-    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842,
+    0x8421, 0x4210, 0x2108, 0x1084, 0x4842, 0xa529, 0xde94, 0xef7b,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x8f48, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
     0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x7bd2, 0x84ef, 0x4210,
@@ -978,10 +983,25 @@
     0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
     0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
     0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
+    0x4210, 0x2108, 0x1084, 0x0842, 0xbd21, 0xdef7, 0xef7b, 0x1084,
+    0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210,
+    0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x7bd2,
+    0xbdef, 0xdef7, 0x8f7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
+    0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
+    0x0842, 0xbde9, 0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210,
+    0x2108, 0x1084, 0x4842, 0xbdef, 0xdef7, 0xef7b, 0x1084, 0x0842,
+    0xbd21, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
     0x1084, 0x4842, 0xa4ef, 0x4213, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
     0x4842, 0xa427, 0x4ef7, 0x277a, 0x1084, 0x0842, 0x8421, 0x4210,
-    0x2108, 0x1084, 0x4842, 0x4a8f, 0xa529, 0x5294, 0xf7bd, 0x7bde,
+    0x2108, 0x1084, 0x4842, 0x4a8f, 0xa529, 0x5294, 0x1084, 0x0842,
+    0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x55a9, 0xa529, 0x5294,
+    0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
+    0x4210, 0xe908, 0xf7bd, 0x7bde, 0x4a57, 0xa529, 0x5294, 0xf7bd,
+    0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
+    0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
     0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x8842, 0x4a52,
     0xd529, 0x8f7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
@@ -999,10 +1019,20 @@
     0xef7b, 0xc631, 0x6318, 0xb18c, 0xdef7, 0xef7b, 0x1084, 0x0842,
     0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x8a94,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
+    0x4210, 0x5294, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd,
+    0x7bde, 0xbdef, 0xdef7, 0xef7b, 0x1084, 0x0842, 0x9521, 0x4210,
+    0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x4a42,
+    0xbde9, 0xa577, 0x5294, 0xc631, 0x6318, 0xbdec, 0xdef7, 0xef7b,
+    0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
     0x4842, 0x3def, 0x18c6, 0x8c63, 0x1084, 0x0842, 0x8421, 0x4210,
     0x2108, 0x1084, 0x4842, 0x4aef, 0xa529, 0x5294, 0x1084, 0x0842,
     0x8421, 0x4210, 0x2108, 0x9084, 0x7bde, 0x4aef, 0xa529, 0x5294,
+    0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0xf484, 0x7bde, 0x3def,
+    0x18c6, 0xef7b, 0xf7bd, 0x7bde, 0x5def, 0xa529, 0x5294, 0xf7bd,
+    0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
+    0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
+    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
     0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0xdef7,
@@ -1017,7 +1047,7 @@
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
     0x0842, 0xa521, 0x5294, 0x294a, 0x94a5, 0x4a52, 0x3189, 0x18c6,
     0xef63, 0x2bbd, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x14a5,
-    0x0842, 0x8421, 0x4210, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0x0842, 0x8421, 0x4210, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0x2f7b,
     0x18a5, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x98c6,
     0x4a52, 0xa631, 0x1894, 0x8c75, 0xf631, 0x7bde, 0xbdef, 0xdef7,
@@ -1026,11 +1056,41 @@
     0x14a5, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0xa529, 0x6294, 0x294a, 0x94a5,
     0x3a52, 0x0842, 0x8421, 0x4210, 0xc631, 0x7bd8, 0xbdef, 0xdef7,
-    0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
-    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842,
+    0x8421, 0x4210, 0x2108, 0x9084, 0x2312, 0xbde9, 0xdef7, 0xef7b,
     0x18a5, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
     0x4c63, 0xa529, 0x5294, 0x314a, 0x1086, 0x6242, 0xb18c, 0xdef7,
+    0xef63, 0x2108, 0x1084, 0x0842, 0xde91, 0xef7b, 0x295d, 0x94a5,
+    0x4a52, 0xa529, 0x5294, 0x294a, 0x7aa5, 0xbdef, 0xdef7, 0xef7b,
+    0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x7484, 0x0842, 0x8421,
+    0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x6210, 0x298c, 0x18a5,
+    0x4c53, 0x3129, 0x18c6, 0xef63, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
+    0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
+    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef,
+    0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0x1084,
+    0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210,
+    0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2908, 0x98c6, 0x4a52,
+    0xa529, 0xde94, 0xef7b, 0x2108, 0x1084, 0x0842, 0xdef5, 0xef7b,
+    0x18bd, 0x09d3, 0x8421, 0x4210, 0x277a, 0x77a4, 0x0842, 0x8421,
+    0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0x4213, 0x2108, 0x13a4,
+    0x09d2, 0x8421, 0x5ef4, 0x3188, 0x18c5, 0x7a63, 0xa637, 0x6377,
+    0xef4c, 0xf7bd, 0x7bde, 0xbd37, 0xdef7, 0x2109, 0x1884, 0x7bd3,
+    0xa529, 0x5294, 0xef7a, 0x94a5, 0x7a52, 0xbdef, 0xdef7, 0xef7b,
+    0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
+    0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x98c6,
+    0x4a52, 0xc529, 0x6314, 0x298c, 0x94c5, 0x4842, 0xbd24, 0xdef7,
+    0xef7b, 0x2108, 0x1084, 0x0842, 0xdef5, 0xef7b, 0xf7bd, 0x7bde,
+    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
+    0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x3108, 0x94c6,
+    0x4a52, 0xc6ef, 0x5318, 0x298a, 0xc625, 0x6318, 0x318c, 0xdef6,
+    0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
+    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
+    0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x98c6,
+    0x4a52, 0xa529, 0x6314, 0x298a, 0xc625, 0x7a48, 0xbdef, 0xdef7,
     0xef7b, 0x2108, 0x1084, 0x0842, 0xdef5, 0xef7b, 0xf7bd, 0x7bde,
     0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
@@ -1038,16 +1098,26 @@
     0x8a52, 0xbd29, 0xdef7, 0xef7b, 0x2108, 0x1084, 0x0842, 0xdef5,
     0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
     0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
-    0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
-    0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
-    0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210,
+    0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef,
+    0xdef7, 0xef7b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x8421, 0x4210, 0x2108, 0x1084,
+    0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x2108, 0x1084,
+    0x0842, 0xa529, 0x5294, 0xa94a, 0x7bde, 0xbdef, 0xdef7, 0x277b,
+    0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef,
+    0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd,
+    0x7bde, 0xbdef, 0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210,
     0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842,
-    0x8421, 0x4210, 0xe908, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0xdef7, 0xef7b,
+    0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0xa421,
+    0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd,
+    0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
+    0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
+    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
     0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a,
     0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529,
     0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5,
-    0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x7bde,
-    0xbdef, 0xdef7, 0xef7b, 0xc631, 0x7bd8, 0xbdef, 0xdef7, 0xef7b,
+    0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
+    0x294a, 0x94a5, 0xea52, 0xc631, 0x7b18, 0xbdef, 0xdef7, 0xef7b,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0xe908, 0xf7bd,
     0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
@@ -1055,7 +1125,22 @@
     0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
-    0x0842, 0xa421, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
+    0x0842, 0xa421, 0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210,
+    0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0xe908, 0x2108, 0x1084,
+    0x0842, 0xdef5, 0x8c7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef,
+    0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd,
+    0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
+    0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842,
+    0x8421, 0x4210, 0xef48, 0x94a5, 0x6252, 0xbdef, 0xdef7, 0xef7b,
+    0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
+    0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x94a5,
+    0x4a52, 0x3189, 0x58c6, 0xad6b, 0x8c63, 0x6b11, 0xbdef, 0xdef7,
+    0xef7b, 0x2108, 0x1084, 0x0842, 0xa575, 0x5294, 0x754a, 0x0842,
+    0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0xbd21, 0xdef7, 0x2109,
+    0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0xf7bd, 0x7bde, 0xbdef,
+    0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd,
+    0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
     0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
     0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
@@ -1073,6 +1158,16 @@
     0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
     0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
     0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
+    0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
+    0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210,
+    0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842,
+    0x8421, 0xde90, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0xef7a,
+    0x1084, 0x0842, 0xa421, 0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421,
+    0x5ef4, 0x894b, 0x6b5a, 0x7bdd, 0xbdef, 0xdef7, 0xef7b, 0xf7bd,
+    0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
+    0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
+    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
     0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
     0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5,
     0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6,
@@ -1138,6 +1233,11 @@
     0x4210, 0x2108, 0x1084, 0x0842, 0x0421, 0x4219, 0x2108, 0xd080,
     0x423b, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
     0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210,
+    0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
+    0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
+    0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x7a42, 0x4a57, 0xa529,
+    0x5294, 0x94a5, 0x4a52, 0xbde9, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
+    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
     0x1084, 0x09d2, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x909d, 0x7a4e, 0x9d27, 0x4210, 0x2108, 0x9084,
     0x084e, 0x9d21, 0xd274, 0xef7b, 0x93bd, 0x7bde, 0x9d27, 0xd274,
@@ -1155,10 +1255,10 @@
     0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b,
     0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x7bda, 0xbdef,
     0xdef7, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xed6b, 0xd6bd,
-    0x6b5a, 0xb5ad, 0x5ad6, 0xed6b, 0xd6bd, 0x6b5a, 0xb5ad, 0x5ad6,
-    0xad6b, 0xd6bd, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xf7bd, 0x7bde,
-    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
-    0x294a, 0x94a5, 0x4a52, 0xdea9, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad,
+    0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6bd, 0x6b5a, 0xb5ad, 0x5ad6,
+    0xad6b, 0xd6bd, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a,
+    0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xbdef, 0xdef7, 0xef7b,
+    0x294a, 0x94a5, 0x4a52, 0xa529, 0xef7a, 0xd6b5, 0x6b5a, 0xb5ad,
     0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xed6b, 0xd6b5,
     0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6,
     0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a,
@@ -1174,50 +1274,60 @@
     0xef7b, 0xf6b5, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
     0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
     0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
-    0x5ad6, 0xad6b, 0xf7b5, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xd6b5,
-    0x6b5a, 0xb5af, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6,
+    0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xef7b, 0xd6b5,
+    0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6,
     0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a,
-    0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xef7b,
-    0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x7bda, 0xbdef,
-    0xdef7, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5,
-    0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x7b5a, 0xb5ad, 0xded6,
-    0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xd6b5, 0x6b5a,
-    0xb5ad, 0x5ad6, 0xad6b, 0xf7b5, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xef6b,
+    0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
+    0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5,
+    0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6,
+    0xed6b, 0xf7bd, 0x6b5e, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a,
+    0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xbdad, 0xdef7, 0xef7b,
     0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
     0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5,
-    0x6b5a, 0xb5ad, 0x5ad6, 0xed6b, 0xd7b5, 0x6b5a, 0xb5ad, 0x5ad6,
+    0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6,
+    0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a,
+    0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xed6b,
+    0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
+    0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5,
+    0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0xded6,
+    0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a,
+    0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5af6, 0xad6b,
+    0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
+    0x5ad6, 0xad6b, 0xd6b5, 0x6bda, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5,
+    0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6,
+    0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a,
+    0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b,
+    0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
+    0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5,
+    0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6bde, 0xb5ad, 0x5ad6,
     0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a,
     0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b,
     0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
     0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5,
     0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6,
-    0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a,
-    0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xbdad, 0x5ad6, 0xef7b,
-    0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
-    0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5,
-    0x6b5a, 0xb5ad, 0x5ad6, 0xef6b, 0xd6b5, 0x7bda, 0xbdef, 0xdef7,
-    0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a,
-    0xbdad, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
-    0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef,
-    0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd,
-    0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
-    0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
-    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0x5af7, 0xad6b,
-    0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
-    0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5,
-    0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xf7b5, 0x6bde, 0xb5ad, 0x5ad6,
-    0xad6b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
-    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
-    0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
-    0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5,
-    0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xbdef, 0xdef7,
-    0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
-    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0xad6b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xd6b5, 0x6b5a,
+    0xb5ad, 0x5ad6, 0xef7b, 0xd6b5, 0x7bda, 0xbdef, 0xdef7, 0xef7b,
     0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
     0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5,
     0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6,
     0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a,
     0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x7bda, 0xbdef, 0xdef7, 0xef7b,
+    0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
+    0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5,
+    0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6,
+    0xad6b, 0xd6b5, 0x7b5a, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
+    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0xd6b5, 0x6b5a, 0xb5ad, 0xdad6, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad,
+    0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5,
+    0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xbdad, 0xdef7,
+    0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 0xdef6, 0xef7b, 0xd6b5, 0x6b5a,
+    0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b,
+    0xd6b5, 0x6b5a, 0xbdad, 0xdef7, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad,
+    0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xef6b, 0xf7bd,
+    0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
+    0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
+    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
     0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210,
--- a/lib/unictype/combiningclass.h
+++ b/lib/unictype/combiningclass.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Combining class of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define combclass_header_0 16
 #define combclass_header_1 2
 #define combclass_header_2 7
@@ -11,7 +11,7 @@
   {
     int level1[2];
     short level2[2 << 9];
-    unsigned char level3[57 << 7];
+    unsigned char level3[71 << 7];
   }
 u_combclass =
 {
@@ -23,13 +23,13 @@
      1536,  1280,  1408,  1664,  1792,  1920,  2048,  2176,
      2304,  2432,    -1,    -1,    -1,    -1,  2560,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,  2688,  2816,
-       -1,  2944,  3072,    -1,  3200,    -1,  3328,  3456,
-     3584,  3712,    -1,  3840,    -1,    -1,    -1,    -1,
-       -1,  3968,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,  2944,  3072,    -1,  3200,  3328,  3456,  3584,
+     3712,  3840,    -1,  3968,    -1,    -1,    -1,    -1,
+       -1,  4096,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,  4096,  4224,  4352,    -1,    -1,    -1,    -1,
-     4480,  4608,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,  4224,  4352,  4480,    -1,    -1,    -1,    -1,
+     4608,  4736,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -58,8 +58,8 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,  4736,  4864,    -1,    -1,
-     4992,  5120,  5248,  5376,    -1,  5504,    -1,  5632,
+       -1,    -1,    -1,    -1,  4864,  4992,    -1,    -1,
+     5120,  5248,  5376,  5504,    -1,  5632,    -1,  5760,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -79,14 +79,14 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,  5760,    -1,
-       -1,    -1,    -1,    -1,  5888,    -1,    -1,    -1,
-       -1,    -1,    -1,  6016,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,  5888,    -1,
+       -1,    -1,    -1,    -1,  6016,    -1,    -1,    -1,
+       -1,    -1,    -1,  6144,    -1,  6272,  6400,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,  6144,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,  6528,  6656,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     6272,  6400,  6528,  6656,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,  6784,    -1,    -1,
+     6784,  6912,  7040,  7168,  7296,  7424,  7552,    -1,
+       -1,  7680,    -1,  7808,  7936,  8064,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -107,6 +107,7 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,  8192,  8320,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -127,19 +128,18 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,  8448,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,  8576,  8704,  8832,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,  6912,  7040,  7168,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,  8960,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -290,7 +290,7 @@
       0,   0,   0,   0, 230, 230, 220, 230,
     230, 220, 230, 230, 230, 220, 220, 220,
      27,  28,  29, 230, 230, 230, 220, 230,
-    230, 220, 220, 230, 230, 230, 230,   0,
+    230, 220, 220, 230, 230, 230, 230, 230,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
@@ -569,6 +569,22 @@
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
+    230, 230, 230, 230, 230, 220, 220, 220,
+    220, 220, 220, 230, 230, 220,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   7,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   9,   0,   0,   0,
@@ -626,7 +642,7 @@
     230,   0,   1,   1,   1,   1,   1,   1,
       1,   0,   0,   0,   0, 220,   0,   0,
       0,   0,   0,   0, 230,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
+    230, 230,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
@@ -639,9 +655,9 @@
     230, 230, 220, 230, 230, 234, 214, 220,
     202, 230, 230, 230, 230, 230, 230, 230,
     230, 230, 230, 230, 230, 230, 230, 230,
-    230, 230, 230, 230, 230, 230, 230,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
+    230, 230, 230, 230, 230, 230, 230, 230,
+    230, 230, 230, 230, 230, 230, 230, 230,
+    230, 230, 230, 230, 230, 230,   0,   0,
       0,   0,   0,   0, 233, 220, 230, 220,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
@@ -887,8 +903,8 @@
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
-    230, 230, 230, 230, 230, 230, 230,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
+    230, 230, 230, 230, 230, 230, 230, 220,
+    220, 220, 220, 220, 220, 220,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
@@ -916,6 +932,38 @@
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0, 220,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+    220,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0, 230, 230,
+    230, 230, 230,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0, 220,   0, 230,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
@@ -939,6 +987,22 @@
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0, 230, 220,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   9,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
@@ -946,7 +1010,7 @@
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   9,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
@@ -977,7 +1041,7 @@
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   7,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
@@ -1001,6 +1065,102 @@
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   9,   7,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   7,   9,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   7,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   9,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0, 230, 230,
+    230, 230, 230, 230, 230,   0,   0,   0,
+    230, 230, 230, 230, 230,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   9,   7,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   9,
+      7,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   9,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   9,   7,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
@@ -1023,6 +1183,54 @@
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      1,   1,   1,   1,   1,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+    230, 230, 230, 230, 230, 230, 230,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   1,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0, 216, 216,   1,
       1,   1,   0,   0,   0, 226, 216, 216,
     216, 216, 216,   0,   0,   0,   0,   0,
@@ -1058,6 +1266,22 @@
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+    220, 220, 220, 220, 220, 220, 220,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0
   }
 };
--- a/lib/unictype/ctype_alnum.h
+++ b/lib/unictype/ctype_alnum.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* ISO C <ctype.h> like properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[3];
     short level2[3 << 7];
-    /*unsigned*/ int level3[54 << 4];
+    /*unsigned*/ int level3[61 << 4];
   }
 u_is_alnum =
 {
@@ -153,22 +153,22 @@
         4 +   384 * sizeof (short) / sizeof (int) +   528,
         4 +   384 * sizeof (short) / sizeof (int) +   544,
         4 +   384 * sizeof (short) / sizeof (int) +   560,
-       -1,
         4 +   384 * sizeof (short) / sizeof (int) +   576,
         4 +   384 * sizeof (short) / sizeof (int) +   592,
         4 +   384 * sizeof (short) / sizeof (int) +   608,
-       -1,
         4 +   384 * sizeof (short) / sizeof (int) +   624,
        -1,
-       -1,
         4 +   384 * sizeof (short) / sizeof (int) +   640,
-       -1,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   656,
+        4 +   384 * sizeof (short) / sizeof (int) +   672,
+        4 +   384 * sizeof (short) / sizeof (int) +   688,
+        4 +   384 * sizeof (short) / sizeof (int) +   704,
+        4 +   384 * sizeof (short) / sizeof (int) +   720,
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
-        4 +   384 * sizeof (short) / sizeof (int) +   656,
-        4 +   384 * sizeof (short) / sizeof (int) +   672,
+        4 +   384 * sizeof (short) / sizeof (int) +   736,
+        4 +   384 * sizeof (short) / sizeof (int) +   752,
        -1,
        -1,
        -1,
@@ -176,7 +176,7 @@
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
-        4 +   384 * sizeof (short) / sizeof (int) +   688,
+        4 +   384 * sizeof (short) / sizeof (int) +   768,
        -1,
        -1,
        -1,
@@ -203,9 +203,9 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
-        4 +   384 * sizeof (short) / sizeof (int) +   704,
+        4 +   384 * sizeof (short) / sizeof (int) +   784,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   720,
+        4 +   384 * sizeof (short) / sizeof (int) +   800,
        -1,
        -1,
        -1,
@@ -238,12 +238,13 @@
        -1,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   736,
+        4 +   384 * sizeof (short) / sizeof (int) +   816,
        -1,
        -1,
        -1,
        -1,
        -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   832,
        -1,
        -1,
        -1,
@@ -255,9 +256,8 @@
        -1,
        -1,
        -1,
-       -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   752,
-        4 +   384 * sizeof (short) / sizeof (int) +   768,
+        4 +   384 * sizeof (short) / sizeof (int) +   848,
+        4 +   384 * sizeof (short) / sizeof (int) +   864,
        -1,
        -1,
        -1,
@@ -266,11 +266,11 @@
        -1,
        -1,
        -1,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   880,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   784,
-        4 +   384 * sizeof (short) / sizeof (int) +   800,
+        4 +   384 * sizeof (short) / sizeof (int) +   896,
+        4 +   384 * sizeof (short) / sizeof (int) +   912,
        -1,
        -1,
        -1,
@@ -361,7 +361,7 @@
         4 +   384 * sizeof (short) / sizeof (int) +   336,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
-        4 +   384 * sizeof (short) / sizeof (int) +   816,
+        4 +   384 * sizeof (short) / sizeof (int) +   928,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
@@ -369,8 +369,8 @@
         4 +   384 * sizeof (short) / sizeof (int) +   336,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
-        4 +   384 * sizeof (short) / sizeof (int) +   832,
-        4 +   384 * sizeof (short) / sizeof (int) +   848,
+        4 +   384 * sizeof (short) / sizeof (int) +   944,
+        4 +   384 * sizeof (short) / sizeof (int) +   960,
        -1,
        -1,
        -1,
@@ -403,7 +403,7 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
-        4 +   384 * sizeof (short) / sizeof (int) +   848,
+        4 +   384 * sizeof (short) / sizeof (int) +   960,
        -1,
        -1
   },
@@ -414,28 +414,28 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x0003FFC3, 0x0000501F,
-    0x00000000, 0x00000000, 0x00000020, 0x3CDF0000,
+    0x00000000, 0x00000000, 0x00000020, 0xBCDF0000,
     0xFFFFD740, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFBFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE00FF, 0x027FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFEFFFF, 0x027FFFFF, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0xFFFF0000, 0x000707FF,
     0x00000000, 0xFFFFFFFF, 0x000007FF, 0xFFFEC3FF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x002FFFFF, 0x9FFFC060,
     0xFFFD0000, 0x0000FFFF, 0xFFFFE000, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0002003F, 0xFFFFFFFF, 0x043007FF,
     0x043FFFFF, 0x00000110, 0x01FFFFFF, 0x00000000,
-    0x00000000, 0x00001FFD, 0x00000000, 0x00000000,
-    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFEFEFFC3,
-    0xFFF99FE0, 0x23C5FDFF, 0xB0004000, 0x0003FFC3,
+    0x00000000, 0x0007FFFF, 0x00000000, 0x00000000,
+    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFFFEFFC3,
+    0xFFF99FE1, 0x23C5FDFF, 0xB0004000, 0x0003FFC3,
     0xFFF987E0, 0x036DFDFF, 0x5E000000, 0x001CFFC0,
     0xFFFBBFE0, 0x23EDFDFF, 0x00010000, 0x0000FFC3,
     0xFFF99FE0, 0x23EDFDFF, 0xB0000000, 0x0002FFC3,
     0xD63DC7E8, 0x03FFC718, 0x00010000, 0x0000FFC0,
-    0xFFFDDFE0, 0x23EFFDFF, 0x03000000, 0x0000FFC3,
+    0xFFFDDFE0, 0x23FFFDFF, 0x03000000, 0x0000FFC3,
     0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x0006FFC3,
     0xFFFDDFE0, 0x27FFFFFF, 0x00004000, 0xFC00FFC3,
-    0xFC7FFFE0, 0x2FFBFFFF, 0x0000007F, 0x00000000,
+    0xFC7FFFE0, 0x2FFBFFFF, 0x0000007F, 0x0000FFC0,
     0xFFFFFFFE, 0x07FF7FFF, 0x03FF7FBF, 0x00000000,
     0xFEF02596, 0x200DECAE, 0xF3FF005F, 0x00000000,
     0x00000001, 0x000003FF, 0xFFFFFEFF, 0x00001FFF,
@@ -453,12 +453,12 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF9FFF,
-    0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x0001C7FF,
+    0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x01FFC7FF,
     0x0003DFFF, 0x0003FFFF, 0x0003FFFF, 0x0001DFFF,
     0xFFFFFFFF, 0x000FFFFF, 0x10800000, 0x000003FF,
     0x03FF0000, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFF05FF, 0xFFFFFFFF, 0x003FFFFF,
-    0x1FFFFFFF, 0x00000000, 0xFFFFFFC0, 0x001F3FFF,
+    0x7FFFFFFF, 0x00000000, 0xFFFFFFC0, 0x001F3FFF,
     0xFFFFFFFF, 0x00000FFF, 0x03FF00FE, 0x00000000,
     0x007FFFFF, 0xFFFFFFFF, 0x001FFFFF, 0x00000000,
     0x03FF03FF, 0x00000080, 0x00000000, 0x00000000,
@@ -509,16 +509,16 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFF1FFF, 0x00000FFF, 0xFFFFFFFF, 0x80007FFF,
-    0x00FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF,
+    0x3FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF,
     0xFF800000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000F79FF, 0x000007FF, 0x00000000, 0xFF000000,
+    0xFFFF79FF, 0x00033FFF, 0x00000000, 0xFF800000,
     0xFFFFF7BB, 0x00000007, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFC, 0x000FFFFF, 0x03FF0000, 0x08FC0000,
     0xFFFFFFFF, 0xFFFF003F, 0x0000007F, 0x1FFFFFFF,
-    0xFFFFFFF0, 0x0007FFFF, 0x03FF8000, 0x00000000,
-    0xFFFFFFFF, 0x000001FF, 0x03FF0FF7, 0x047FFFFF,
+    0xFFFFFFF0, 0x0007FFFF, 0x03FF8000, 0x7FFFFFDF,
+    0xFFFFFFFF, 0x000001FF, 0x03FF0FF7, 0xC47FFFFF,
     0xFFFFFFFF, 0x3E62FFFF, 0x38000005, 0x001C07FF,
-    0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
+    0x007E7E7E, 0xFFFF7F7F, 0xF7FFFFFF, 0x00000030,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x03FF0007,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -546,48 +546,68 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x1FFFFFFF, 0xFFFFFFFF, 0x0001FFFF, 0x00000000,
-    0x7FFFFFFF, 0xFFFF0000, 0x000007FF, 0x00000000,
+    0xFFFFFFFF, 0xFFFF0000, 0xFFFF07FF, 0x003FFFFF,
     0x3FFFFFFF, 0xFFFFFFFF, 0x003EFF0F, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x000003FF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFF00FF, 0xFFFFFFFF, 0x0000000F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFD3F, 0x91BFFFFF, 0x003FFFFF, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0x007FFFFF, 0x003FFFFF, 0x000000FF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFD3F, 0x91BFFFFF, 0x003FFFFF, 0x007FFFFF,
+    0x7FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x003FFFFF, 0x03FFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xC0FFFFFF, 0x00000000, 0x00000000,
     0xFEEF0001, 0x000FFFFF, 0x00000000, 0x1FFFFFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x1FFFFFFF, 0x00000000, 0xFFFFFEFF, 0x0000001F,
     0xFFFFFFFF, 0x003FFFFF, 0x003FFFFF, 0x0007FFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x0003FFFF, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x000001FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFF8, 0x00FFFFFF, 0x00000000, 0x0000FFC0,
     0xFFFFFFF8, 0x0000FFFF, 0xFFFF0000, 0x03FF01FF,
-    0xFFFFFFF8, 0xFFC0007F, 0x00000000, 0x00000000,
-    0xFFFFFFF8, 0x0007FFFF, 0x03FF001E, 0x00000000,
+    0xFFFFFFF8, 0xFFC0007F, 0xFFFF0000, 0x0047FFFF,
+    0xFFFFFFF8, 0x0007FFFF, 0x07FF001E, 0x00000000,
+    0xFFFBFFFF, 0x00000FFF, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0x7FFFFFFF, 0x03FF0000,
+    0xFFF99FE0, 0x23EDFDFF, 0xE0000000, 0x00000003,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x0000FFFF, 0x03FF00B0, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x00007FFF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x0000FFFF, 0x03FF0010, 0x00000000,
     0xFFFFFFFF, 0x000007FF, 0x000003FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x800003FF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0x01FFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x01FFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000007,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0x00007FFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0x01FFFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x01FFFFFF, 0x7FFFFFFF, 0x000003FF,
+    0x00000000, 0x00000000, 0xFFFF0000, 0x00003FFF,
+    0xFFFFFFFF, 0x0000FFFF, 0x03FF000F, 0xE0FFFFF8,
+    0x0000FFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x0001001F, 0x00000000,
@@ -596,6 +616,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFF07FF,
+    0x03FF01FF, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF,
     0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF,
     0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF,
@@ -604,6 +628,10 @@
     0xFFFFFFFF, 0xFFFFFF3F, 0xF7FFFFFD, 0xF7FFFFFF,
     0xFFDFFFFF, 0xFFDFFFFF, 0xFFFF7FFF, 0xFFFF7FFF,
     0xFFFFFDFF, 0xFFFFFDFF, 0xFFFFCFF7, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000001F, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFEF, 0x0AF7FE96, 0xAA96EA84, 0x5EF7F796,
     0x0FFFFBFF, 0x0FFFFBEE, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/ctype_alpha.h
+++ b/lib/unictype/ctype_alpha.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* ISO C <ctype.h> like properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[3];
     short level2[3 << 7];
-    /*unsigned*/ int level3[54 << 4];
+    /*unsigned*/ int level3[61 << 4];
   }
 u_is_alpha =
 {
@@ -153,22 +153,22 @@
         4 +   384 * sizeof (short) / sizeof (int) +   528,
         4 +   384 * sizeof (short) / sizeof (int) +   544,
         4 +   384 * sizeof (short) / sizeof (int) +   560,
-       -1,
         4 +   384 * sizeof (short) / sizeof (int) +   576,
         4 +   384 * sizeof (short) / sizeof (int) +   592,
         4 +   384 * sizeof (short) / sizeof (int) +   608,
-       -1,
         4 +   384 * sizeof (short) / sizeof (int) +   624,
        -1,
-       -1,
         4 +   384 * sizeof (short) / sizeof (int) +   640,
-       -1,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   656,
+        4 +   384 * sizeof (short) / sizeof (int) +   672,
+        4 +   384 * sizeof (short) / sizeof (int) +   688,
+        4 +   384 * sizeof (short) / sizeof (int) +   704,
+        4 +   384 * sizeof (short) / sizeof (int) +   720,
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
-        4 +   384 * sizeof (short) / sizeof (int) +   656,
-        4 +   384 * sizeof (short) / sizeof (int) +   672,
+        4 +   384 * sizeof (short) / sizeof (int) +   736,
+        4 +   384 * sizeof (short) / sizeof (int) +   752,
        -1,
        -1,
        -1,
@@ -176,7 +176,7 @@
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
-        4 +   384 * sizeof (short) / sizeof (int) +   688,
+        4 +   384 * sizeof (short) / sizeof (int) +   768,
        -1,
        -1,
        -1,
@@ -203,9 +203,9 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
-        4 +   384 * sizeof (short) / sizeof (int) +   704,
+        4 +   384 * sizeof (short) / sizeof (int) +   784,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   720,
+        4 +   384 * sizeof (short) / sizeof (int) +   800,
        -1,
        -1,
        -1,
@@ -238,12 +238,13 @@
        -1,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   736,
+        4 +   384 * sizeof (short) / sizeof (int) +   816,
        -1,
        -1,
        -1,
        -1,
        -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   832,
        -1,
        -1,
        -1,
@@ -255,9 +256,8 @@
        -1,
        -1,
        -1,
-       -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   752,
-        4 +   384 * sizeof (short) / sizeof (int) +   768,
+        4 +   384 * sizeof (short) / sizeof (int) +   848,
+        4 +   384 * sizeof (short) / sizeof (int) +   864,
        -1,
        -1,
        -1,
@@ -266,11 +266,11 @@
        -1,
        -1,
        -1,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   880,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   784,
-        4 +   384 * sizeof (short) / sizeof (int) +   800,
+        4 +   384 * sizeof (short) / sizeof (int) +   896,
+        4 +   384 * sizeof (short) / sizeof (int) +   912,
        -1,
        -1,
        -1,
@@ -361,7 +361,7 @@
         4 +   384 * sizeof (short) / sizeof (int) +   336,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
-        4 +   384 * sizeof (short) / sizeof (int) +   816,
+        4 +   384 * sizeof (short) / sizeof (int) +   928,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
@@ -369,8 +369,8 @@
         4 +   384 * sizeof (short) / sizeof (int) +   336,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
-        4 +   384 * sizeof (short) / sizeof (int) +   832,
-        4 +   384 * sizeof (short) / sizeof (int) +   848,
+        4 +   384 * sizeof (short) / sizeof (int) +   944,
+        4 +   384 * sizeof (short) / sizeof (int) +   960,
        -1,
        -1,
        -1,
@@ -403,7 +403,7 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
-        4 +   384 * sizeof (short) / sizeof (int) +   848,
+        4 +   384 * sizeof (short) / sizeof (int) +   960,
        -1,
        -1
   },
@@ -414,28 +414,28 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x0003FFC3, 0x0000501F,
-    0x00000000, 0x00000000, 0x00000020, 0x3CDF0000,
+    0x00000000, 0x00000000, 0x00000020, 0xBCDF0000,
     0xFFFFD740, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFBFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE00FF, 0x027FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFEFFFF, 0x027FFFFF, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0xFFFF0000, 0x000707FF,
     0x00000000, 0xFFFFFFFF, 0x000007FF, 0xFFFEC3FF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x002FFFFF, 0x9FFFC060,
     0xFFFD0000, 0x0000FFFF, 0xFFFFE000, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0002003F, 0xFFFFFFFF, 0x043007FF,
     0x043FFFFF, 0x00000110, 0x01FFFFFF, 0x00000000,
-    0x00000000, 0x00001FFD, 0x00000000, 0x00000000,
-    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFEFEFFC3,
-    0xFFF99FE0, 0x23C5FDFF, 0xB0004000, 0x0003FFC3,
+    0x00000000, 0x0007FFFF, 0x00000000, 0x00000000,
+    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFFFEFFC3,
+    0xFFF99FE1, 0x23C5FDFF, 0xB0004000, 0x0003FFC3,
     0xFFF987E0, 0x036DFDFF, 0x5E000000, 0x001CFFC0,
     0xFFFBBFE0, 0x23EDFDFF, 0x00010000, 0x0000FFC3,
     0xFFF99FE0, 0x23EDFDFF, 0xB0000000, 0x0002FFC3,
     0xD63DC7E8, 0x03FFC718, 0x00010000, 0x0000FFC0,
-    0xFFFDDFE0, 0x23EFFDFF, 0x03000000, 0x0000FFC3,
+    0xFFFDDFE0, 0x23FFFDFF, 0x03000000, 0x0000FFC3,
     0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x0006FFC3,
     0xFFFDDFE0, 0x27FFFFFF, 0x00004000, 0xFC00FFC3,
-    0xFC7FFFE0, 0x2FFBFFFF, 0x0000007F, 0x00000000,
+    0xFC7FFFE0, 0x2FFBFFFF, 0x0000007F, 0x0000FFC0,
     0xFFFFFFFE, 0x07FF7FFF, 0x03FF7FBF, 0x00000000,
     0xFEF02596, 0x200DECAE, 0xF3FF005F, 0x00000000,
     0x00000001, 0x000003FF, 0xFFFFFEFF, 0x00001FFF,
@@ -453,12 +453,12 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF9FFF,
-    0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x0001C7FF,
+    0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x01FFC7FF,
     0x0003DFFF, 0x0003FFFF, 0x0003FFFF, 0x0001DFFF,
     0xFFFFFFFF, 0x000FFFFF, 0x10800000, 0x000003FF,
     0x03FF0000, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFF05FF, 0xFFFFFFFF, 0x003FFFFF,
-    0x1FFFFFFF, 0x00000000, 0xFFFFFFC0, 0x001F3FFF,
+    0x7FFFFFFF, 0x00000000, 0xFFFFFFC0, 0x001F3FFF,
     0xFFFFFFFF, 0x00000FFF, 0x03FF00FE, 0x00000000,
     0x007FFFFF, 0xFFFFFFFF, 0x001FFFFF, 0x00000000,
     0x03FF03FF, 0x00000080, 0x00000000, 0x00000000,
@@ -509,16 +509,16 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFF1FFF, 0x00000FFF, 0xFFFFFFFF, 0x80007FFF,
-    0x00FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF,
+    0x3FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF,
     0xFF800000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000F79FF, 0x000007FF, 0x00000000, 0xFF000000,
+    0xFFFF79FF, 0x00033FFF, 0x00000000, 0xFF800000,
     0xFFFFF7BB, 0x00000007, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFC, 0x000FFFFF, 0x03FF0000, 0x08FC0000,
     0xFFFFFFFF, 0xFFFF003F, 0x0000007F, 0x1FFFFFFF,
-    0xFFFFFFF0, 0x0007FFFF, 0x03FF8000, 0x00000000,
-    0xFFFFFFFF, 0x000001FF, 0x03FF0FF7, 0x047FFFFF,
+    0xFFFFFFF0, 0x0007FFFF, 0x03FF8000, 0x7FFFFFDF,
+    0xFFFFFFFF, 0x000001FF, 0x03FF0FF7, 0xC47FFFFF,
     0xFFFFFFFF, 0x3E62FFFF, 0x38000005, 0x001C07FF,
-    0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
+    0x007E7E7E, 0xFFFF7F7F, 0xF7FFFFFF, 0x00000030,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x03FF0007,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -546,48 +546,68 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x1FFFFFFF, 0xFFFFFFFF, 0x0001FFFF, 0x00000000,
-    0x7FFFFFFF, 0xFFFF0000, 0x000007FF, 0x00000000,
+    0xFFFFFFFF, 0xFFFF0000, 0xFFFF07FF, 0x003FFFFF,
     0x3FFFFFFF, 0xFFFFFFFF, 0x003EFF0F, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x000003FF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFF00FF, 0xFFFFFFFF, 0x0000000F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFD3F, 0x91BFFFFF, 0x003FFFFF, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0x007FFFFF, 0x003FFFFF, 0x000000FF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFD3F, 0x91BFFFFF, 0x003FFFFF, 0x007FFFFF,
+    0x7FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x003FFFFF, 0x03FFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xC0FFFFFF, 0x00000000, 0x00000000,
     0xFEEF0001, 0x000FFFFF, 0x00000000, 0x1FFFFFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x1FFFFFFF, 0x00000000, 0xFFFFFEFF, 0x0000001F,
     0xFFFFFFFF, 0x003FFFFF, 0x003FFFFF, 0x0007FFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x0003FFFF, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x000001FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFF8, 0x00FFFFFF, 0x00000000, 0x0000FFC0,
     0xFFFFFFF8, 0x0000FFFF, 0xFFFF0000, 0x03FF01FF,
-    0xFFFFFFF8, 0xFFC0007F, 0x00000000, 0x00000000,
-    0xFFFFFFF8, 0x0007FFFF, 0x03FF001E, 0x00000000,
+    0xFFFFFFF8, 0xFFC0007F, 0xFFFF0000, 0x0047FFFF,
+    0xFFFFFFF8, 0x0007FFFF, 0x07FF001E, 0x00000000,
+    0xFFFBFFFF, 0x00000FFF, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0x7FFFFFFF, 0x03FF0000,
+    0xFFF99FE0, 0x23EDFDFF, 0xE0000000, 0x00000003,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x0000FFFF, 0x03FF00B0, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x00007FFF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x0000FFFF, 0x03FF0010, 0x00000000,
     0xFFFFFFFF, 0x000007FF, 0x000003FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x800003FF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0x01FFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x01FFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000007,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0x00007FFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0x01FFFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x01FFFFFF, 0x7FFFFFFF, 0x000003FF,
+    0x00000000, 0x00000000, 0xFFFF0000, 0x00003FFF,
+    0xFFFFFFFF, 0x0000FFFF, 0x03FF000F, 0xE0FFFFF8,
+    0x0000FFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x0001001F, 0x00000000,
@@ -596,6 +616,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFF07FF,
+    0x03FF01FF, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF,
     0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF,
     0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF,
@@ -604,6 +628,10 @@
     0xFFFFFFFF, 0xFFFFFF3F, 0xF7FFFFFD, 0xF7FFFFFF,
     0xFFDFFFFF, 0xFFDFFFFF, 0xFFFF7FFF, 0xFFFF7FFF,
     0xFFFFFDFF, 0xFFFFFDFF, 0xFFFFCFF7, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000001F, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFEF, 0x0AF7FE96, 0xAA96EA84, 0x5EF7F796,
     0x0FFFFBFF, 0x0FFFFBEE, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/ctype_blank.h
+++ b/lib/unictype/ctype_blank.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* ISO C <ctype.h> like properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/ctype_cntrl.h
+++ b/lib/unictype/ctype_cntrl.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* ISO C <ctype.h> like properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/ctype_digit.h
+++ b/lib/unictype/ctype_digit.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* ISO C <ctype.h> like properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/ctype_graph.h
+++ b/lib/unictype/ctype_graph.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* ISO C <ctype.h> like properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[17];
     short level2[5 << 7];
-    /*unsigned*/ int level3[64 << 4];
+    /*unsigned*/ int level3[71 << 4];
   }
 u_is_graph =
 {
@@ -55,13 +55,13 @@
        18 +   640 * sizeof (short) / sizeof (int) +   256,
        18 +   640 * sizeof (short) / sizeof (int) +   272,
        18 +   640 * sizeof (short) / sizeof (int) +   288,
+       18 +   640 * sizeof (short) / sizeof (int) +   160,
+       18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   304,
-       18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   320,
        18 +   640 * sizeof (short) / sizeof (int) +   336,
        18 +   640 * sizeof (short) / sizeof (int) +   352,
        18 +   640 * sizeof (short) / sizeof (int) +   368,
-       18 +   640 * sizeof (short) / sizeof (int) +   384,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
@@ -74,7 +74,7 @@
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
-       18 +   640 * sizeof (short) / sizeof (int) +   400,
+       18 +   640 * sizeof (short) / sizeof (int) +   384,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
@@ -115,13 +115,13 @@
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
-       18 +   640 * sizeof (short) / sizeof (int) +   416,
+       18 +   640 * sizeof (short) / sizeof (int) +   400,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
+       18 +   640 * sizeof (short) / sizeof (int) +   416,
        18 +   640 * sizeof (short) / sizeof (int) +   432,
        18 +   640 * sizeof (short) / sizeof (int) +   448,
        18 +   640 * sizeof (short) / sizeof (int) +   464,
-       18 +   640 * sizeof (short) / sizeof (int) +   480,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
@@ -143,7 +143,7 @@
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
        -1,
        -1,
        -1,
@@ -161,28 +161,28 @@
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
+       18 +   640 * sizeof (short) / sizeof (int) +   496,
        18 +   640 * sizeof (short) / sizeof (int) +   512,
        18 +   640 * sizeof (short) / sizeof (int) +   528,
        18 +   640 * sizeof (short) / sizeof (int) +   544,
        18 +   640 * sizeof (short) / sizeof (int) +   560,
        18 +   640 * sizeof (short) / sizeof (int) +   576,
        18 +   640 * sizeof (short) / sizeof (int) +   592,
-       -1,
        18 +   640 * sizeof (short) / sizeof (int) +   608,
        18 +   640 * sizeof (short) / sizeof (int) +   624,
        18 +   640 * sizeof (short) / sizeof (int) +   640,
        18 +   640 * sizeof (short) / sizeof (int) +   656,
        18 +   640 * sizeof (short) / sizeof (int) +   672,
-       -1,
-       -1,
        18 +   640 * sizeof (short) / sizeof (int) +   688,
-       -1,
-       -1,
+       18 +   640 * sizeof (short) / sizeof (int) +   704,
+       18 +   640 * sizeof (short) / sizeof (int) +   720,
+       18 +   640 * sizeof (short) / sizeof (int) +   736,
+       18 +   640 * sizeof (short) / sizeof (int) +   752,
        -1,
        -1,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
-       18 +   640 * sizeof (short) / sizeof (int) +   704,
-       18 +   640 * sizeof (short) / sizeof (int) +   720,
+       18 +   640 * sizeof (short) / sizeof (int) +   768,
+       18 +   640 * sizeof (short) / sizeof (int) +   784,
        -1,
        -1,
        -1,
@@ -190,7 +190,7 @@
        -1,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
-       18 +   640 * sizeof (short) / sizeof (int) +   736,
+       18 +   640 * sizeof (short) / sizeof (int) +   800,
        -1,
        -1,
        -1,
@@ -217,9 +217,9 @@
        -1,
        -1,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
-       18 +   640 * sizeof (short) / sizeof (int) +   752,
+       18 +   640 * sizeof (short) / sizeof (int) +   816,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   768,
+       18 +   640 * sizeof (short) / sizeof (int) +   832,
        -1,
        -1,
        -1,
@@ -252,13 +252,13 @@
        -1,
        -1,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   784,
+       18 +   640 * sizeof (short) / sizeof (int) +   848,
        -1,
        -1,
        -1,
        -1,
        -1,
-       -1,
+       18 +   640 * sizeof (short) / sizeof (int) +   864,
        -1,
        -1,
        -1,
@@ -268,10 +268,10 @@
        -1,
        -1,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   800,
-       18 +   640 * sizeof (short) / sizeof (int) +   816,
-       18 +   640 * sizeof (short) / sizeof (int) +   832,
-       18 +   640 * sizeof (short) / sizeof (int) +   848,
+       18 +   640 * sizeof (short) / sizeof (int) +   880,
+       18 +   640 * sizeof (short) / sizeof (int) +   896,
+       18 +   640 * sizeof (short) / sizeof (int) +   912,
+       18 +   640 * sizeof (short) / sizeof (int) +   928,
        -1,
        -1,
        -1,
@@ -280,15 +280,15 @@
        -1,
        -1,
        -1,
-       -1,
+       18 +   640 * sizeof (short) / sizeof (int) +   944,
        -1,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   864,
-       18 +   640 * sizeof (short) / sizeof (int) +   880,
-       18 +   640 * sizeof (short) / sizeof (int) +   896,
-       18 +   640 * sizeof (short) / sizeof (int) +   912,
-       18 +   640 * sizeof (short) / sizeof (int) +   928,
-       -1,
+       18 +   640 * sizeof (short) / sizeof (int) +   960,
+       18 +   640 * sizeof (short) / sizeof (int) +   976,
+       18 +   640 * sizeof (short) / sizeof (int) +   992,
+       18 +   640 * sizeof (short) / sizeof (int) +  1008,
+       18 +   640 * sizeof (short) / sizeof (int) +  1024,
+       18 +   640 * sizeof (short) / sizeof (int) +  1040,
        -1,
        -1,
        -1,
@@ -375,7 +375,7 @@
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
-       18 +   640 * sizeof (short) / sizeof (int) +   944,
+       18 +   640 * sizeof (short) / sizeof (int) +  1056,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
@@ -383,8 +383,8 @@
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
-       18 +   640 * sizeof (short) / sizeof (int) +   960,
-       18 +   640 * sizeof (short) / sizeof (int) +   976,
+       18 +   640 * sizeof (short) / sizeof (int) +  1072,
+       18 +   640 * sizeof (short) / sizeof (int) +  1088,
        -1,
        -1,
        -1,
@@ -417,10 +417,10 @@
        -1,
        -1,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
-       18 +   640 * sizeof (short) / sizeof (int) +   976,
+       18 +   640 * sizeof (short) / sizeof (int) +  1088,
        -1,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   992,
+       18 +   640 * sizeof (short) / sizeof (int) +  1104,
        -1,
        -1,
        -1,
@@ -675,7 +675,7 @@
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
-       18 +   640 * sizeof (short) / sizeof (int) +  1008
+       18 +   640 * sizeof (short) / sizeof (int) +  1120
   },
   {
     0x00000000, 0xFFFFFFFE, 0xFFFFFFFF, 0x7FFFFFFF,
@@ -684,28 +684,28 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x7CFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFCFFFFFF,
     0xFFFFD7F0, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE00FF, 0xFE7FFFFF, 0xFFFFFFFE,
-    0xFFFE86FF, 0xFFFFFFFF, 0xFFFF00FF, 0x001F07FF,
-    0xDFFFFFDF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFEFFFF, 0xFE7FFFFF, 0xFFFFFFFE,
+    0xFFFEE6FF, 0xFFFFFFFF, 0xFFFF00FF, 0x001F07FF,
+    0xDFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFBFFF, 0xFFFFFFFF, 0xFFFFE7FF, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0003FFFF, 0xFFFFFFFF, 0x07FFFFFF,
     0xFFFFFFFF, 0x7FFF3FFF, 0x4FFFFFFF, 0x00000000,
-    0x00000000, 0x00001FFD, 0x00000000, 0x7FFFFFF0,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFEFFFFFF,
-    0xFFF99FEE, 0xF3C5FDFF, 0xB080799F, 0x0FFFFFCF,
+    0x00000000, 0x0007FFFF, 0x00000000, 0xFFFFFFF0,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFF99FEF, 0xF3C5FDFF, 0xB080799F, 0x0FFFFFCF,
     0xFFF987EE, 0xD36DFDFF, 0x5E023987, 0x003FFFC0,
     0xFFFBBFEE, 0xF3EDFDFF, 0x00013BBF, 0x0003FFCF,
     0xFFF99FEE, 0xF3EDFDFF, 0xB0C0399F, 0x00FFFFCF,
     0xD63DC7EC, 0xC3FFC718, 0x00813DC7, 0x07FFFFC0,
-    0xFFFDDFEE, 0xE3EFFDFF, 0x03603DDF, 0xFF00FFCF,
-    0xFFFDDFEC, 0xF3EFFDFF, 0x40603DDF, 0x0006FFCF,
-    0xFFFDDFEC, 0xE7FFFFFF, 0x00807DDF, 0xFE3FFFCF,
-    0xFC7FFFEC, 0x2FFBFFFF, 0xFF5F847F, 0x001C0000,
+    0xFFFDDFEF, 0xE3FFFDFF, 0x03603DDF, 0xFF00FFCF,
+    0xFFFDDFEE, 0xF3EFFDFF, 0x40603DDF, 0x0006FFCF,
+    0xFFFDDFEE, 0xE7FFFFFF, 0x00807DDF, 0xFE3FFFCF,
+    0xFC7FFFEC, 0x2FFBFFFF, 0xFF5F847F, 0x001CFFC0,
     0xFFFFFFFE, 0x87FFFFFF, 0x0FFFFFFF, 0x00000000,
     0xFEF02596, 0x3BFFECAE, 0xF3FF3F5F, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFEFF, 0xFFFE1FFF,
@@ -723,50 +723,46 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x1FFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x0001FFFF,
+    0x1FFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x01FFFFFF,
     0x001FDFFF, 0x007FFFFF, 0x000FFFFF, 0x000DDFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x3FFFFFFF, 0x03FF03FF,
     0x03FF7FFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFF07FF, 0xFFFFFFFF, 0x003FFFFF,
-    0x1FFFFFFF, 0x0FFF0FFF, 0xFFFFFFF1, 0x001F3FFF,
+    0x7FFFFFFF, 0x0FFF0FFF, 0xFFFFFFF1, 0x001F3FFF,
     0xFFFFFFFF, 0xFFFF0FFF, 0xC7FF03FF, 0xFFFFFFFF,
     0xCFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF, 0x9FFFFFFF,
-    0x03FF03FF, 0x00003FFF, 0x00000000, 0x00000000,
+    0x03FF03FF, 0x7FFF3FFF, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF0FFF, 0x1FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xF00FFFFF,
     0xFFFFFFFF, 0xF8FFFFFF, 0xFFFFE3FF, 0xFFFFFFFF,
-    0x00000000, 0x00000000, 0xFFFF00FF, 0x007FFFFF,
+    0x00000000, 0x00000000, 0xFFFF00FF, 0x037FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xF000007F,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xF03FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF,
     0xFFFFFFFF, 0xFFDFFFFF, 0xEFCFFFDF, 0x7FDCFFFF,
     0xFFFFF880, 0xFFFFFCFF, 0x7FFFFFFF, 0xFFF3FFDF,
-    0x1FFF7FFF, 0x07FFFFFF, 0xFFFF0000, 0x0001FFFF,
+    0x1FFF7FFF, 0x3FFFFFFF, 0xFFFF0000, 0x0001FFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFF03FF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF,
     0xFFFFFFFF, 0x0000007F, 0x000007FF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x03FF1FFF, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFCFFFFF,
+    0xFF3FFFFF, 0xE3FFFFFF, 0x0003FDFF, 0x00000000,
     0xFFFFFFFF, 0xFFFF7FFF, 0x7FFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFE0FFFFF,
     0xFFFFFFFF, 0xFFFF20BF, 0xFFFFFFFF, 0x800180FF,
     0x007FFFFF, 0x7F7F7F7F, 0x7F7F7F7F, 0xFFFFFFFF,
-    0xFFFFFFFF, 0x0FFFFFFF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x00000007, 0x00000000,
     0xFBFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, 0x0FFF0000,
@@ -791,16 +787,16 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0x00000FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x80FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF,
+    0xBFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000F7FFF, 0x000007FF, 0x00000000, 0xFF000000,
+    0xFFFF7FFF, 0x00033FFF, 0x00000000, 0xFF800000,
     0xFFFFFFFF, 0x03FF0FFF, 0xFFFFFFFF, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x03FFC01F, 0x0FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x800FFFFF, 0x1FFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xC3FFBFFF, 0x00000000,
-    0xFFFFFFFF, 0x007FFFFF, 0xF3FF3FFF, 0x0FFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xC3FFBFFF, 0x7FFFFFFF,
+    0xFFFFFFFF, 0x007FFFFF, 0xF3FF3FFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xF8000007, 0x007FFFFF,
-    0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
+    0x007E7E7E, 0xFFFF7F7F, 0xFFFFFFFF, 0x00000030,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x03FF3FFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -814,30 +810,34 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF0000, 0xFFFFFFFF,
     0xFFFCFFFF, 0xFFFFFFFF, 0x000000FF, 0x3FFF0000,
-    0x03FFFFFF, 0xFFFF007F, 0xFFF7FFFF, 0xFFDF0F7F,
+    0x03FFFFFF, 0xFFFF3FFF, 0xFFF7FFFF, 0xFFDF0F7F,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x9FFFFFFF,
     0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0x7FFFFFFF, 0x1CFCFCFC, 0x3E007F7F,
     0xFFFFEFFF, 0xB7FFFF7F, 0x3FFF3FFF, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF,
     0xFFFFFF87, 0xFF8FFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x0FFF07FF, 0x00000000, 0xFFFF0000, 0x3FFFFFFF,
+    0x0FFF1FFF, 0x00000001, 0xFFFF0000, 0x3FFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x1FFFFFFF, 0xFFFFFFFF, 0x0001FFFF, 0x00000000,
-    0x7FFFFFFF, 0xFFFF000F, 0x000007FF, 0x00000000,
+    0x1FFFFFFF, 0xFFFFFFFF, 0x0001FFFF, 0x0FFFFFFF,
+    0xFFFFFFFF, 0xFFFF000F, 0xFFFF07FF, 0x07FFFFFF,
     0xBFFFFFFF, 0xFFFFFFFF, 0x003FFF0F, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x000003FF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFF00FF, 0xFFFFFFFF, 0x0000800F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFD3F, 0x91BFFFFF, 0xFFBFFFFF, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0x007FFFFF, 0x003FFFFF, 0x000000FF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFD3F, 0x91BFFFFF, 0xFFBFFFFF, 0xFFFFFFFF,
+    0x7FFFFFFF, 0x0000FF80, 0x00000000, 0x00000000,
     0x8FFFFFFF, 0x83FFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xC0FFFFFF, 0x00000000, 0x00000000,
     0xFEEFF06F, 0x870FFFFF, 0x01FF00FF, 0xFFFFFFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x00000000, 0xFFFFFFFF, 0x007FF87F,
     0xFFFFFFFF, 0xFE3FFFFF, 0xFF3FFFFF, 0xFF07FFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x1E03FFFF, 0x0000FE00, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x000001FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -846,19 +846,35 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFC3FFF, 0x0000FFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFC3FFF, 0x8000FFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF0003, 0x03FF01FF,
-    0xFFFFFFFF, 0xFFDFFFFF, 0x0000000F, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x03FF01FF, 0x00000000,
+    0xFFFFFFFF, 0xFFDFFFFF, 0xFFFF000F, 0x007FFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x07FF21FF, 0x001FFFFE,
+    0xFFFBFFFF, 0x3FFFFFFF, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0xFFFFFFFF, 0x03FF07FF,
+    0xFFF99FEE, 0xF3EDFDFF, 0xE080399F, 0x001F1FCF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x03FF00FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFF3FFFFF, 0x000003FF, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x03FF001F, 0x00000000,
     0xFFFFFFFF, 0x00FFFFFF, 0x000003FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x8007FFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0x01FFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000F0007,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x01FFFFFF, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x001F7FFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -866,10 +882,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0x01FFFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x01FFFFFF, 0x7FFFFFFF, 0x0000C3FF,
+    0x00000000, 0x00000000, 0xFFFF0000, 0x003F3FFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFBFF003F, 0xE0FFFFFB,
+    0x0000FFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF001F, 0x7FFFFFFF,
@@ -878,6 +894,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFF07FF,
+    0xF3FF01FF, 0x0000000F, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF,
     0xFFFFFFFF, 0xFFFFFE7F, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -894,25 +914,33 @@
     0xFFFFFFFF, 0xFFFFFF3F, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFCFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x007FFF9F, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFEF, 0x0AF7FE96, 0xAA96EA84, 0x5EF7F796,
     0x0FFFFBFF, 0x0FFFFBEE, 0x00000000, 0x00030000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFF0FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000FFFFF, 0x7FFE7FFF, 0xFFFEFFFE, 0x00000000,
-    0xFFFF07FF, 0xFFFF7FFF, 0xFFFFFFFF, 0xFFFF0FFF,
+    0x000FFFFF, 0xFFFE7FFF, 0xFFFEFFFE, 0x003FFFFF,
+    0xFFFF1FFF, 0xFFFF7FFF, 0xFFFFFFFF, 0xFFFF0FFF,
     0x07FFFFFF, 0x00000000, 0x00000000, 0xFFFFFFC0,
     0xFFFF0007, 0x07FFFFFF, 0x000301FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFBF0001, 0xFFFFFFFF, 0x1FFFFFFF,
-    0x000FFFFF, 0xFFFFFFFF, 0x000007DF, 0x0001FFFF,
-    0xFFFFFFFF, 0x7FFFFFFF, 0xFFFFFFFD, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1EFFFFFF,
-    0xFFFFFFFF, 0x3FFFFFFF, 0xFFFF000F, 0x000000FF,
-    0x00000000, 0x00000000, 0x00000000, 0xF8000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFE1, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000000,
+    0xFFFFFFFF, 0xFFFF1FFF, 0xFFFFFFFF, 0x3FFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFF07FFF, 0x00FFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF07FF, 0xFBFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFEF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFE7, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, 0x000F1FFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x001FFFFF, 0x00000000,
+    0xFFFF0FFF, 0xFFFFFFFF, 0x03FF00FF, 0xFFFFFFFF,
+    0xFFFF00FF, 0x00003FFF, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000,
--- a/lib/unictype/ctype_lower.h
+++ b/lib/unictype/ctype_lower.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* ISO C <ctype.h> like properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[11 << 4];
+    /*unsigned*/ int level3[12 << 4];
   }
 u_is_lower =
 {
@@ -161,7 +161,7 @@
        -1,
        -1,
        -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   176,
        -1,
        -1,
        -1,
@@ -283,13 +283,13 @@
     0x00000000, 0x00200000, 0x80000000, 0xFF7FFFFF,
     0xAAAAAAAA, 0x54AAAAAA, 0xAAAAA955, 0xD4AAAAAA,
     0x46241129, 0xA251212A, 0xB5555B60, 0xAA2CAAAA,
-    0xAAAAAAAA, 0x900AAAA8, 0x0ADFAA85, 0x20268B69,
-    0x00041F09, 0x00000000, 0x00000000, 0x00000000,
+    0xAAAAAAAA, 0x900AAAA8, 0x1ADFAA85, 0x20269B6B,
+    0x40041F89, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000020, 0x388A0000,
-    0x00000000, 0xFFFEF000, 0xAAE37FFF, 0x0927AAAA,
+    0x00000000, 0xFFFEF000, 0xAAE37FFF, 0x092FAAAA,
     0x00000000, 0xFFFF0000, 0xFFFFFFFF, 0xAAAAAAAA,
     0xAAAAA802, 0xAAAAAAAA, 0xAAAAD554, 0xAAAAAAAA,
-    0xAAAAAAAA, 0x000000AA, 0x00000000, 0xFFFFFFFE,
+    0xAAAAAAAA, 0x0000AAAA, 0x00000000, 0xFFFFFFFE,
     0x0000007F, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -312,9 +312,9 @@
     0xFFFFFFFF, 0x000020BF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xAAAAAAAA, 0x00002AAA,
-    0x00AAAAAA, 0x00000000, 0x00000000, 0x00000000,
+    0x0AAAAAAA, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xAAA8AAA8, 0xAAAAAAAA, 0x9400AAAA,
-    0x000A10AA, 0x000002AA, 0x00000000, 0x00000000,
+    0xAA8A10AA, 0x000002AA, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x07FFFFFE, 0x00000000,
@@ -322,6 +322,10 @@
     0x00000000, 0xFFFFFF00, 0x0000FFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/ctype_print.h
+++ b/lib/unictype/ctype_print.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* ISO C <ctype.h> like properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[17];
     short level2[5 << 7];
-    /*unsigned*/ int level3[64 << 4];
+    /*unsigned*/ int level3[71 << 4];
   }
 u_is_print =
 {
@@ -55,13 +55,13 @@
        18 +   640 * sizeof (short) / sizeof (int) +   256,
        18 +   640 * sizeof (short) / sizeof (int) +   272,
        18 +   640 * sizeof (short) / sizeof (int) +   288,
+       18 +   640 * sizeof (short) / sizeof (int) +   160,
+       18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   304,
-       18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   320,
        18 +   640 * sizeof (short) / sizeof (int) +   336,
        18 +   640 * sizeof (short) / sizeof (int) +   352,
        18 +   640 * sizeof (short) / sizeof (int) +   368,
-       18 +   640 * sizeof (short) / sizeof (int) +   384,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
@@ -74,7 +74,7 @@
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
-       18 +   640 * sizeof (short) / sizeof (int) +   400,
+       18 +   640 * sizeof (short) / sizeof (int) +   384,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
@@ -115,13 +115,13 @@
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
-       18 +   640 * sizeof (short) / sizeof (int) +   416,
+       18 +   640 * sizeof (short) / sizeof (int) +   400,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
+       18 +   640 * sizeof (short) / sizeof (int) +   416,
        18 +   640 * sizeof (short) / sizeof (int) +   432,
        18 +   640 * sizeof (short) / sizeof (int) +   448,
        18 +   640 * sizeof (short) / sizeof (int) +   464,
-       18 +   640 * sizeof (short) / sizeof (int) +   480,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
@@ -143,7 +143,7 @@
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
+       18 +   640 * sizeof (short) / sizeof (int) +   480,
        -1,
        -1,
        -1,
@@ -161,28 +161,28 @@
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
+       18 +   640 * sizeof (short) / sizeof (int) +   496,
        18 +   640 * sizeof (short) / sizeof (int) +   512,
        18 +   640 * sizeof (short) / sizeof (int) +   528,
        18 +   640 * sizeof (short) / sizeof (int) +   544,
        18 +   640 * sizeof (short) / sizeof (int) +   560,
        18 +   640 * sizeof (short) / sizeof (int) +   576,
        18 +   640 * sizeof (short) / sizeof (int) +   592,
-       -1,
        18 +   640 * sizeof (short) / sizeof (int) +   608,
        18 +   640 * sizeof (short) / sizeof (int) +   624,
        18 +   640 * sizeof (short) / sizeof (int) +   640,
        18 +   640 * sizeof (short) / sizeof (int) +   656,
        18 +   640 * sizeof (short) / sizeof (int) +   672,
-       -1,
-       -1,
        18 +   640 * sizeof (short) / sizeof (int) +   688,
-       -1,
-       -1,
+       18 +   640 * sizeof (short) / sizeof (int) +   704,
+       18 +   640 * sizeof (short) / sizeof (int) +   720,
+       18 +   640 * sizeof (short) / sizeof (int) +   736,
+       18 +   640 * sizeof (short) / sizeof (int) +   752,
        -1,
        -1,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
-       18 +   640 * sizeof (short) / sizeof (int) +   704,
-       18 +   640 * sizeof (short) / sizeof (int) +   720,
+       18 +   640 * sizeof (short) / sizeof (int) +   768,
+       18 +   640 * sizeof (short) / sizeof (int) +   784,
        -1,
        -1,
        -1,
@@ -190,7 +190,7 @@
        -1,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
-       18 +   640 * sizeof (short) / sizeof (int) +   736,
+       18 +   640 * sizeof (short) / sizeof (int) +   800,
        -1,
        -1,
        -1,
@@ -217,9 +217,9 @@
        -1,
        -1,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
-       18 +   640 * sizeof (short) / sizeof (int) +   752,
+       18 +   640 * sizeof (short) / sizeof (int) +   816,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   768,
+       18 +   640 * sizeof (short) / sizeof (int) +   832,
        -1,
        -1,
        -1,
@@ -252,13 +252,13 @@
        -1,
        -1,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   784,
+       18 +   640 * sizeof (short) / sizeof (int) +   848,
        -1,
        -1,
        -1,
        -1,
        -1,
-       -1,
+       18 +   640 * sizeof (short) / sizeof (int) +   864,
        -1,
        -1,
        -1,
@@ -268,10 +268,10 @@
        -1,
        -1,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   800,
-       18 +   640 * sizeof (short) / sizeof (int) +   816,
-       18 +   640 * sizeof (short) / sizeof (int) +   832,
-       18 +   640 * sizeof (short) / sizeof (int) +   848,
+       18 +   640 * sizeof (short) / sizeof (int) +   880,
+       18 +   640 * sizeof (short) / sizeof (int) +   896,
+       18 +   640 * sizeof (short) / sizeof (int) +   912,
+       18 +   640 * sizeof (short) / sizeof (int) +   928,
        -1,
        -1,
        -1,
@@ -280,15 +280,15 @@
        -1,
        -1,
        -1,
-       -1,
+       18 +   640 * sizeof (short) / sizeof (int) +   944,
        -1,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   864,
-       18 +   640 * sizeof (short) / sizeof (int) +   880,
-       18 +   640 * sizeof (short) / sizeof (int) +   896,
-       18 +   640 * sizeof (short) / sizeof (int) +   912,
-       18 +   640 * sizeof (short) / sizeof (int) +   928,
-       -1,
+       18 +   640 * sizeof (short) / sizeof (int) +   960,
+       18 +   640 * sizeof (short) / sizeof (int) +   976,
+       18 +   640 * sizeof (short) / sizeof (int) +   992,
+       18 +   640 * sizeof (short) / sizeof (int) +  1008,
+       18 +   640 * sizeof (short) / sizeof (int) +  1024,
+       18 +   640 * sizeof (short) / sizeof (int) +  1040,
        -1,
        -1,
        -1,
@@ -375,7 +375,7 @@
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
-       18 +   640 * sizeof (short) / sizeof (int) +   944,
+       18 +   640 * sizeof (short) / sizeof (int) +  1056,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
@@ -383,8 +383,8 @@
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
-       18 +   640 * sizeof (short) / sizeof (int) +   960,
-       18 +   640 * sizeof (short) / sizeof (int) +   976,
+       18 +   640 * sizeof (short) / sizeof (int) +  1072,
+       18 +   640 * sizeof (short) / sizeof (int) +  1088,
        -1,
        -1,
        -1,
@@ -417,10 +417,10 @@
        -1,
        -1,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
-       18 +   640 * sizeof (short) / sizeof (int) +   976,
+       18 +   640 * sizeof (short) / sizeof (int) +  1088,
        -1,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   992,
+       18 +   640 * sizeof (short) / sizeof (int) +  1104,
        -1,
        -1,
        -1,
@@ -675,7 +675,7 @@
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
-       18 +   640 * sizeof (short) / sizeof (int) +  1008
+       18 +   640 * sizeof (short) / sizeof (int) +  1120
   },
   {
     0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF,
@@ -684,28 +684,28 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x7CFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFCFFFFFF,
     0xFFFFD7F0, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE00FF, 0xFE7FFFFF, 0xFFFFFFFE,
-    0xFFFE86FF, 0xFFFFFFFF, 0xFFFF00FF, 0x001F07FF,
-    0xDFFFFFDF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFEFFFF, 0xFE7FFFFF, 0xFFFFFFFE,
+    0xFFFEE6FF, 0xFFFFFFFF, 0xFFFF00FF, 0x001F07FF,
+    0xDFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFBFFF, 0xFFFFFFFF, 0xFFFFE7FF, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0003FFFF, 0xFFFFFFFF, 0x07FFFFFF,
     0xFFFFFFFF, 0x7FFF3FFF, 0x4FFFFFFF, 0x00000000,
-    0x00000000, 0x00001FFD, 0x00000000, 0x7FFFFFF0,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFEFFFFFF,
-    0xFFF99FEE, 0xF3C5FDFF, 0xB080799F, 0x0FFFFFCF,
+    0x00000000, 0x0007FFFF, 0x00000000, 0xFFFFFFF0,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFF99FEF, 0xF3C5FDFF, 0xB080799F, 0x0FFFFFCF,
     0xFFF987EE, 0xD36DFDFF, 0x5E023987, 0x003FFFC0,
     0xFFFBBFEE, 0xF3EDFDFF, 0x00013BBF, 0x0003FFCF,
     0xFFF99FEE, 0xF3EDFDFF, 0xB0C0399F, 0x00FFFFCF,
     0xD63DC7EC, 0xC3FFC718, 0x00813DC7, 0x07FFFFC0,
-    0xFFFDDFEE, 0xE3EFFDFF, 0x03603DDF, 0xFF00FFCF,
-    0xFFFDDFEC, 0xF3EFFDFF, 0x40603DDF, 0x0006FFCF,
-    0xFFFDDFEC, 0xE7FFFFFF, 0x00807DDF, 0xFE3FFFCF,
-    0xFC7FFFEC, 0x2FFBFFFF, 0xFF5F847F, 0x001C0000,
+    0xFFFDDFEF, 0xE3FFFDFF, 0x03603DDF, 0xFF00FFCF,
+    0xFFFDDFEE, 0xF3EFFDFF, 0x40603DDF, 0x0006FFCF,
+    0xFFFDDFEE, 0xE7FFFFFF, 0x00807DDF, 0xFE3FFFCF,
+    0xFC7FFFEC, 0x2FFBFFFF, 0xFF5F847F, 0x001CFFC0,
     0xFFFFFFFE, 0x87FFFFFF, 0x0FFFFFFF, 0x00000000,
     0xFEF02596, 0x3BFFECAE, 0xF3FF3F5F, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFEFF, 0xFFFE1FFF,
@@ -723,50 +723,46 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x1FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0001FFFF,
+    0x1FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x01FFFFFF,
     0x001FDFFF, 0x007FFFFF, 0x000FFFFF, 0x000DDFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x3FFFFFFF, 0x03FF03FF,
     0x03FF7FFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFF07FF, 0xFFFFFFFF, 0x003FFFFF,
-    0x1FFFFFFF, 0x0FFF0FFF, 0xFFFFFFF1, 0x001F3FFF,
+    0x7FFFFFFF, 0x0FFF0FFF, 0xFFFFFFF1, 0x001F3FFF,
     0xFFFFFFFF, 0xFFFF0FFF, 0xC7FF03FF, 0xFFFFFFFF,
     0xCFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF, 0x9FFFFFFF,
-    0x03FF03FF, 0x00003FFF, 0x00000000, 0x00000000,
+    0x03FF03FF, 0x7FFF3FFF, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF0FFF, 0x1FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xF00FFFFF,
     0xFFFFFFFF, 0xF8FFFFFF, 0xFFFFE3FF, 0xFFFFFFFF,
-    0x00000000, 0x00000000, 0xFFFF00FF, 0x007FFFFF,
+    0x00000000, 0x00000000, 0xFFFF00FF, 0x037FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xF000007F,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xF03FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF,
     0xFFFFFFFF, 0xFFDFFFFF, 0xEFCFFFDF, 0x7FDCFFFF,
     0xFFFFFFFF, 0xFFFFFCFF, 0xFFFFFFFF, 0xFFF3FFDF,
-    0x1FFF7FFF, 0x07FFFFFF, 0xFFFF0000, 0x0001FFFF,
+    0x1FFF7FFF, 0x3FFFFFFF, 0xFFFF0000, 0x0001FFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFF03FF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF,
     0xFFFFFFFF, 0x0000007F, 0x000007FF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x03FF1FFF, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFCFFFFF,
+    0xFF3FFFFF, 0xE3FFFFFF, 0x0003FDFF, 0x00000000,
     0xFFFFFFFF, 0xFFFF7FFF, 0x7FFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFE0FFFFF,
     0xFFFFFFFF, 0xFFFF20BF, 0xFFFFFFFF, 0x800180FF,
     0x007FFFFF, 0x7F7F7F7F, 0x7F7F7F7F, 0xFFFFFFFF,
-    0xFFFFFFFF, 0x0FFFFFFF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x00000007, 0x00000000,
     0xFBFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, 0x0FFF0000,
@@ -791,16 +787,16 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0x00000FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x80FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF,
+    0xBFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000F7FFF, 0x000007FF, 0x00000000, 0xFF000000,
+    0xFFFF7FFF, 0x00033FFF, 0x00000000, 0xFF800000,
     0xFFFFFFFF, 0x03FF0FFF, 0xFFFFFFFF, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x03FFC01F, 0x0FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x800FFFFF, 0x1FFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xC3FFBFFF, 0x00000000,
-    0xFFFFFFFF, 0x007FFFFF, 0xF3FF3FFF, 0x0FFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xC3FFBFFF, 0x7FFFFFFF,
+    0xFFFFFFFF, 0x007FFFFF, 0xF3FF3FFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xF8000007, 0x007FFFFF,
-    0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
+    0x007E7E7E, 0xFFFF7F7F, 0xFFFFFFFF, 0x00000030,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x03FF3FFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -814,30 +810,34 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF0000, 0xFFFFFFFF,
     0xFFFCFFFF, 0xFFFFFFFF, 0x000000FF, 0x3FFF0000,
-    0x03FFFFFF, 0xFFFF007F, 0xFFF7FFFF, 0xFFDF0F7F,
+    0x03FFFFFF, 0xFFFF3FFF, 0xFFF7FFFF, 0xFFDF0F7F,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x9FFFFFFF,
     0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0x7FFFFFFF, 0x1CFCFCFC, 0x3E007F7F,
     0xFFFFEFFF, 0xB7FFFF7F, 0x3FFF3FFF, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF,
     0xFFFFFF87, 0xFF8FFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x0FFF07FF, 0x00000000, 0xFFFF0000, 0x3FFFFFFF,
+    0x0FFF1FFF, 0x00000001, 0xFFFF0000, 0x3FFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x1FFFFFFF, 0xFFFFFFFF, 0x0001FFFF, 0x00000000,
-    0x7FFFFFFF, 0xFFFF000F, 0x000007FF, 0x00000000,
+    0x1FFFFFFF, 0xFFFFFFFF, 0x0001FFFF, 0x0FFFFFFF,
+    0xFFFFFFFF, 0xFFFF000F, 0xFFFF07FF, 0x07FFFFFF,
     0xBFFFFFFF, 0xFFFFFFFF, 0x003FFF0F, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x000003FF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFF00FF, 0xFFFFFFFF, 0x0000800F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFD3F, 0x91BFFFFF, 0xFFBFFFFF, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0x007FFFFF, 0x003FFFFF, 0x000000FF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFD3F, 0x91BFFFFF, 0xFFBFFFFF, 0xFFFFFFFF,
+    0x7FFFFFFF, 0x0000FF80, 0x00000000, 0x00000000,
     0x8FFFFFFF, 0x83FFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xC0FFFFFF, 0x00000000, 0x00000000,
     0xFEEFF06F, 0x870FFFFF, 0x01FF00FF, 0xFFFFFFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x00000000, 0xFFFFFFFF, 0x007FF87F,
     0xFFFFFFFF, 0xFE3FFFFF, 0xFF3FFFFF, 0xFF07FFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x1E03FFFF, 0x0000FE00, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x000001FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -846,19 +846,35 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFC3FFF, 0x0000FFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFC3FFF, 0x8000FFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF0003, 0x03FF01FF,
-    0xFFFFFFFF, 0xFFDFFFFF, 0x0000000F, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x03FF01FF, 0x00000000,
+    0xFFFFFFFF, 0xFFDFFFFF, 0xFFFF000F, 0x007FFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x07FF21FF, 0x001FFFFE,
+    0xFFFBFFFF, 0x3FFFFFFF, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0xFFFFFFFF, 0x03FF07FF,
+    0xFFF99FEE, 0xF3EDFDFF, 0xE080399F, 0x001F1FCF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x03FF00FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFF3FFFFF, 0x000003FF, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x03FF001F, 0x00000000,
     0xFFFFFFFF, 0x00FFFFFF, 0x000003FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x8007FFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0x01FFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000F0007,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x01FFFFFF, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x001F7FFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -866,10 +882,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0x01FFFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x01FFFFFF, 0x7FFFFFFF, 0x0000C3FF,
+    0x00000000, 0x00000000, 0xFFFF0000, 0x003F3FFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFBFF003F, 0xE0FFFFFB,
+    0x0000FFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF001F, 0x7FFFFFFF,
@@ -878,6 +894,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFF07FF,
+    0xF3FF01FF, 0x0000000F, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF,
     0xFFFFFFFF, 0xFFFFFE7F, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -894,25 +914,33 @@
     0xFFFFFFFF, 0xFFFFFF3F, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFCFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x007FFF9F, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFEF, 0x0AF7FE96, 0xAA96EA84, 0x5EF7F796,
     0x0FFFFBFF, 0x0FFFFBEE, 0x00000000, 0x00030000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFF0FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000FFFFF, 0x7FFE7FFF, 0xFFFEFFFE, 0x00000000,
-    0xFFFF07FF, 0xFFFF7FFF, 0xFFFFFFFF, 0xFFFF0FFF,
+    0x000FFFFF, 0xFFFE7FFF, 0xFFFEFFFE, 0x003FFFFF,
+    0xFFFF1FFF, 0xFFFF7FFF, 0xFFFFFFFF, 0xFFFF0FFF,
     0x07FFFFFF, 0x00000000, 0x00000000, 0xFFFFFFC0,
     0xFFFF0007, 0x07FFFFFF, 0x000301FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFBF0001, 0xFFFFFFFF, 0x1FFFFFFF,
-    0x000FFFFF, 0xFFFFFFFF, 0x000007DF, 0x0001FFFF,
-    0xFFFFFFFF, 0x7FFFFFFF, 0xFFFFFFFD, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1EFFFFFF,
-    0xFFFFFFFF, 0x3FFFFFFF, 0xFFFF000F, 0x000000FF,
-    0x00000000, 0x00000000, 0x00000000, 0xF8000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFE1, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000000,
+    0xFFFFFFFF, 0xFFFF1FFF, 0xFFFFFFFF, 0x3FFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFF07FFF, 0x00FFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF07FF, 0xFBFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFEF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFE7, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, 0x000F1FFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x001FFFFF, 0x00000000,
+    0xFFFF0FFF, 0xFFFFFFFF, 0x03FF00FF, 0xFFFFFFFF,
+    0xFFFF00FF, 0x00003FFF, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000,
--- a/lib/unictype/ctype_punct.h
+++ b/lib/unictype/ctype_punct.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* ISO C <ctype.h> like properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[17];
     short level2[4 << 7];
-    /*unsigned*/ int level3[54 << 4];
+    /*unsigned*/ int level3[61 << 4];
   }
 u_is_punct =
 {
@@ -56,12 +56,12 @@
        18 +   512 * sizeof (short) / sizeof (int) +   272,
        18 +   512 * sizeof (short) / sizeof (int) +   288,
        18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
        18 +   512 * sizeof (short) / sizeof (int) +   320,
        18 +   512 * sizeof (short) / sizeof (int) +   336,
        18 +   512 * sizeof (short) / sizeof (int) +   352,
        18 +   512 * sizeof (short) / sizeof (int) +   368,
        18 +   512 * sizeof (short) / sizeof (int) +   384,
-       18 +   512 * sizeof (short) / sizeof (int) +   400,
        -1,
        -1,
        -1,
@@ -74,7 +74,7 @@
        -1,
        -1,
        -1,
-       18 +   512 * sizeof (short) / sizeof (int) +   416,
+       18 +   512 * sizeof (short) / sizeof (int) +   400,
        -1,
        -1,
        -1,
@@ -118,10 +118,10 @@
        -1,
        -1,
        -1,
+       18 +   512 * sizeof (short) / sizeof (int) +   416,
        18 +   512 * sizeof (short) / sizeof (int) +   432,
        18 +   512 * sizeof (short) / sizeof (int) +   448,
        18 +   512 * sizeof (short) / sizeof (int) +   464,
-       18 +   512 * sizeof (short) / sizeof (int) +   480,
        -1,
        -1,
        -1,
@@ -148,18 +148,19 @@
        -1,
        -1,
        -1,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   480,
        18 +   512 * sizeof (short) / sizeof (int) +   496,
        18 +   512 * sizeof (short) / sizeof (int) +   512,
        18 +   512 * sizeof (short) / sizeof (int) +   528,
@@ -167,22 +168,21 @@
        18 +   512 * sizeof (short) / sizeof (int) +   560,
        18 +   512 * sizeof (short) / sizeof (int) +   576,
        -1,
-       -1,
        18 +   512 * sizeof (short) / sizeof (int) +   592,
        18 +   512 * sizeof (short) / sizeof (int) +   608,
        -1,
        18 +   512 * sizeof (short) / sizeof (int) +   624,
        18 +   512 * sizeof (short) / sizeof (int) +   640,
-       -1,
-       -1,
        18 +   512 * sizeof (short) / sizeof (int) +   656,
+       18 +   512 * sizeof (short) / sizeof (int) +   672,
+       18 +   512 * sizeof (short) / sizeof (int) +   688,
+       18 +   512 * sizeof (short) / sizeof (int) +   704,
        -1,
        -1,
        -1,
        -1,
        -1,
-       -1,
-       18 +   512 * sizeof (short) / sizeof (int) +   672,
+       18 +   512 * sizeof (short) / sizeof (int) +   720,
        -1,
        -1,
        -1,
@@ -217,9 +217,9 @@
        -1,
        -1,
        -1,
-       -1,
+       18 +   512 * sizeof (short) / sizeof (int) +   736,
        -1,
-       18 +   512 * sizeof (short) / sizeof (int) +   688,
+       18 +   512 * sizeof (short) / sizeof (int) +   752,
        -1,
        -1,
        -1,
@@ -258,7 +258,7 @@
        -1,
        -1,
        -1,
-       -1,
+       18 +   512 * sizeof (short) / sizeof (int) +   768,
        -1,
        -1,
        -1,
@@ -268,11 +268,10 @@
        -1,
        -1,
        -1,
-       18 +   512 * sizeof (short) / sizeof (int) +   704,
-       18 +   512 * sizeof (short) / sizeof (int) +   720,
+       18 +   512 * sizeof (short) / sizeof (int) +   784,
+       18 +   512 * sizeof (short) / sizeof (int) +   800,
        -1,
-       18 +   512 * sizeof (short) / sizeof (int) +   736,
-       -1,
+       18 +   512 * sizeof (short) / sizeof (int) +   816,
        -1,
        -1,
        -1,
@@ -281,18 +280,19 @@
        -1,
        -1,
        -1,
+       18 +   512 * sizeof (short) / sizeof (int) +   832,
        -1,
        -1,
-       18 +   512 * sizeof (short) / sizeof (int) +   752,
-       18 +   512 * sizeof (short) / sizeof (int) +   768,
-       18 +   512 * sizeof (short) / sizeof (int) +   784,
-       18 +   512 * sizeof (short) / sizeof (int) +   800,
-       18 +   512 * sizeof (short) / sizeof (int) +   816,
+       18 +   512 * sizeof (short) / sizeof (int) +   848,
+       18 +   512 * sizeof (short) / sizeof (int) +   864,
+       18 +   512 * sizeof (short) / sizeof (int) +   880,
+       18 +   512 * sizeof (short) / sizeof (int) +   896,
+       18 +   512 * sizeof (short) / sizeof (int) +   912,
+       18 +   512 * sizeof (short) / sizeof (int) +   928,
        -1,
        -1,
        -1,
-       -1,
-       18 +   512 * sizeof (short) / sizeof (int) +   832,
+       18 +   512 * sizeof (short) / sizeof (int) +   944,
        -1,
        -1,
        -1,
@@ -420,134 +420,134 @@
        -1,
        -1,
        -1,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   320,
-       18 +   512 * sizeof (short) / sizeof (int) +   848
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   304,
+       18 +   512 * sizeof (short) / sizeof (int) +   960
   },
   {
     0x00000000, 0xFC00FFFE, 0xF8000001, 0x78000001,
@@ -561,22 +561,22 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x000003FC, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFC000000, 0x00000000,
-    0xFFFE8600, 0xFFFFFFFF, 0x000000FF, 0x00180000,
-    0xDFFFFFDF, 0x00000000, 0xFFFFF800, 0x00013C00,
+    0xFFFEE600, 0xFFFFFFFF, 0x000000FF, 0x00180000,
+    0xDFFFFFFF, 0x00000000, 0xFFFFF800, 0x00013C00,
     0x00000000, 0x00000000, 0xFFD00000, 0x60003F9F,
     0x0002BFFF, 0xFFFF0000, 0x000007FF, 0x00000000,
     0x00000000, 0x0001FFC0, 0x00000000, 0x03CFF800,
     0xFBC00000, 0x7FFF3EEF, 0x4E000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x7FFFFFF0,
+    0x00000000, 0x00000000, 0x00000000, 0xFFFFFFF0,
     0x0000000F, 0xDC000000, 0x00FEFFFF, 0x0001003C,
     0x0000000E, 0xD0000000, 0x0080399F, 0x0FFC000C,
     0x0000000E, 0xD0000000, 0x00023987, 0x00230000,
     0x0000000E, 0xD0000000, 0x00003BBF, 0x0003000C,
     0x0000000E, 0xD0000000, 0x00C0399F, 0x00FD000C,
     0x00000004, 0xC0000000, 0x00803DC7, 0x07FF0000,
-    0x0000000E, 0xC0000000, 0x00603DDF, 0xFF00000C,
-    0x0000000C, 0xD0000000, 0x00603DDF, 0x0000000C,
-    0x0000000C, 0xC0000000, 0x00803DDF, 0x023F000C,
+    0x0000000F, 0xC0000000, 0x00603DDF, 0xFF00000C,
+    0x0000000E, 0xD0000000, 0x00603DDF, 0x0000000C,
+    0x0000000E, 0xC0000000, 0x00803DDF, 0x023F000C,
     0x0000000C, 0x00000000, 0xFF5F8400, 0x001C0000,
     0x00000000, 0x80008000, 0x0C008040, 0x00000000,
     0x00000000, 0x1BF20000, 0x00003F00, 0x00000000,
@@ -603,46 +603,42 @@
     0x00000000, 0x0FFF0FFF, 0x00000031, 0x00000000,
     0x00000000, 0xFFFF0000, 0xC4000301, 0xFFFFFFFF,
     0xCF800000, 0x00000000, 0x7FE00000, 0x9FFFFFFF,
-    0x00000000, 0x00003F7F, 0x00000000, 0x00000000,
+    0x00000000, 0x7FFF3F7F, 0x00000000, 0x00000000,
     0x0000001F, 0xFFF00000, 0xFC00001F, 0x1FFFFFFF,
     0x00000007, 0x00003FFE, 0x00000000, 0xF00FFFC0,
     0x00000000, 0xF8FFFFF0, 0x00000000, 0xC0000000,
-    0x00000000, 0x00000000, 0xFFFF00FF, 0x001C21FF,
+    0x00000000, 0x00000000, 0xFFFF00FF, 0x031C21FF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFFFFFFF, 0xF000007F,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0xF03FFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xA0000000, 0xE000E003, 0x6000E000,
     0xFFFFF880, 0xFFFFFCFF, 0x7FFFFFFF, 0x7FF1FFDF,
-    0x00007FFF, 0x07FFFFFF, 0xFFFF0000, 0x0001FFFF,
+    0x00007FFF, 0x3FFFFFFF, 0xFFFF0000, 0x0001FFFF,
     0xC1D0037B, 0x0C0040AF, 0xFFFFBC1F, 0x00000000,
     0xFFFF0200, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF,
     0xFFFFFFFF, 0x0000007F, 0x000007FF, 0xFFFFFFFF,
     0x0FFFFFFF, 0x00000000, 0x00000000, 0xFFFFFC00,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x03FF1FFF, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFCFFFFF,
+    0xFF3FFFFF, 0xE3FFFFFF, 0x0003FDFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xFE0387E0,
     0x00000000, 0x00000000, 0x00000000, 0x80010000,
     0x00000000, 0x00000000, 0x00000000, 0xFFFFFFFF,
-    0xFFFFFFFF, 0x0FFF7FFF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFF7FFF, 0x00000007, 0x00000000,
     0xFBFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, 0x0FFF0000,
@@ -669,10 +665,10 @@
     0x00000844, 0x03FF0FF8, 0x00000000, 0x00F00000,
     0x00000003, 0xFFF00000, 0x0000C01F, 0x0703FFFF,
     0x00000000, 0x0000FFC0, 0x800FFF80, 0x00000000,
-    0x0000000F, 0xFFF80000, 0xC0003FFF, 0x00000000,
-    0x00000000, 0x007FFE00, 0xF0003008, 0x0B800000,
+    0x0000000F, 0xFFF80000, 0xC0003FFF, 0x00000020,
+    0x00000000, 0x007FFE00, 0xF0003008, 0x3B800000,
     0x00000000, 0xC19D0000, 0xC0000002, 0x0063F800,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x08000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00003FF8,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -686,46 +682,70 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xC0000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x30000000,
-    0x03FFFFFF, 0xFFFF007F, 0xFFF7FFFF, 0x00000F7F,
+    0x03FFFFFF, 0xFFFF3FFF, 0xFFF7FFFF, 0x00000F7F,
     0x00000000, 0x00000000, 0x00000000, 0x80000000,
     0xFC00FFFE, 0xF8000001, 0xF8000001, 0x0000003F,
     0x00000000, 0x00000000, 0x00000000, 0x3E007F7F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFF87, 0xFF8FFFFF, 0x00000000, 0xFFE00000,
-    0x0FFF07FF, 0x00000000, 0xFFFF0000, 0x3FFFFFFF,
+    0x0FFF1FFF, 0x00000001, 0xFFFF0000, 0x3FFFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x0FFFFFFF,
+    0x00000000, 0x0000000F, 0x00000000, 0x07C00000,
+    0x80000000, 0x00000000, 0x00010000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x0000000F, 0x00000000, 0x00000000,
-    0x80000000, 0x00000000, 0x00010000, 0x00000000,
-    0x00000000, 0x00000000, 0xFF800000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00008000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFF800000, 0xFF800000,
+    0x00000000, 0x0000FF80, 0x00000000, 0x00000000,
     0x8FC00000, 0x80000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x0000F06E, 0x87000000, 0x01FF00FF, 0xE0000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xE0000000, 0x00000000, 0x00000100, 0x007FF860,
     0x00000000, 0xFE000000, 0xFF000000, 0xFF000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x1E000000, 0x0000FE00, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x7FFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000007, 0xFF000000, 0xFFFC3FFF, 0x0000003F,
+    0x00000007, 0xFF000000, 0xFFFC3FFF, 0x8000003F,
     0x00000007, 0xFFFF0000, 0x00000003, 0x00000000,
-    0x00000007, 0x001FFF80, 0x0000000F, 0x00000000,
-    0x00000007, 0xFFF80000, 0x000001E1, 0x00000000,
+    0x00000007, 0x001FFF80, 0x0000000F, 0x00380000,
+    0x00000007, 0xFFF80000, 0x000021E1, 0x001FFFFE,
+    0x00000000, 0x3FFFF000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x80000000, 0x000007FF,
+    0x0000000E, 0xD0000000, 0x0080399F, 0x001F1FCC,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0x0000004F, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFF3F8000, 0x000003FF, 0x00000000,
+    0x00000000, 0xFFFF0000, 0x0000000F, 0x00000000,
     0x00000000, 0x00FFF800, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x000F0000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x0007FC00,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x001F0000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x0000C000,
+    0x00000000, 0x00000000, 0x00000000, 0x003F0000,
+    0x00000000, 0xFFFF0000, 0xF8000030, 0x00000003,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFE0000, 0x7FFFFFFF,
     0x00078000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xF0000000, 0x0000000F, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF,
     0xFFFFFFFF, 0xFFFFFE7F, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -739,24 +759,32 @@
     0x00200000, 0x00200000, 0x00008000, 0x00008000,
     0x00000200, 0x00000200, 0x00000008, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x007FFF80, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00030000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFF0FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000FFFFF, 0x7FFE7FFF, 0xFFFEFFFE, 0x00000000,
-    0x000007FF, 0x00006000, 0x0000FC00, 0x00000C00,
+    0x000FFFFF, 0xFFFE7FFF, 0xFFFEFFFE, 0x003FFFFF,
+    0x00001FFF, 0x00006000, 0x0000FC00, 0x00000C00,
     0x07FFF800, 0x00000000, 0x00000000, 0x00000000,
     0xFFFF0007, 0x07FFFFFF, 0x000301FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFBF0001, 0xFFFFFFFF, 0x1FFFFFFF,
-    0x000FFFFF, 0xFFFFFFFF, 0x000007DF, 0x0001FFFF,
-    0xFFFFFFFF, 0x7FFFFFFF, 0xFFFFFFFD, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1EFFFFFF,
-    0xFFFFFFFF, 0x3FFFFFFF, 0xFFFF000F, 0x000000FF,
-    0x00000000, 0x00000000, 0x00000000, 0xF8000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFE1, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000000,
+    0xFFFFFFFF, 0xFFFF1FFF, 0xFFFFFFFF, 0x3FFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFF07FFF, 0x00FFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF07FF, 0xFBFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFEF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFE7, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, 0x000F1FFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x001FFFFF, 0x00000000,
+    0xFFFF0FFF, 0xFFFFFFFF, 0x03FF00FF, 0xFFFFFFFF,
+    0xFFFF00FF, 0x00003FFF, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000002, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/ctype_space.h
+++ b/lib/unictype/ctype_space.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* ISO C <ctype.h> like properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/ctype_upper.h
+++ b/lib/unictype/ctype_upper.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* ISO C <ctype.h> like properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[11 << 4];
+    /*unsigned*/ int level3[12 << 4];
   }
 u_is_upper =
 {
@@ -161,7 +161,7 @@
        -1,
        -1,
        -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   176,
        -1,
        -1,
        -1,
@@ -285,11 +285,11 @@
     0xB1DBCED6, 0x11AED2D5, 0x4AAAADB0, 0x55D65555,
     0x55555555, 0x6C055555, 0x0000557A, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00450000,
+    0x00000000, 0x00000000, 0x00000000, 0x80450000,
     0xFFFED740, 0x00000FFB, 0x55008000, 0xE6905555,
     0xFFFFFFFF, 0x0000FFFF, 0x00000000, 0x55555555,
     0x55555401, 0x55555555, 0x55552AAB, 0x55555555,
-    0x55555555, 0xFFFE0055, 0x007FFFFF, 0x00000000,
+    0x55555555, 0xFFFE5555, 0x007FFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFFFFF, 0x000020BF, 0x00000000,
@@ -312,9 +312,9 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x55555555, 0x00001555,
-    0x00555555, 0x00000000, 0x00000000, 0x00000000,
+    0x05555555, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x55545554, 0x55555555, 0x6A005555,
-    0x00052855, 0x00000555, 0x00000000, 0x00000000,
+    0x55452855, 0x00033D55, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x07FFFFFE, 0x00000000, 0x00000000,
@@ -322,6 +322,10 @@
     0xFFFFFFFF, 0x000000FF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/ctype_xdigit.h
+++ b/lib/unictype/ctype_xdigit.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* ISO C <ctype.h> like properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/decdigit.h
+++ b/lib/unictype/decdigit.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Decimal digit values of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define decdigit_header_0 16
 #define decdigit_header_1 2
 #define decdigit_header_2 7
@@ -11,7 +11,7 @@
   {
     int level1[2];
     short level2[2 << 9];
-    unsigned char level3[14 << 6];
+    unsigned char level3[15 << 6];
   }
 u_decdigit =
 {
@@ -20,7 +20,7 @@
         0,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,   128,   256,    -1,   384,
        -1,    -1,   512,   512,   512,   512,   512,   512,
-      512,   512,   512,    -1,   640,   640,   768,    -1,
+      512,   512,   512,   512,   640,   640,   768,    -1,
       384,   896,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,
       896,    -1,  1024,   640,    -1,  1152,   640,     0,
@@ -59,7 +59,7 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,   768,    -1,    -1,    -1,
-       -1,   640,  1408,   640,   640,    -1,    -1,   256,
+       -1,   640,  1408,  1536,   640,    -1,    -1,   256,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -85,8 +85,29 @@
        -1,   768,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      512,   256,  1536,   640,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,   384,    -1,    -1,
+      512,   256,  1664,   640,    -1,   256,    -1,    -1,
+       -1,   640,    -1,    -1,   640,   384,    -1,    -1,
+       -1,   128,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,   128,    -1,   640,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -113,28 +134,7 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1664,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1792,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -246,6 +246,14 @@
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x21, 0x43, 0x65, 0x87, 0xa9, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x21, 0x43, 0x65, 0x87, 0xa9, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x21, 0x43, 0x65, 0x87, 0xa9,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
--- a/lib/unictype/digit.h
+++ b/lib/unictype/digit.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Digit values of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define digit_header_0 16
 #define digit_header_1 2
 #define digit_header_2 7
@@ -11,7 +11,7 @@
   {
     int level1[2];
     short level2[2 << 9];
-    unsigned char level3[26 << 6];
+    unsigned char level3[27 << 6];
   }
 u_digit =
 {
@@ -20,7 +20,7 @@
         0,   128,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,   256,   384,    -1,   512,
        -1,    -1,   640,   640,   640,   640,   640,   640,
-      640,   640,   640,    -1,   768,   768,   896,    -1,
+      640,   640,   640,   640,   768,   768,   896,    -1,
       512,  1024,    -1,    -1,    -1,    -1,  1152,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,   256,
      1024,    -1,  1280,  1408,    -1,  1536,   768,     0,
@@ -59,7 +59,7 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,   896,    -1,    -1,    -1,
-       -1,   768,  1920,   768,   768,    -1,    -1,   384,
+       -1,   768,  1920,  2560,   768,    -1,    -1,   384,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -83,10 +83,31 @@
        -1,    -1,    -1,    -1,    -1,    -1,  1024,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,   896,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,  2560,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,  2688,    -1,    -1,    -1,
-     2816,   384,  2944,   768,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,   512,    -1,    -1,
+       -1,    -1,    -1,    -1,  2816,    -1,    -1,    -1,
+     2944,   384,  3072,   768,    -1,   384,    -1,    -1,
+       -1,   768,    -1,    -1,   768,   512,    -1,    -1,
+       -1,   256,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,   256,    -1,   768,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -113,35 +134,14 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3200,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3072,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,  3200,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,  3328,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1
@@ -311,6 +311,14 @@
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x21, 0x43, 0x65, 0x87, 0xa9, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x21, 0x43, 0x65, 0x87, 0xa9, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x32, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
--- a/lib/unictype/joininggroup_byname.gperf
+++ b/lib/unictype/joininggroup_byname.gperf
@@ -85,3 +85,59 @@
 Zhain, UC_JOINING_GROUP_ZHAIN
 Rohingya Yeh, UC_JOINING_GROUP_ROHINGYA_YEH
 RohingyaYeh, UC_JOINING_GROUP_ROHINGYA_YEH
+Straight Waw, UC_JOINING_GROUP_STRAIGHT_WAW
+StraightWaw, UC_JOINING_GROUP_STRAIGHT_WAW
+Manichaean Aleph, UC_JOINING_GROUP_MANICHAEAN_ALEPH
+ManichaeanAleph, UC_JOINING_GROUP_MANICHAEAN_ALEPH
+Manichaean Beth, UC_JOINING_GROUP_MANICHAEAN_BETH
+ManichaeanBeth, UC_JOINING_GROUP_MANICHAEAN_BETH
+Manichaean Gimel, UC_JOINING_GROUP_MANICHAEAN_GIMEL
+ManichaeanGimel, UC_JOINING_GROUP_MANICHAEAN_GIMEL
+Manichaean Daleth, UC_JOINING_GROUP_MANICHAEAN_DALETH
+ManichaeanDaleth, UC_JOINING_GROUP_MANICHAEAN_DALETH
+Manichaean Waw, UC_JOINING_GROUP_MANICHAEAN_WAW
+ManichaeanWaw, UC_JOINING_GROUP_MANICHAEAN_WAW
+Manichaean Zayin, UC_JOINING_GROUP_MANICHAEAN_ZAYIN
+ManichaeanZayin, UC_JOINING_GROUP_MANICHAEAN_ZAYIN
+Manichaean Heth, UC_JOINING_GROUP_MANICHAEAN_HETH
+ManichaeanHeth, UC_JOINING_GROUP_MANICHAEAN_HETH
+Manichaean Teth, UC_JOINING_GROUP_MANICHAEAN_TETH
+ManichaeanTeth, UC_JOINING_GROUP_MANICHAEAN_TETH
+Manichaean Yodh, UC_JOINING_GROUP_MANICHAEAN_YODH
+ManichaeanYodh, UC_JOINING_GROUP_MANICHAEAN_YODH
+Manichaean Kaph, UC_JOINING_GROUP_MANICHAEAN_KAPH
+ManichaeanKaph, UC_JOINING_GROUP_MANICHAEAN_KAPH
+Manichaean Lamedh, UC_JOINING_GROUP_MANICHAEAN_LAMEDH
+ManichaeanLamedh, UC_JOINING_GROUP_MANICHAEAN_LAMEDH
+Manichaean Dhamedh, UC_JOINING_GROUP_MANICHAEAN_DHAMEDH
+ManichaeanDhamedh, UC_JOINING_GROUP_MANICHAEAN_DHAMEDH
+Manichaean Thamedh, UC_JOINING_GROUP_MANICHAEAN_THAMEDH
+ManichaeanThamedh, UC_JOINING_GROUP_MANICHAEAN_THAMEDH
+Manichaean Mem, UC_JOINING_GROUP_MANICHAEAN_MEM
+ManichaeanMem, UC_JOINING_GROUP_MANICHAEAN_MEM
+Manichaean Nun, UC_JOINING_GROUP_MANICHAEAN_NUN
+ManichaeanNun, UC_JOINING_GROUP_MANICHAEAN_NUN
+Manichaean Samekh, UC_JOINING_GROUP_MANICHAEAN_SAMEKH
+ManichaeanSamekh, UC_JOINING_GROUP_MANICHAEAN_SAMEKH
+Manichaean Ayin, UC_JOINING_GROUP_MANICHAEAN_AYIN
+ManichaeanAyin, UC_JOINING_GROUP_MANICHAEAN_AYIN
+Manichaean Pe, UC_JOINING_GROUP_MANICHAEAN_PE
+ManichaeanPe, UC_JOINING_GROUP_MANICHAEAN_PE
+Manichaean Sadhe, UC_JOINING_GROUP_MANICHAEAN_SADHE
+ManichaeanSadhe, UC_JOINING_GROUP_MANICHAEAN_SADHE
+Manichaean Qoph, UC_JOINING_GROUP_MANICHAEAN_QOPH
+ManichaeanQoph, UC_JOINING_GROUP_MANICHAEAN_QOPH
+Manichaean Resh, UC_JOINING_GROUP_MANICHAEAN_RESH
+ManichaeanResh, UC_JOINING_GROUP_MANICHAEAN_RESH
+Manichaean Taw, UC_JOINING_GROUP_MANICHAEAN_TAW
+ManichaeanTaw, UC_JOINING_GROUP_MANICHAEAN_TAW
+Manichaean One, UC_JOINING_GROUP_MANICHAEAN_ONE
+ManichaeanOne, UC_JOINING_GROUP_MANICHAEAN_ONE
+Manichaean Five, UC_JOINING_GROUP_MANICHAEAN_FIVE
+ManichaeanFive, UC_JOINING_GROUP_MANICHAEAN_FIVE
+Manichaean Ten, UC_JOINING_GROUP_MANICHAEAN_TEN
+ManichaeanTen, UC_JOINING_GROUP_MANICHAEAN_TEN
+Manichaean Twenty, UC_JOINING_GROUP_MANICHAEAN_TWENTY
+ManichaeanTwenty, UC_JOINING_GROUP_MANICHAEAN_TWENTY
+Manichaean Hundred, UC_JOINING_GROUP_MANICHAEAN_HUNDRED
+ManichaeanHundred, UC_JOINING_GROUP_MANICHAEAN_HUNDRED
--- a/lib/unictype/joininggroup_name.h
+++ b/lib/unictype/joininggroup_name.h
@@ -73,3 +73,31 @@
 ELEM (ZAIN,                  "Zain")
 ELEM (ZHAIN,                 "Zhain")
 ELEM (ROHINGYA_YEH,          "Rohingya Yeh")
+ELEM (STRAIGHT_WAW,          "Straight Waw")
+ELEM (MANICHAEAN_ALEPH,      "Manichaean Aleph")
+ELEM (MANICHAEAN_BETH,       "Manichaean Beth")
+ELEM (MANICHAEAN_GIMEL,      "Manichaean Gimel")
+ELEM (MANICHAEAN_DALETH,     "Manichaean Daleth")
+ELEM (MANICHAEAN_WAW,        "Manichaean Waw")
+ELEM (MANICHAEAN_ZAYIN,      "Manichaean Zayin")
+ELEM (MANICHAEAN_HETH,       "Manichaean Heth")
+ELEM (MANICHAEAN_TETH,       "Manichaean Teth")
+ELEM (MANICHAEAN_YODH,       "Manichaean Yodh")
+ELEM (MANICHAEAN_KAPH,       "Manichaean Kaph")
+ELEM (MANICHAEAN_LAMEDH,     "Manichaean Lamedh")
+ELEM (MANICHAEAN_DHAMEDH,    "Manichaean Dhamedh")
+ELEM (MANICHAEAN_THAMEDH,    "Manichaean Thamedh")
+ELEM (MANICHAEAN_MEM,        "Manichaean Mem")
+ELEM (MANICHAEAN_NUN,        "Manichaean Nun")
+ELEM (MANICHAEAN_SAMEKH,     "Manichaean Samekh")
+ELEM (MANICHAEAN_AYIN,       "Manichaean Ayin")
+ELEM (MANICHAEAN_PE,         "Manichaean Pe")
+ELEM (MANICHAEAN_SADHE,      "Manichaean Sadhe")
+ELEM (MANICHAEAN_QOPH,       "Manichaean Qoph")
+ELEM (MANICHAEAN_RESH,       "Manichaean Resh")
+ELEM (MANICHAEAN_TAW,        "Manichaean Taw")
+ELEM (MANICHAEAN_ONE,        "Manichaean One")
+ELEM (MANICHAEAN_FIVE,       "Manichaean Five")
+ELEM (MANICHAEAN_TEN,        "Manichaean Ten")
+ELEM (MANICHAEAN_TWENTY,     "Manichaean Twenty")
+ELEM (MANICHAEAN_HUNDRED,    "Manichaean Hundred")
--- a/lib/unictype/joininggroup_of.h
+++ b/lib/unictype/joininggroup_of.h
@@ -1,21 +1,21 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Arabic joining group of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define joining_group_header_0 16
-#define joining_group_header_1 1
+#define joining_group_header_1 2
 #define joining_group_header_2 7
 #define joining_group_header_3 511
 #define joining_group_header_4 127
 static const
 struct
   {
-    int level1[1];
-    short level2[1 << 9];
-    unsigned short level3[4 * 56 + 1];
+    int level1[2];
+    short level2[2 << 9];
+    unsigned short level3[5 * 56 + 1];
   }
 u_joining_group =
 {
-  {     0 },
+  {     0,   512 },
   {
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,     0,   128,   256,    -1,
@@ -80,6 +80,70 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,   512,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1
   },
   {
@@ -105,12 +169,19 @@
     0x0a74, 0x0204, 0x860c, 0xe1c3, 0x6cd8, 0x9d3a, 0x664e, 0x3a34,
     0x2041, 0x11a7, 0x3064, 0x2850, 0xb164, 0xc198, 0x3900, 0x2a9d,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0004, 0xc584,
-    0x6508, 0x3236, 0x28d9, 0x0396, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0204, 0xc584,
+    0x6508, 0x3236, 0x28d9, 0x0396, 0x4a1c, 0xdd0e, 0x0008, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x1e3b, 0xd7af, 0x01f3, 0x007e,
+    0x1020, 0x0800, 0x870a, 0x2244, 0x68b1, 0x223c, 0xca93, 0x92e5,
+    0x6cc9, 0x9d3a, 0x27ce, 0x0000, 0x0005, 0x0000, 0x2000, 0x9d2a,
+    0xab52, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000
   }
 };
--- a/lib/unictype/joiningtype_of.h
+++ b/lib/unictype/joiningtype_of.h
@@ -1,21 +1,21 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Arabic joining type of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define joining_type_header_0 16
-#define joining_type_header_1 1
+#define joining_type_header_1 2
 #define joining_type_header_2 7
 #define joining_type_header_3 511
 #define joining_type_header_4 127
 static const
 struct
   {
-    int level1[1];
-    short level2[1 << 9];
-    unsigned char level3[10 * 64];
+    int level1[2];
+    short level2[2 << 9];
+    unsigned char level3[12 * 64];
   }
 u_joining_type =
 {
-  {     0 },
+  {     0,   512 },
   {
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,     0,   128,   256,   384,
@@ -80,10 +80,74 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,  1280,    -1,  1408,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1
   },
   {
-    0x00, 0x00, 0xf0, 0xff, 0xf0, 0x0f, 0xff, 0xff,
+    0x00, 0x00, 0x00, 0xff, 0xf0, 0x0f, 0xff, 0xff,
     0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
     0x05, 0x44, 0x44, 0x45, 0x45, 0x55, 0x55, 0x45,
     0x44, 0x54, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
@@ -125,8 +189,8 @@
     0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
     0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
     0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
-    0xf5, 0x55, 0x55, 0x55, 0x55, 0x44, 0xf4, 0xff,
-    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0x55, 0x55, 0x55, 0x55, 0x55, 0x44, 0x04, 0x54,
+    0x45, 0xf4, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
     0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
     0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
     0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
@@ -162,6 +226,22 @@
     0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
     0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
     0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55,
-    0x55, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
+    0x55, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0x55, 0x55, 0x45, 0x40, 0x40, 0x04, 0x30, 0x44,
+    0x44, 0x54, 0x55, 0x35, 0x55, 0x55, 0x45, 0x55,
+    0x45, 0x00, 0xf4, 0xff, 0xff, 0x5f, 0x55, 0x45,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0x45, 0x45, 0x44, 0x55, 0x45, 0x55, 0x54, 0x44,
+    0x45, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0x4f, 0x44, 0x54, 0x05,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
+    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
   }
 };
--- a/lib/unictype/mirror.h
+++ b/lib/unictype/mirror.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Mirrored Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define mirror_header_0 16
 #define mirror_header_1 2
 #define mirror_header_2 7
--- a/lib/unictype/numeric.h
+++ b/lib/unictype/numeric.h
@@ -1,9 +1,10 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Numeric values of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
-static const uc_fraction_t u_numeric_values[115] =
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
+static const uc_fraction_t u_numeric_values[119] =
 {
   { 0, 0 },
+  { -727379968, 1 },
   { 0, 1 },
   { 1, 1 },
   { 2, 1 },
@@ -89,6 +90,9 @@
   { 100000, 1 },
   { 216000, 1 },
   { 432000, 1 },
+  { 1000000, 1 },
+  { 100000000, 1 },
+  { 1410065408, 1 },
   { -1, 2 },
   { 1, 2 },
   { 3, 2 },
@@ -129,7 +133,7 @@
   {
     int level1[3];
     short level2[3 << 9];
-    unsigned short level3[55 * 56 + 1];
+    unsigned short level3[64 * 56 + 1];
   }
 u_numeric =
 {
@@ -138,7 +142,7 @@
         0,   128,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,   256,   384,    -1,   512,
        -1,    -1,   640,   768,   640,   640,   896,  1024,
-     1152,   640,  1280,    -1,  1408,  1408,  1536,    -1,
+     1152,   640,  1280,   640,  1408,  1408,  1536,    -1,
       512,  1664,    -1,    -1,    -1,    -1,  1792,    -1,
        -1,    -1,    -1,    -1,    -1,  1920,    -1,  2048,
      1664,    -1,  2176,  2304,    -1,  2432,  1408,     0,
@@ -177,7 +181,7 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,  4352,  4480,    -1,    -1,
-     4608,  1408,  2816,  1408,  1408,    -1,    -1,   384,
+     4608,  1408,  2816,  4736,  1408,    -1,    -1,   384,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -197,18 +201,35 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,  4736,  4864,    -1,    -1,    -1,    -1,
+       -1,    -1,  4864,  4992,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,  1664,    -1,
-       -1,    -1,  4992,  5120,    -1,    -1,  5248,  5376,
+       -1,    -1,  5120,  5248,    -1,  5376,  5504,  5632,
        -1,  4352,    -1,    -1,    -1,    -1,    -1,    -1,
-     5504,    -1,  5632,    -1,  5760,    -1,  5888,    -1,
-       -1,    -1,    -1,    -1,  6016,    -1,    -1,    -1,
-     6144,   384,  6272,  1408,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,   512,    -1,    -1,
+     5760,  5888,  6016,    -1,  6144,  6272,  6400,  6528,
+       -1,    -1,    -1,    -1,  6656,    -1,    -1,    -1,
+     6784,   384,  6912,  7040,    -1,   384,    -1,    -1,
+       -1,  1408,    -1,    -1,  1408,   512,    -1,    -1,
+       -1,  7168,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     7296,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     6400,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,   256,    -1,  7424,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -234,32 +255,15 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,  7552,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,  7680,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,  6528,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,  6656,
+       -1,  7808,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,  6784,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,  7936,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -325,21 +329,21 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,  6912,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,  8064,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1
   },
   {
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc101, 0x5080, 0x1c30,
-    0x0910, 0x0005, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0182, 0x60a1, 0x2038,
+    0x8a12, 0x0005, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc000, 0x0080, 0x0000,
-    0x0000, 0x0001, 0xbe20, 0x018e, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00a1, 0x0000,
+    0x8000, 0x0001, 0xde60, 0x019e, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -348,7 +352,7 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0xc101, 0x5080, 0x1c30, 0x0910, 0x0005, 0x0000,
+    0x0000, 0x0000, 0x0182, 0x60a1, 0x2038, 0x8a12, 0x0005, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -356,11 +360,11 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0xc101, 0x5080, 0x1c30, 0x0910, 0x0005, 0x0000, 0x0000,
+    0x0000, 0x0182, 0x60a1, 0x2038, 0x8a12, 0x0005, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0xc101, 0x5080, 0x1c30, 0x0910,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0182, 0x60a1, 0x2038, 0x8a12,
     0x0005, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -369,59 +373,59 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0400, 0x0304, 0xc142, 0x4070,
-    0x1424, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0800, 0x8406, 0xe182, 0x4880,
+    0x1628, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0400, 0x0304, 0xc142, 0x4070,
-    0x1424, 0x0000, 0x1000, 0xcb5f, 0xe3c5, 0x0008, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0800, 0x8406, 0xe182, 0x4880,
+    0x1628, 0x0000, 0x5000, 0xdb7f, 0x67cd, 0x0009, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0400, 0x0304, 0xc142, 0x4070,
-    0x1424, 0x8000, 0x3af8, 0xaf8e, 0x00e5, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0800, 0x8406, 0xe182, 0x4880,
+    0x1628, 0x8000, 0x7b79, 0xbfae, 0x00ed, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0400, 0x0304, 0xc142, 0x4070,
-    0x1424, 0x5c0b, 0x0010, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0800, 0x8406, 0xe182, 0x4880,
+    0x1628, 0x9c8c, 0x0010, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0400, 0x0304, 0xc142, 0x4070,
-    0x1424, 0x0000, 0x0000, 0x0000, 0x0100, 0x80c1, 0x1820, 0x0010,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0800, 0x8406, 0xe182, 0x4880,
+    0x1628, 0x0000, 0x0000, 0x0000, 0x8200, 0xa101, 0x2030, 0x0014,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0400, 0x0304, 0xc142, 0x4070,
-    0x1424, 0x5c0b, 0x7c50, 0x031d, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0800, 0x8406, 0xe182, 0x4880,
+    0x1628, 0x9c8c, 0xbcd0, 0x033d, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0xc101, 0x5080, 0x1c30, 0x0910, 0x0005,
+    0x0000, 0x0000, 0x0000, 0x0182, 0x60a1, 0x2038, 0x8a12, 0x0005,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc101, 0x5080,
-    0x1c30, 0x0910, 0x15c5, 0xd59b, 0xb96e, 0xef5d, 0x0ad7, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0182, 0x60a1,
+    0x2038, 0x8a12, 0x96c5, 0xf5db, 0xc17e, 0xf161, 0x0b58, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc101,
-    0x5080, 0x1c30, 0x0910, 0x0005, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0182,
+    0x60a1, 0x2038, 0x8a12, 0x0005, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -432,38 +436,38 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x80c1, 0x3050,
-    0x101c, 0xc509, 0xf2a2, 0xcd49, 0x3568, 0x0ddb, 0x04a7, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8000, 0xa101, 0x3860,
+    0x1220, 0x058a, 0x02c3, 0xd152, 0xb66a, 0x2e1b, 0x04b7, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x2648, 0x0014, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x284c, 0x0015, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0xc101, 0x5080, 0x1c30, 0x0910, 0x0005, 0x0000,
-    0x0000, 0xc101, 0x5080, 0x1c30, 0x0910, 0x0005, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0182, 0x60a1, 0x2038, 0x8a12, 0x0005, 0x0000,
+    0x0000, 0x0182, 0x60a1, 0x2038, 0x8a12, 0x0005, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0400, 0x0304,
-    0xc142, 0x4070, 0x1424, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0800, 0x8406,
+    0xe182, 0x4880, 0x1628, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0xc101, 0x5080, 0x1c30, 0x0910, 0x0085,
+    0x0000, 0x0000, 0x0000, 0x0182, 0x60a1, 0x2038, 0x8a12, 0x00c5,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0xc101, 0x5080, 0x1c30, 0x0910, 0x0005, 0x0000, 0x0000, 0xc101,
-    0x5080, 0x1c30, 0x0910, 0x0005, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0182, 0x60a1, 0x2038, 0x8a12, 0x0005, 0x0000, 0x0000, 0x0182,
+    0x60a1, 0x2038, 0x8a12, 0x0005, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -472,8 +476,8 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0xc101, 0x5080, 0x1c30, 0x0910,
-    0x0005, 0x0000, 0x0000, 0xc101, 0x5080, 0x1c30, 0x0910, 0x0005,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0182, 0x60a1, 0x2038, 0x8a12,
+    0x0005, 0x0000, 0x0000, 0x0182, 0x60a1, 0x2038, 0x8a12, 0x0005,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -482,8 +486,8 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0001, 0x5000, 0x1c30, 0x0910, 0x0005, 0x0000, 0x0000,
-    0xc101, 0x5080, 0x1c30, 0x0910, 0x0005, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0002, 0x6000, 0x2038, 0x8a12, 0x0005, 0x0000, 0x0000,
+    0x0182, 0x60a1, 0x2038, 0x8a12, 0x0005, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -494,10 +498,39 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x37ea, 0x1c1c, 0x9726, 0x67cd, 0x7a74,
-    0x6ecd, 0x05bb, 0x0182, 0x60a1, 0x2038, 0x8a12, 0xa305, 0xc331,
-    0x82f1, 0x0182, 0x60a1, 0x2038, 0x8a12, 0xa305, 0xc331, 0x82f1,
-    0xa2c1, 0x0012, 0xcc38, 0xd39c, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x39ee, 0x5c9d, 0xa746, 0x6bd5, 0xfb76,
+    0x8f0d, 0x07cb, 0x4203, 0x70c1, 0x2440, 0x0b14, 0xc346, 0xcb41,
+    0x84f5, 0x4203, 0x70c1, 0x2440, 0x0b14, 0xc346, 0xcb41, 0x84f5,
+    0xe342, 0x0012, 0xd040, 0x549e, 0x0001, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x4203, 0x70c1, 0x2440, 0x0b14, 0xc346, 0x80f1,
+    0x2444, 0x4a13, 0x32c5, 0x1420, 0x070c, 0x4244, 0x60b1, 0x1c34,
+    0x480f, 0x3244, 0x54a1, 0x032c, 0xc142, 0x4070, 0x1424, 0x460b,
+    0xf1c3, 0x4480, 0x1324, 0xc54a, 0x0002, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa080, 0x78e1,
+    0x2240, 0x0992, 0x62a5, 0x1019, 0x860a, 0x2203, 0x58a1, 0x0430,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0c00, 0x0508, 0x01c3, 0x5091, 0x182c,
+    0x4203, 0x70c1, 0x2440, 0x0b14, 0x80c6, 0x3050, 0x101c, 0xc509,
+    0x0182, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -509,24 +542,85 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0182, 0x60a1, 0x2038, 0x8a12, 0xa305, 0x78e1,
-    0x2240, 0x0992, 0x22a5, 0x1018, 0x860a, 0x2203, 0x58a1, 0x1a30,
-    0x078e, 0x2224, 0x5099, 0x822a, 0xa101, 0x3860, 0x1220, 0x058a,
-    0xe1a3, 0x4078, 0x9222, 0xa509, 0x0002, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd800, 0x0002,
+    0x0000, 0x0000, 0x0000, 0x0004, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0180, 0x60a1,
+    0x2038, 0x8a12, 0x0005, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0c00, 0x080b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc000,
+    0x5080, 0x0030, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8040, 0x70d1,
-    0x203c, 0xc911, 0x5284, 0x0c11, 0x0508, 0x01c3, 0x5091, 0x022c,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4203, 0x70c1,
+    0x2440, 0x0b14, 0x0006, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0c00,
+    0x480b, 0xab45, 0x6ed9, 0x0b80, 0xa326, 0x70d9, 0x9e3a, 0x280f,
+    0x1a24, 0x4a91, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x4203, 0x70c1, 0x2440, 0x0b14, 0x0006, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd300, 0x9509, 0xad52,
+    0x2d58, 0x0bd7, 0x9316, 0x68cd, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0182, 0x60a1,
+    0x2038, 0x8a12, 0x0005, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0800, 0x8406, 0xe182, 0x4880, 0x1628,
-    0x0182, 0x60a1, 0x2038, 0x8a12, 0x6085, 0x2840, 0x0e18, 0x8488,
-    0x0162, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0c00, 0x0508, 0x01c3, 0x5091,
+    0x042c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xede6, 0xfeb9, 0x03b6,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0182, 0x60a1, 0x2038, 0x8a12, 0x0005,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0182, 0x60a1, 0x2038, 0x8a12, 0x0005, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa000, 0x0000,
+    0x0000, 0x0000, 0x0180, 0x0000, 0x0400, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0400, 0x0100, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x8406, 0xe182, 0x4880, 0x1628, 0x0b0c,
+    0x4548, 0xd9ab, 0xb86e, 0x6e9c, 0xebc7, 0x7ef9, 0xa0c0, 0x4870,
+    0x1a2c, 0xc88f, 0x72a4, 0x6cc9, 0x9f3a, 0xa8d0, 0x0a74, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0xede6, 0x40e0, 0x19eb, 0x079f,
+    0x2d06, 0x13d7, 0x0f1a, 0x5a0c, 0x27ae, 0x3e5c, 0x8319, 0x80c1,
+    0x2040, 0x0e10, 0x060c, 0xc183, 0xd100, 0x3468, 0x6e5a, 0xebd7,
+    0x7af5, 0xa13d, 0x40f1, 0x6edb, 0x67cb, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0xc080, 0x000c, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -538,38 +632,38 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xb800, 0x0002,
-    0x0000, 0x0000, 0x0000, 0x0002, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc100, 0x5080,
-    0x1c30, 0x0910, 0x0005, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x8b00, 0x07ca, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0180, 0x60a1, 0x2038, 0x8a12, 0xc305, 0x5202,
+    0x6ad1, 0x1bb6, 0xa72e, 0xf1db, 0xbe7a, 0x301f, 0x0008, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0383, 0x0683,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8000,
-    0x4060, 0x0028, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x1c00, 0x0000, 0x0000, 0x0000,
+    0x1040, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0182, 0x60a1,
-    0x2038, 0x8a12, 0x0005, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8b00,
-    0x27ca, 0xa335, 0x6cd5, 0xcb00, 0x9305, 0x6cd1, 0x1d38, 0x07cf,
-    0x1214, 0x488d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0180, 0x6181, 0x01c9, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0182, 0x60a1, 0x2038, 0x8a12, 0x0005, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x9280, 0x84e9, 0xa94a,
-    0xac56, 0xeb96, 0x8b05, 0x66c9, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc101, 0x5080,
-    0x1c30, 0x0910, 0x0005, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0300, 0x8142,
+    0xc961, 0x9709, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x8000, 0xa101, 0x3860, 0x2c30,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x8406, 0xc182, 0x6070, 0x7258, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0c00, 0x9618, 0xa11c, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -578,12 +672,27 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x4203, 0xc0c1, 0xe4b0, 0x0084,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0800, 0x8406, 0xe182, 0x4880,
-    0x0228, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1800, 0x00d0,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x1800, 0x2c30, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xebe2, 0xbe38, 0x0396,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6000, 0x6070,
+    0x7258, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0300, 0xc142,
+    0xb0c0, 0x84e4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0300, 0xc142, 0xb0c0, 0x84e4,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x8000, 0xa101, 0x6060, 0x7258, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -593,53 +702,19 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8000, 0x0000,
-    0x0000, 0x0000, 0x0160, 0x0000, 0x0300, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0380, 0x00e0, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5800, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0304, 0xc142, 0x4070, 0x1424, 0xca8b,
-    0x3527, 0xd5a3, 0x376c, 0x4e5c, 0xe3b7, 0x7cf5, 0x603f, 0x3850,
-    0x1624, 0x478d, 0x5264, 0x64b9, 0x9d36, 0x684f, 0x0a54, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0xabe2, 0x30c0, 0x15e3, 0x869d,
-    0x0cc5, 0x0bc7, 0x0d16, 0x198b, 0x178e, 0x3a54, 0x0217, 0x6081,
-    0x1830, 0x0c0c, 0xc58b, 0xb162, 0xccf8, 0xb366, 0x4e19, 0xe3c7,
-    0x78f1, 0x60bc, 0x30d1, 0x5ebb, 0x63c3, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0040, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x4203, 0x70c1, 0x2440, 0x0b14, 0x0586, 0xa2a4,
+    0x6cd5, 0x5c37, 0xb74e, 0xf5e3, 0x3f7c, 0x7060, 0x266b, 0x0197,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc302, 0x0662,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x1b80, 0x0000, 0x0000, 0x0000,
-    0x1000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0xc000, 0x5080, 0x1c30, 0x0910, 0x82c5,
+    0x0161, 0x68a9, 0xdb35, 0x970d, 0x0a13, 0x8406, 0xe182, 0x4880,
+    0x1628, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0xc100, 0x5160, 0x01c1, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8200, 0x6101,
-    0xc151, 0x9505, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0800, 0x1516, 0x80dc, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0800,
+    0x8406, 0xe182, 0x4880, 0x1628, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -647,67 +722,59 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0182, 0xb0a1, 0xe0a8, 0x0082,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1000, 0x00cc,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8200, 0xa101,
-    0xa8b0, 0x82e0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x8200, 0xa101, 0xa8b0, 0x82e0,
+    0x0000, 0x0000, 0x0000, 0x0182, 0x60a1, 0x2038, 0x8a12, 0x0005,
+    0x0000, 0x0000, 0x0180, 0x60a1, 0x2038, 0x8a12, 0xc305, 0x5202,
+    0x6ad1, 0x1bb6, 0x272e, 0x0004, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0182, 0x60a1, 0x2038, 0x8a12, 0xe545, 0x9a93,
-    0x6ad1, 0x1bb6, 0xa72e, 0xf1db, 0xbe7a, 0xf01f, 0x062a, 0x0187,
+    0x0000, 0x0000, 0x0182, 0x60a1, 0x2038, 0x8a12, 0xc305, 0x5202,
+    0x6ad1, 0x1bb6, 0x000e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x8284, 0x80e1, 0x2848, 0x0516, 0x01c3, 0x5091, 0x0c2c, 0x4407,
+    0xb142, 0x1018, 0x860a, 0x2203, 0x58a1, 0x080c, 0xc305, 0x5081,
+    0x1828, 0x880e, 0x6284, 0x2031, 0x0a14, 0x4386, 0x3ad5, 0x1420,
+    0x860a, 0xa143, 0x3060, 0x0c18, 0x4488, 0xa122, 0x2c50, 0x8b16,
+    0xa105, 0x3860, 0x0620, 0x8284, 0x70c1, 0x1038, 0x030a, 0xb902,
+    0x26dc, 0xdf97, 0xb666, 0xbcd9, 0x9725, 0x3455, 0x01c3, 0x5091,
+    0x002c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x8000, 0x4060, 0x1828, 0x880e, 0x6284,
-    0xf951, 0x66a4, 0x9ab4, 0x86ed, 0x060b, 0x0304, 0xc142, 0x4070,
-    0x1424, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0400,
-    0x0304, 0xc142, 0x4070, 0x1424, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x4203, 0x70c1, 0x2440, 0x8414, 0xe182, 0x4880, 0x0a28, 0x0386,
-    0xa122, 0x0c10, 0x0508, 0x01c3, 0x5091, 0x0608, 0x8284, 0x4061,
-    0x1420, 0x070c, 0x4244, 0x1821, 0x0810, 0x0305, 0x2ab5, 0x1018,
-    0x0508, 0x8103, 0x2850, 0x0a14, 0x0407, 0x9102, 0x2848, 0x0a14,
-    0x80c5, 0x3050, 0x041c, 0x4203, 0x60a1, 0x0c30, 0x8208, 0x3801,
-    0x069c, 0xd787, 0xb462, 0x0018, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0182, 0x60a1, 0x2038, 0x8a12, 0x8005,
+    0x5b91, 0xb15e, 0x00d9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0182, 0x60a1, 0x2038, 0x8a12, 0xe545, 0x9a93,
-    0x6ad1, 0x1bb6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x4203, 0x70c1, 0x2440, 0x0b14, 0x0586, 0xa2a4,
+    0x6cd5, 0x1c37, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0404, 0x4203, 0x70c1, 0x2440, 0x0114, 0x80c1,
-    0x3050, 0x101c, 0x4509, 0x3040, 0x1420, 0x070c, 0x4244, 0x1011,
-    0x080c, 0xc305, 0x9101, 0x0450, 0x0304, 0xc142, 0x4070, 0x1424,
-    0x8081, 0x4060, 0x1828, 0x880e, 0x0284, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0608, 0x8284, 0x80e1, 0x2848, 0x8216, 0xa101,
+    0x3860, 0x1220, 0x858a, 0x4060, 0x1828, 0x880e, 0x6284, 0x1821,
+    0x0a10, 0x0386, 0xa122, 0x0858, 0x8406, 0xe182, 0x4880, 0x1628,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8406,
+    0xe182, 0x4880, 0x1628, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0xc102, 0x5080, 0x1c30, 0x0910, 0x42c5, 0x0020, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x000a,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x000b,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
--- a/lib/unictype/pr_alphabetic.h
+++ b/lib/unictype/pr_alphabetic.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[3];
     short level2[3 << 7];
-    /*unsigned*/ int level3[53 << 4];
+    /*unsigned*/ int level3[61 << 4];
   }
 u_property_alphabetic =
 {
@@ -153,22 +153,22 @@
         4 +   384 * sizeof (short) / sizeof (int) +   528,
         4 +   384 * sizeof (short) / sizeof (int) +   544,
         4 +   384 * sizeof (short) / sizeof (int) +   560,
-       -1,
         4 +   384 * sizeof (short) / sizeof (int) +   576,
         4 +   384 * sizeof (short) / sizeof (int) +   592,
         4 +   384 * sizeof (short) / sizeof (int) +   608,
-       -1,
         4 +   384 * sizeof (short) / sizeof (int) +   624,
        -1,
-       -1,
         4 +   384 * sizeof (short) / sizeof (int) +   640,
-       -1,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   656,
+        4 +   384 * sizeof (short) / sizeof (int) +   672,
+        4 +   384 * sizeof (short) / sizeof (int) +   688,
+        4 +   384 * sizeof (short) / sizeof (int) +   704,
+        4 +   384 * sizeof (short) / sizeof (int) +   720,
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
-        4 +   384 * sizeof (short) / sizeof (int) +   656,
-        4 +   384 * sizeof (short) / sizeof (int) +   672,
+        4 +   384 * sizeof (short) / sizeof (int) +   736,
+        4 +   384 * sizeof (short) / sizeof (int) +   752,
        -1,
        -1,
        -1,
@@ -176,7 +176,7 @@
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
-        4 +   384 * sizeof (short) / sizeof (int) +   688,
+        4 +   384 * sizeof (short) / sizeof (int) +   768,
        -1,
        -1,
        -1,
@@ -203,9 +203,9 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
-        4 +   384 * sizeof (short) / sizeof (int) +   704,
+        4 +   384 * sizeof (short) / sizeof (int) +   784,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   720,
+        4 +   384 * sizeof (short) / sizeof (int) +   800,
        -1,
        -1,
        -1,
@@ -238,12 +238,13 @@
        -1,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   736,
+        4 +   384 * sizeof (short) / sizeof (int) +   816,
        -1,
        -1,
        -1,
        -1,
        -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   832,
        -1,
        -1,
        -1,
@@ -255,9 +256,8 @@
        -1,
        -1,
        -1,
-       -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   752,
-        4 +   384 * sizeof (short) / sizeof (int) +   768,
+        4 +   384 * sizeof (short) / sizeof (int) +   848,
+        4 +   384 * sizeof (short) / sizeof (int) +   864,
        -1,
        -1,
        -1,
@@ -266,11 +266,11 @@
        -1,
        -1,
        -1,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   880,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   784,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   896,
+        4 +   384 * sizeof (short) / sizeof (int) +   912,
        -1,
        -1,
        -1,
@@ -361,7 +361,7 @@
         4 +   384 * sizeof (short) / sizeof (int) +   336,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
-        4 +   384 * sizeof (short) / sizeof (int) +   800,
+        4 +   384 * sizeof (short) / sizeof (int) +   928,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
@@ -369,8 +369,8 @@
         4 +   384 * sizeof (short) / sizeof (int) +   336,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
-        4 +   384 * sizeof (short) / sizeof (int) +   816,
-        4 +   384 * sizeof (short) / sizeof (int) +   832,
+        4 +   384 * sizeof (short) / sizeof (int) +   944,
+        4 +   384 * sizeof (short) / sizeof (int) +   960,
        -1,
        -1,
        -1,
@@ -403,7 +403,7 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
-        4 +   384 * sizeof (short) / sizeof (int) +   832,
+        4 +   384 * sizeof (short) / sizeof (int) +   960,
        -1,
        -1
   },
@@ -414,27 +414,27 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x0003FFC3, 0x0000501F,
-    0x00000000, 0x00000000, 0x00000020, 0x3CDF0000,
+    0x00000000, 0x00000000, 0x00000020, 0xBCDF0000,
     0xFFFFD740, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFBFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE00FF, 0x027FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFEFFFF, 0x027FFFFF, 0xFFFFFFFE,
     0x000000FF, 0xBFFF0000, 0xFFFF00B6, 0x000707FF,
     0x07FF0000, 0xFFFFFFFF, 0xFEFFFFFF, 0xFFFFC000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x1FEFFFFF, 0x9C00E1FE,
     0xFFFF0000, 0xFFFFFFFF, 0xFFFFE000, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0003FFFF, 0xFFFFFC00, 0x043007FF,
     0xFCFFFFFF, 0x00001FFF, 0x01FFFFFF, 0x00000000,
-    0x00000000, 0x00001FFD, 0x00000000, 0x7FFF03F0,
-    0xFFFFFFFF, 0xEFFFFFFF, 0xFFE1DFFF, 0xFEFE000F,
-    0xFFF99FEE, 0xE3C5FDFF, 0xB080599F, 0x0003000F,
+    0x00000000, 0x0007FFFF, 0x00000000, 0xFFFF03F0,
+    0xFFFFFFFF, 0xEFFFFFFF, 0xFFE1DFFF, 0xFFFE000F,
+    0xFFF99FEF, 0xE3C5FDFF, 0xB080599F, 0x0003000F,
     0xFFF987EE, 0xC36DFDFF, 0x5E021987, 0x003F0000,
     0xFFFBBFEE, 0xE3EDFDFF, 0x00011BBF, 0x0000000F,
     0xFFF99FEE, 0xE3EDFDFF, 0xB0C0199F, 0x0002000F,
     0xD63DC7EC, 0xC3FFC718, 0x00811DC7, 0x00000000,
-    0xFFFDDFEE, 0xE3EFFDFF, 0x03601DDF, 0x0000000F,
-    0xFFFDDFEC, 0xE3EFFDFF, 0x40601DDF, 0x0006000F,
-    0xFFFDDFEC, 0xE7FFFFFF, 0x00805DDF, 0xFC00000F,
+    0xFFFDDFEF, 0xE3FFFDFF, 0x03601DDF, 0x0000000F,
+    0xFFFDDFEE, 0xE3EFFDFF, 0x40601DDF, 0x0006000F,
+    0xFFFDDFEE, 0xE7FFFFFF, 0x00805DDF, 0xFC00000F,
     0xFC7FFFEC, 0x2FFBFFFF, 0xFF5F807F, 0x000C0000,
     0xFFFFFFFE, 0x07FFFFFF, 0x0000207F, 0x00000000,
     0xFEF02596, 0x3BFFECAE, 0xF000205F, 0x00000000,
@@ -453,12 +453,12 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF9FFF,
-    0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x0001C7FF,
+    0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x01FFC7FF,
     0x000FDFFF, 0x000FFFFF, 0x000FFFFF, 0x000DDFFF,
     0xFFFFFFFF, 0xFFCFFFFF, 0x108001FF, 0x00000000,
     0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFF07FF, 0xFFFFFFFF, 0x003FFFFF,
-    0x1FFFFFFF, 0x01FF0FFF, 0xFFFF0000, 0x001F3FFF,
+    0x7FFFFFFF, 0x01FF0FFF, 0xFFFF0000, 0x001F3FFF,
     0xFFFFFFFF, 0xFFFF0FFF, 0x000003FF, 0x00000000,
     0x0FFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF, 0x001FFFFE,
     0x00000000, 0x00000080, 0x00000000, 0x00000000,
@@ -467,7 +467,7 @@
     0xFFFFFFFF, 0x003FFFFF, 0xFC00E000, 0x3FFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x006FDE00,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0x001FFF80,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF,
@@ -509,16 +509,16 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFF1FFF, 0x00000C00, 0xFFFFFFFF, 0x8FF07FFF,
-    0x80FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF,
+    0xBFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF,
     0xFF800000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000F79FF, 0x000007FF, 0x00000000, 0xFF000000,
+    0xFFFF79FF, 0x00033FFF, 0x00000000, 0xFF800000,
     0xFFFFF7BB, 0x000000FF, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x0000000F, 0x08FC0000,
     0xFFFFFC00, 0xFFFF07FF, 0x0007FFFF, 0x1FFFFFFF,
-    0xFFFFFFFF, 0xFFF7FFFF, 0x00008000, 0x00000000,
-    0xFFFFFFFF, 0x007FFFFF, 0x00003FFF, 0x047FFFFF,
+    0xFFFFFFFF, 0xFFF7FFFF, 0x00008000, 0x7C00FFDF,
+    0xFFFFFFFF, 0x007FFFFF, 0x00003FFF, 0xC47FFFFF,
     0xFFFFFFFF, 0x7FFFFFFF, 0x38000005, 0x003CFFFF,
-    0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
+    0x007E7E7E, 0xFFFF7F7F, 0xF7FFFFFF, 0x00000030,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x000007FF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -546,48 +546,68 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x1FFFFFFF, 0xFFFFFFFF, 0x0001FFFF, 0x00000000,
-    0x7FFFFFFF, 0xFFFF0000, 0x000007FF, 0x00000000,
+    0xFFFFFFFF, 0xFFFF0000, 0xFFFF07FF, 0x07FFFFFF,
     0x3FFFFFFF, 0xFFFFFFFF, 0x003EFF0F, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFF00FF, 0xFFFFFFFF, 0x0000000F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFD3F, 0x91BFFFFF, 0x003FFFFF, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0x007FFFFF, 0x003FFFFF, 0x000000FF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFD3F, 0x91BFFFFF, 0x003FFFFF, 0x007FFFFF,
+    0x7FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x003FFFFF, 0x03FFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xC0FFFFFF, 0x00000000, 0x00000000,
     0xFEEFF06F, 0x000FFFFF, 0x00000000, 0x1FFFFFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x1FFFFFFF, 0x00000000, 0xFFFFFEFF, 0x0000001F,
     0xFFFFFFFF, 0x003FFFFF, 0x003FFFFF, 0x0007FFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x0003FFFF, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x000001FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000000,
     0xFFFFFFFC, 0x01FFFFFF, 0xFFFF0000, 0x000001FF,
-    0xFFFFFFFF, 0x0007FFFF, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x0000001E, 0x00000000,
+    0xFFFFFFFF, 0x0007FFFF, 0xFFFF0000, 0x0047FFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0400001E, 0x00000000,
+    0xFFFBFFFF, 0x009FFFFF, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0xFFFFFFFF, 0x000001FF,
+    0xFFF99FEE, 0xE3EDFDFF, 0xE080199F, 0x0000000F,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x000000B3, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x7F3FFFFF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x7FFFFFFF, 0x00000011, 0x00000000,
     0xFFFFFFFF, 0x003FFFFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x80000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0x01FFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x01FFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000007,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0x00007FFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0x01FFFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x01FFFFFF, 0x7FFFFFFF, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFF0000, 0x00003FFF,
+    0xFFFFFFFF, 0x007FFFFF, 0x0000000F, 0xE0FFFFF8,
+    0x0000FFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF001F, 0x7FFFFFFF,
@@ -596,6 +616,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFF07FF,
+    0x43FF01FF, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF,
     0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF,
     0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF,
@@ -604,10 +628,18 @@
     0xFFFFFFFF, 0xFFFFFF3F, 0xF7FFFFFD, 0xF7FFFFFF,
     0xFFDFFFFF, 0xFFDFFFFF, 0xFFFF7FFF, 0xFFFF7FFF,
     0xFFFFFDFF, 0xFFFFFDFF, 0x00000FF7, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000001F, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFEF, 0x0AF7FE96, 0xAA96EA84, 0x5EF7F796,
     0x0FFFFBFF, 0x0FFFFBEE, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0xFFFF03FF, 0xFFFF03FF,
+    0x000003FF, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
--- a/lib/unictype/pr_ascii_hex_digit.h
+++ b/lib/unictype/pr_ascii_hex_digit.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_bidi_arabic_digit.h
+++ b/lib/unictype/pr_bidi_arabic_digit.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -279,7 +279,7 @@
        -1
   },
   {
-    0x0000001F, 0x00000000, 0x00000000, 0x00001BFF,
+    0x0000003F, 0x00000000, 0x00000000, 0x00001BFF,
     0x00000000, 0x00000000, 0x20000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/pr_bidi_arabic_right_to_left.h
+++ b/lib/unictype/pr_bidi_arabic_right_to_left.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -279,12 +279,12 @@
        -1
   },
   {
-    0xF8002920, 0xFFFFFFFF, 0x000007FF, 0xFFFEE000,
+    0xF8002900, 0xFFFFFFFF, 0x000007FF, 0xFFFEE000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, 0xFC00C060,
     0xFFFDFFFF, 0x0000FFFF, 0xFFFFF800, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFE003F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00001FFD, 0x00000000, 0x00000000,
+    0x00000000, 0x0007FFFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000020,
@@ -299,7 +299,7 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0x3FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, 0xDFFF0000,
-    0xFC000000, 0x0000FF80, 0x00080000, 0xFFFFF080,
+    0xFC000000, 0x0000C000, 0x00080000, 0xFFFFF080,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/pr_bidi_block_separator.h
+++ b/lib/unictype/pr_bidi_block_separator.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_bidi_boundary_neutral.h
+++ b/lib/unictype/pr_bidi_boundary_neutral.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[17];
     short level2[4 << 7];
-    /*unsigned*/ int level3[9 << 4];
+    /*unsigned*/ int level3[10 << 4];
   }
 u_property_bidi_boundary_neutral =
 {
@@ -258,6 +258,7 @@
        -1,
        -1,
        -1,
+       18 +   512 * sizeof (short) / sizeof (int) +    80,
        -1,
        -1,
        -1,
@@ -267,8 +268,7 @@
        -1,
        -1,
        -1,
-       -1,
-       18 +   512 * sizeof (short) / sizeof (int) +    80,
+       18 +   512 * sizeof (short) / sizeof (int) +    96,
        -1,
        -1,
        -1,
@@ -291,7 +291,7 @@
        -1,
        -1,
        -1,
-       18 +   512 * sizeof (short) / sizeof (int) +    96,
+       18 +   512 * sizeof (short) / sizeof (int) +   112,
        -1,
        -1,
        -1,
@@ -419,15 +419,15 @@
        -1,
        -1,
        -1,
-       18 +   512 * sizeof (short) / sizeof (int) +    96,
        18 +   512 * sizeof (short) / sizeof (int) +   112,
        18 +   512 * sizeof (short) / sizeof (int) +   128,
-       18 +   512 * sizeof (short) / sizeof (int) +   128,
-       18 +   512 * sizeof (short) / sizeof (int) +   128,
-       18 +   512 * sizeof (short) / sizeof (int) +   128,
-       18 +   512 * sizeof (short) / sizeof (int) +   128,
-       18 +   512 * sizeof (short) / sizeof (int) +   128,
-       18 +   512 * sizeof (short) / sizeof (int) +   128,
+       18 +   512 * sizeof (short) / sizeof (int) +   144,
+       18 +   512 * sizeof (short) / sizeof (int) +   144,
+       18 +   512 * sizeof (short) / sizeof (int) +   144,
+       18 +   512 * sizeof (short) / sizeof (int) +   144,
+       18 +   512 * sizeof (short) / sizeof (int) +   144,
+       18 +   512 * sizeof (short) / sizeof (int) +   144,
+       18 +   512 * sizeof (short) / sizeof (int) +   144,
        -1,
        -1,
        -1,
@@ -547,7 +547,7 @@
        -1,
        -1,
        -1,
-       18 +   512 * sizeof (short) / sizeof (int) +    96
+       18 +   512 * sizeof (short) / sizeof (int) +   112
   },
   {
     0x0FFFC1FF, 0x00000000, 0x00000000, 0x80000000,
@@ -571,6 +571,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xC1FF0000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x0000000F, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x07F80000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/pr_bidi_common_separator.h
+++ b/lib/unictype/pr_bidi_common_separator.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_bidi_control.h
+++ b/lib/unictype/pr_bidi_control.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_bidi_embedding_or_override.h
+++ b/lib/unictype/pr_bidi_embedding_or_override.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_bidi_eur_num_separator.h
+++ b/lib/unictype/pr_bidi_eur_num_separator.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_bidi_eur_num_terminator.h
+++ b/lib/unictype/pr_bidi_eur_num_terminator.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -177,7 +177,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x08000000, 0x00000000,
     0x00000000, 0x001F0000, 0x00000000, 0x00000000,
-    0x00000000, 0x07FFFFFF, 0x00000000, 0x00000000,
+    0x00000000, 0x3FFFFFFF, 0x00000000, 0x00000000,
     0x00000000, 0x00004000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00080000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/pr_bidi_european_digit.h
+++ b/lib/unictype/pr_bidi_european_digit.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[7 << 4];
+    /*unsigned*/ int level3[8 << 4];
   }
 u_property_bidi_european_digit =
 {
@@ -150,6 +150,7 @@
        -1,
         3 +   256 * sizeof (short) / sizeof (int) +    64,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +    80,
        -1,
        -1,
        -1,
@@ -255,8 +256,7 @@
        -1,
        -1,
        -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +    80,
+        3 +   256 * sizeof (short) / sizeof (int) +    96,
        -1,
        -1,
        -1,
@@ -269,7 +269,7 @@
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +    96,
+        3 +   256 * sizeof (short) / sizeof (int) +   112,
        -1,
        -1,
        -1,
@@ -300,6 +300,10 @@
     0x03FF0000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x0FFFFFFE,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFC000, 0xFFFFFFFF,
--- a/lib/unictype/pr_bidi_hebrew_right_to_left.h
+++ b/lib/unictype/pr_bidi_hebrew_right_to_left.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[9 << 4];
+    /*unsigned*/ int level3[10 << 4];
   }
 u_property_bidi_hebrew_right_to_left =
 {
@@ -265,7 +265,7 @@
        -1,
        -1,
        -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   144,
        -1,
        -1,
        -1,
@@ -288,7 +288,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0xFC3007FF,
     0x043FFFFF, 0xFFFFC110, 0xF1FFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFE002, 0xFFFFFFFF, 0x8000000F,
+    0xFFFFFFFF, 0xFFF80000, 0xFFFFFFFF, 0x0000000F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00008000, 0x00000000, 0x00000000, 0x00000000,
@@ -304,7 +304,7 @@
     0x7FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFF0F91, 0x78FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFF9F,
     0xFFFFFFFF, 0x01FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -314,6 +314,10 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x80000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FF9F, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/pr_bidi_left_to_right.h
+++ b/lib/unictype/pr_bidi_left_to_right.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[17];
     short level2[4 << 7];
-    /*unsigned*/ int level3[46 << 4];
+    /*unsigned*/ int level3[53 << 4];
   }
 u_property_bidi_left_to_right =
 {
@@ -165,19 +165,17 @@
        -1,
        18 +   512 * sizeof (short) / sizeof (int) +   512,
        18 +   512 * sizeof (short) / sizeof (int) +   528,
-       18 +   512 * sizeof (short) / sizeof (int) +   400,
+       18 +   512 * sizeof (short) / sizeof (int) +   544,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        -1,
        -1,
        -1,
        -1,
-       18 +   512 * sizeof (short) / sizeof (int) +   544,
-       18 +   512 * sizeof (short) / sizeof (int) +   400,
-       18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   560,
-       18 +   512 * sizeof (short) / sizeof (int) +   400,
-       18 +   512 * sizeof (short) / sizeof (int) +   400,
+       18 +   512 * sizeof (short) / sizeof (int) +   576,
+       18 +   512 * sizeof (short) / sizeof (int) +   592,
+       18 +   512 * sizeof (short) / sizeof (int) +   608,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
@@ -219,7 +217,9 @@
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
-       18 +   512 * sizeof (short) / sizeof (int) +   576,
+       18 +   512 * sizeof (short) / sizeof (int) +   624,
+       18 +   512 * sizeof (short) / sizeof (int) +   400,
+       18 +   512 * sizeof (short) / sizeof (int) +   640,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
@@ -258,7 +258,7 @@
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
-       18 +   512 * sizeof (short) / sizeof (int) +   400,
+       18 +   512 * sizeof (short) / sizeof (int) +   656,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
@@ -268,10 +268,10 @@
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
-       18 +   512 * sizeof (short) / sizeof (int) +   592,
-       18 +   512 * sizeof (short) / sizeof (int) +   608,
+       18 +   512 * sizeof (short) / sizeof (int) +   672,
+       18 +   512 * sizeof (short) / sizeof (int) +   688,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
-       18 +   512 * sizeof (short) / sizeof (int) +   624,
+       18 +   512 * sizeof (short) / sizeof (int) +   704,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
@@ -280,18 +280,18 @@
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
-       18 +   512 * sizeof (short) / sizeof (int) +   400,
+       18 +   512 * sizeof (short) / sizeof (int) +   720,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
-       18 +   512 * sizeof (short) / sizeof (int) +   640,
-       18 +   512 * sizeof (short) / sizeof (int) +   656,
-       18 +   512 * sizeof (short) / sizeof (int) +   672,
-       18 +   512 * sizeof (short) / sizeof (int) +   688,
-       18 +   512 * sizeof (short) / sizeof (int) +   704,
+       18 +   512 * sizeof (short) / sizeof (int) +   736,
+       18 +   512 * sizeof (short) / sizeof (int) +   752,
+       18 +   512 * sizeof (short) / sizeof (int) +   768,
+       18 +   512 * sizeof (short) / sizeof (int) +   784,
+       18 +   512 * sizeof (short) / sizeof (int) +   800,
+       18 +   512 * sizeof (short) / sizeof (int) +   816,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
-       18 +   512 * sizeof (short) / sizeof (int) +   400,
-       18 +   512 * sizeof (short) / sizeof (int) +   720,
+       18 +   512 * sizeof (short) / sizeof (int) +   832,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
@@ -419,7 +419,7 @@
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
-       18 +   512 * sizeof (short) / sizeof (int) +   720,
+       18 +   512 * sizeof (short) / sizeof (int) +   832,
        -1,
        -1,
        -1,
@@ -547,7 +547,7 @@
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
-       18 +   512 * sizeof (short) / sizeof (int) +   720
+       18 +   512 * sizeof (short) / sizeof (int) +   832
   },
   {
     0x00000000, 0x00000000, 0x07FFFFFE, 0x07FFFFFE,
@@ -561,7 +561,7 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFC07, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00007BFF, 0x00000000, 0x00000000, 0x00000000,
+    0x00001BFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFF8, 0xEBFFFFFF, 0xFF01DE01, 0xFFFFFFF3,
@@ -570,9 +570,9 @@
     0xFFFFFFF9, 0xEFFFFFFF, 0xFFFFDE41, 0xFFFDFFF3,
     0xFFFFFFFD, 0x6FFFFFFF, 0xFFBFDFE1, 0xFFFFFFF3,
     0xFFFFFFFB, 0xFFFFFFFF, 0xFFFFDFFE, 0xF807FFFF,
-    0xFFFFFFFF, 0x3FFFFFFF, 0xFF9FC23E, 0x80FFFFF3,
-    0xFFFFFFFF, 0xEFFFFFFF, 0xFFFFCFFF, 0xFFFFFFF3,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFDFE1, 0xFFFFFFF3,
+    0xFFFFFFFE, 0x3FFFFFFF, 0xFF9FC23E, 0x80FFFFF3,
+    0xFFFFFFFD, 0xEFFFFFFF, 0xFFFFCFFF, 0xFFFFFFF3,
+    0xFFFFFFFD, 0xFFFFFFFF, 0xFFFFDFE1, 0xFFFFFFF3,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFA3FBFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0x780DFFFF, 0xFFFF807F, 0xFFFFFFFF,
     0xFFFFFFFF, 0xE40DFFFF, 0xFFFFC0FF, 0xFFFFFFFF,
@@ -599,32 +599,32 @@
     0xFFFFFFFF, 0xF1FBFE78, 0xFFFFFFCE, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x3FFFFFFF, 0x00000000,
     0xF67FFFFF, 0xFFFFFFFF, 0x80BFFFFF, 0x6007E01A,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0x8000FFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFF0, 0xE82FFFFF, 0xFFFFFFFB, 0xFFF007FF,
-    0xFFFFFFFC, 0xFFFFF4C3, 0xFFFFFFFF, 0xFFFC5CBF,
+    0xFFFFFFFC, 0xFFFFC4C3, 0xFFFFFFFF, 0xFFFC5CBF,
     0xFFFFFFFF, 0xFF300FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x0008FFFF, 0xFFEFDE02,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0008FFFF, 0xFCEFDE02,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0x0FFFFF80,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0x0FC00000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0x5FFFFFFF, 0x1FFF1FFC, 0x9FFF1FFF,
     0x00004000, 0x00000000, 0x00000000, 0x800E0000,
-    0xFFFF8000, 0xF8000000, 0x0000FFFF, 0xFFFE0000,
+    0xFFFF8000, 0xC0000000, 0x0000FFFF, 0xFFFE0000,
     0x3E2FFC84, 0xF3FFBD50, 0x0000C3E0, 0xFFFFFFFF,
     0x0000FDFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFC00000, 0xFFFFFFFF, 0x07FFFFFF,
-    0x00200000, 0x00000000, 0x00000000, 0xFFF00000,
+    0x00200000, 0x00000000, 0x00000000, 0xF8000000,
     0x00000000, 0xFFFFFF80, 0xFFFFF800, 0x00000000,
     0xF0000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x000003FF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00001000, 0x00000000, 0x00000000,
-    0x00000001, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -632,13 +632,13 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFC00E000, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00300000,
+    0x00C00000, 0x1C000000, 0xFFFC0200, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x01FC781F,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000000,
-    0x00000000, 0xF0000000, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0xFFFFFFF8, 0xFFFFFFFF,
     0x04000000, 0x00000000, 0x00000000, 0xFFF00000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFC00000, 0xF000FFFF,
@@ -669,8 +669,8 @@
     0xFFFFF7BB, 0xFCFFF09F, 0xFFFFFFFF, 0xFF0FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFEF, 0xFFFC0000,
     0xFFFFFFFF, 0xFFFFC03F, 0xFFFC007F, 0xFFFFFFFF,
-    0xFFFFFFF8, 0xEC37FFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFF9981FF, 0xFFFFEFF7, 0xFFFFFFFF,
+    0xFFFFFFF8, 0xEC37FFFF, 0xFFFFFFFF, 0xFFFFFFDF,
+    0xFFFFFFFF, 0xFF9981FF, 0xFFFFEFF7, 0xEFFFFFFF,
     0xFFFFFFFF, 0x3E62FFFF, 0xFFFFFFFD, 0xFFBFCFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFDEDF,
@@ -685,20 +685,40 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFD, 0xFFFFFFFF, 0x00000000, 0x00000000,
-    0xF000F800, 0xFFFFFFFF, 0xFFFFFFFF, 0xDFFFFFFF,
-    0xFFFFFFFD, 0x00FFFFFF, 0x0003FF80, 0xFFFFFFC0,
+    0xF000E000, 0xFFFFFFFE, 0xFFFFFFFF, 0xDFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xF0000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xF83FFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFD, 0x00FFFFFF, 0x0003FF80, 0x7FFFFFC0,
     0xFFFFFFFC, 0xF987FFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFF8, 0xFFE0107F, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFF8, 0xFFE0107F, 0xFFFFFFFF, 0xFFF7FFFF,
     0xFFFFFFFC, 0x803FFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFF2C7FFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF, 0xFFFFF807,
+    0xFFFFFFFD, 0xEFFFFFFF, 0xFFFFFFFE, 0xFFE0E03F,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0x7A07FFFF, 0xFFFFFFF2, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0x4FC3FFFF, 0xFFFFFFFE, 0xFFFFFFFF,
+    0xFFFFFFFF, 0x5807FFFF, 0xFFFFFFFE, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFF40D7FF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFE0FFFF,
+    0xFFFFFFFF, 0xFF80FFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFF87FFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x9FFFFFFF, 0xFFFFFFF0, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0007FC7F,
     0xFFFFF018, 0xFFFFC3FF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -710,25 +730,33 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xF7FFFFFF, 0xFFFFFFFF,
     0xFFDFFFFF, 0xFFFFFFFF, 0xFFFF7FFF, 0xFFFFFFFF,
     0xFFFFFDFF, 0xFFFFFFFF, 0x00003FF7, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFF800060, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000010, 0xF5080169, 0x5569157B, 0xA1080869,
     0xF0000400, 0xF0000411, 0xFFFFFFFF, 0xFFFCFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x0000F000, 0x00000000, 0x00000000,
-    0xFFF00000, 0x80018000, 0x00010001, 0xFFFFFFFF,
-    0xFFFFF800, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFF3FF,
+    0xFFF00000, 0x00018000, 0x00010001, 0xFFC00000,
+    0xFFFFE000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFF3FF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00000000, 0x0040FFFE, 0x00000000, 0xE0000000,
-    0xFFF00000, 0x00000000, 0xFFFFF820, 0xFFFE0000,
-    0x00000000, 0x80000000, 0x00000002, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0xE1000000,
-    0x00000000, 0xC0000000, 0x0000FFF0, 0xFFFFFF00,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF,
-    0x00000000, 0x00000000, 0xFFFF001E, 0xFFFFFFFF,
-    0x00000000, 0x00000000, 0xFFFFFFC0, 0xFFFFFFFF,
+    0x00000000, 0x0000E000, 0x00000000, 0xC0000000,
+    0x00000000, 0x00000000, 0x000F8000, 0xFF000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x80000000,
+    0x00000000, 0x00000000, 0x0000F800, 0x04000000,
+    0x00000000, 0x00000010, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000018, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFF0000, 0xFFF0E000,
     0x00000000, 0x00000000, 0x00000000, 0xFFF00000,
+    0x00000000, 0x00000000, 0xFFE00000, 0xFFFFFFFF,
+    0x0000F000, 0x00000000, 0xFC00FF00, 0x00000000,
+    0x0000FF00, 0xFFFFC000, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
--- a/lib/unictype/pr_bidi_non_spacing_mark.h
+++ b/lib/unictype/pr_bidi_non_spacing_mark.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[15];
     short level2[3 << 7];
-    /*unsigned*/ int level3[29 << 4];
+    /*unsigned*/ int level3[35 << 4];
   }
 u_property_bidi_non_spacing_mark =
 {
@@ -163,19 +163,17 @@
        -1,
        16 +   384 * sizeof (short) / sizeof (int) +   320,
        16 +   384 * sizeof (short) / sizeof (int) +   336,
-       -1,
-       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   352,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   352,
-       -1,
        -1,
        16 +   384 * sizeof (short) / sizeof (int) +   368,
        -1,
        -1,
        16 +   384 * sizeof (short) / sizeof (int) +   384,
-       -1,
-       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   400,
+       16 +   384 * sizeof (short) / sizeof (int) +   416,
+       16 +   384 * sizeof (short) / sizeof (int) +   432,
        -1,
        -1,
        -1,
@@ -217,7 +215,9 @@
        -1,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   400,
+       16 +   384 * sizeof (short) / sizeof (int) +   448,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   464,
        -1,
        -1,
        -1,
@@ -256,6 +256,18 @@
        -1,
        -1,
        -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   480,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   496,
+       16 +   384 * sizeof (short) / sizeof (int) +   512,
        -1,
        -1,
        -1,
@@ -266,8 +278,7 @@
        -1,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   416,
-       16 +   384 * sizeof (short) / sizeof (int) +   432,
+       16 +   384 * sizeof (short) / sizeof (int) +   528,
        -1,
        -1,
        -1,
@@ -279,18 +290,7 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   448,
+       16 +   384 * sizeof (short) / sizeof (int) +   544,
        -1,
        -1,
        -1,
@@ -433,16 +433,16 @@
     0x00020000, 0xFFFF0000, 0x000007FF, 0x00000000,
     0x00000000, 0x0001FFC0, 0x00000000, 0x000FF800,
     0xFBC00000, 0x00003EEF, 0x0E000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x7FFFFFF0,
+    0x00000000, 0x00000000, 0x00000000, 0xFFFFFFF0,
     0x00000007, 0x14000000, 0x00FE21FE, 0x0000000C,
     0x00000002, 0x10000000, 0x0000201E, 0x0000000C,
     0x00000006, 0x10000000, 0x00023986, 0x00230000,
     0x00000006, 0x10000000, 0x000021BE, 0x0000000C,
     0x00000002, 0x90000000, 0x0040201E, 0x0000000C,
     0x00000004, 0x00000000, 0x00002001, 0x00000000,
-    0x00000000, 0xC0000000, 0x00603DC1, 0x0000000C,
-    0x00000000, 0x10000000, 0x00003000, 0x0000000C,
-    0x00000000, 0x00000000, 0x0000201E, 0x0000000C,
+    0x00000001, 0xC0000000, 0x00603DC1, 0x0000000C,
+    0x00000002, 0x10000000, 0x00003000, 0x0000000C,
+    0x00000002, 0x00000000, 0x0000201E, 0x0000000C,
     0x00000000, 0x00000000, 0x005C0400, 0x00000000,
     0x00000000, 0x07F20000, 0x00007F80, 0x00000000,
     0x00000000, 0x1BF20000, 0x00003F00, 0x00000000,
@@ -465,13 +465,13 @@
     0x00000000, 0x0E040187, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x09800000, 0x00000000, 0x7F400000, 0x9FF81FE5,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x7FFF0000, 0x00000000, 0x00000000,
     0x0000000F, 0x17D00000, 0x00000004, 0x000FF800,
-    0x00000003, 0x00000B3C, 0x00000000, 0x0003A340,
+    0x00000003, 0x00003B3C, 0x00000000, 0x0003A340,
     0x00000000, 0x00CFF000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFF70000, 0x001021FD,
+    0x00000000, 0x00000000, 0xFFF70000, 0x031021FD,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFFFFFFF, 0xF000007F,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0xF03FFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFF0000, 0x0001FFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -491,8 +491,8 @@
     0x00000844, 0x00000060, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000010, 0x0003FFFF,
     0x00000000, 0x00003FC0, 0x0003FF80, 0x00000000,
-    0x00000007, 0x13C80000, 0x00000000, 0x00000000,
-    0x00000000, 0x00667E00, 0x00001008, 0x00000000,
+    0x00000007, 0x13C80000, 0x00000000, 0x00000020,
+    0x00000000, 0x00667E00, 0x00001008, 0x10000000,
     0x00000000, 0xC19D0000, 0x00000002, 0x00403000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00002120,
@@ -500,7 +500,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x40000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x0000FFFF, 0x0000007F, 0x00000000, 0x00000000,
+    0x0000FFFF, 0x00003FFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -508,23 +508,43 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x20000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000001,
+    0x00000000, 0x00000000, 0x00000000, 0x07C00000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x0000F06E, 0x87000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000060,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000002, 0xFF000000, 0x0000007F, 0x80000000,
+    0x00000003, 0x06780000, 0x00000000, 0x00000000,
+    0x00000007, 0x001FEF80, 0x00000000, 0x00080000,
+    0x00000003, 0x7FC00000, 0x00000000, 0x00000000,
+    0x00000000, 0x00D38000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x80000000, 0x000007F8,
+    0x00000002, 0x10000000, 0x00000001, 0x001F1FC0,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x85F80000, 0x0000000D, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xB03C0000, 0x00000001, 0x00000000,
+    0x00000000, 0xA7F80000, 0x00000001, 0x00000000,
+    0x00000000, 0x00BF2800, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000002, 0xFF000000, 0x0000007F, 0x00000000,
-    0x00000003, 0x06780000, 0x00000000, 0x00000000,
-    0x00000007, 0x001FEF80, 0x00000000, 0x00000000,
-    0x00000003, 0x7FC00000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00BF2800, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x001F0000,
+    0x00000000, 0x007F0000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00078000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x60000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xF8000380,
     0x00000FE7, 0x00003C00, 0x00000000, 0x00000000,
@@ -533,6 +553,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x007F0000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF
--- a/lib/unictype/pr_bidi_other_neutral.h
+++ b/lib/unictype/pr_bidi_other_neutral.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[39 << 4];
+    /*unsigned*/ int level3[40 << 4];
   }
 u_property_bidi_other_neutral =
 {
@@ -273,7 +273,7 @@
         3 +   256 * sizeof (short) / sizeof (int) +   576,
         3 +   256 * sizeof (short) / sizeof (int) +   592,
         3 +   256 * sizeof (short) / sizeof (int) +   608,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   624,
        -1,
        -1,
        -1
@@ -290,7 +290,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000400, 0x00000000, 0x00000000, 0x00000000,
+    0x00006400, 0x00000000, 0x00000000, 0x00000000,
     0x0000C0C0, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x40000000, 0x00000200,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -334,14 +334,14 @@
     0xFFF3FFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0x003FFFFF, 0x00000000, 0xF8000000,
-    0xFFDFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
+    0xFFDFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF,
     0xFFFFFFFF, 0x0000007F, 0x000007FF, 0xFFFFFFFF,
     0x000000FF, 0x00000000, 0x00000000, 0xFFFFFC00,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFEFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -349,13 +349,13 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x03FF1FFF, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFCFFFFF,
+    0xFF3FFFFF, 0xE3FFFFFF, 0x0003FDFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xFE0007E0,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0x0FFFFFFF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x00000007, 0x00000000,
     0xFBFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, 0x0FFF0000,
@@ -394,7 +394,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000002, 0x00000000, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x0FFF07FF, 0x00000000, 0x00000000, 0x00000000,
+    0x0FFF1FFF, 0x00000001, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x80000000, 0x00000000, 0x00000000, 0x00000000,
@@ -420,20 +420,24 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFF0FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000FFFFF, 0x7FFE7FFF, 0xFFFEFFFE, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000C00,
+    0x000FFFFF, 0xFFFE7FFF, 0xFFFEFFFE, 0x003FFFFF,
+    0x00001800, 0x00000000, 0x00000000, 0x00000C00,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFBF0001, 0xFFFFFFFF, 0x1FFFFFFF,
-    0x000FFFFF, 0xFFFFFFFF, 0x000007DF, 0x0001FFFF,
-    0xFFFFFFFF, 0x7FFFFFFF, 0xFFFFFFFD, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1EFFFFFF,
-    0xFFFFFFFF, 0x3FFFFFFF, 0xFFFF000F, 0x000000FF,
-    0x00000000, 0x00000000, 0x00000000, 0xF8000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFE1, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000000,
+    0xFFFFFFFF, 0xFFFF1FFF, 0xFFFFFFFF, 0x3FFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFF07FFF, 0x00FFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF07FF, 0xFBFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFEF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFE7, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, 0x000F1FFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x001FFFFF, 0x00000000,
+    0xFFFF0FFF, 0xFFFFFFFF, 0x03FF00FF, 0xFFFFFFFF,
+    0xFFFF00FF, 0x00003FFF, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/pr_bidi_pdf.h
+++ b/lib/unictype/pr_bidi_pdf.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_bidi_segment_separator.h
+++ b/lib/unictype/pr_bidi_segment_separator.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_bidi_whitespace.h
+++ b/lib/unictype/pr_bidi_whitespace.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_case_ignorable.h
+++ b/lib/unictype/pr_case_ignorable.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[15];
     short level2[3 << 7];
-    /*unsigned*/ int level3[34 << 4];
+    /*unsigned*/ int level3[40 << 4];
   }
 u_property_case_ignorable =
 {
@@ -163,19 +163,17 @@
        -1,
        16 +   384 * sizeof (short) / sizeof (int) +   400,
        16 +   384 * sizeof (short) / sizeof (int) +   416,
-       -1,
-       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   432,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   432,
-       -1,
        -1,
        16 +   384 * sizeof (short) / sizeof (int) +   448,
        -1,
        -1,
        16 +   384 * sizeof (short) / sizeof (int) +   464,
-       -1,
-       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   480,
+       16 +   384 * sizeof (short) / sizeof (int) +   496,
+       16 +   384 * sizeof (short) / sizeof (int) +   512,
        -1,
        -1,
        -1,
@@ -217,7 +215,9 @@
        -1,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   480,
+       16 +   384 * sizeof (short) / sizeof (int) +   528,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   544,
        -1,
        -1,
        -1,
@@ -256,6 +256,18 @@
        -1,
        -1,
        -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   560,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   576,
+       16 +   384 * sizeof (short) / sizeof (int) +   592,
        -1,
        -1,
        -1,
@@ -266,8 +278,7 @@
        -1,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   496,
-       16 +   384 * sizeof (short) / sizeof (int) +   512,
+       16 +   384 * sizeof (short) / sizeof (int) +   608,
        -1,
        -1,
        -1,
@@ -279,18 +290,7 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   528,
+       16 +   384 * sizeof (short) / sizeof (int) +   624,
        -1,
        -1,
        -1,
@@ -432,21 +432,21 @@
     0x000003F8, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x02000000, 0x00000000,
     0xFFFE0000, 0xBFFFFFFF, 0x000000B6, 0x00100000,
-    0x17FF001F, 0x00000000, 0xFFFFF801, 0x00010000,
+    0x17FF003F, 0x00000000, 0xFFFFF801, 0x00010000,
     0x00000000, 0x00000000, 0xBFC00000, 0x00003DFF,
     0x00028000, 0xFFFF0000, 0x000007FF, 0x00000000,
     0x00000000, 0x0001FFC0, 0x00000000, 0x043FF800,
     0xFFC00000, 0x00003FFF, 0x0E000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x7FFFFFF0,
+    0x00000000, 0x00000000, 0x00000000, 0xFFFFFFF0,
     0x00000007, 0x14000000, 0x00FE21FE, 0x0002000C,
     0x00000002, 0x10000000, 0x0000201E, 0x0000000C,
     0x00000006, 0x10000000, 0x00023986, 0x00230000,
     0x00000006, 0x10000000, 0x000021BE, 0x0000000C,
     0x00000002, 0x90000000, 0x0040201E, 0x0000000C,
     0x00000004, 0x00000000, 0x00002001, 0x00000000,
-    0x00000000, 0xC0000000, 0x00603DC1, 0x0000000C,
-    0x00000000, 0x90000000, 0x00003040, 0x0000000C,
-    0x00000000, 0x00000000, 0x0000201E, 0x0000000C,
+    0x00000001, 0xC0000000, 0x00603DC1, 0x0000000C,
+    0x00000002, 0x90000000, 0x00003040, 0x0000000C,
+    0x00000002, 0x00000000, 0x0000201E, 0x0000000C,
     0x00000000, 0x00000000, 0x005C0400, 0x00000000,
     0x00000000, 0x07F20000, 0x00007FC0, 0x00000000,
     0x00000000, 0x1BF20000, 0x00003F40, 0x00000000,
@@ -469,13 +469,13 @@
     0x00000000, 0x0E040187, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x09800000, 0x00000000, 0x7F400000, 0x9FF81FE5,
-    0x00000000, 0x00000080, 0x00000000, 0x00000000,
+    0x00000000, 0x7FFF0080, 0x00000000, 0x00000000,
     0x0000000F, 0x17D00000, 0x00000004, 0x000FF800,
-    0x00000003, 0x00000B3C, 0x00000000, 0x0003A340,
+    0x00000003, 0x00003B3C, 0x00000000, 0x0003A340,
     0x00000000, 0x00CFF000, 0x00000000, 0x3F000000,
-    0x00000000, 0x00000000, 0xFFF70000, 0x001021FD,
+    0x00000000, 0x00000000, 0xFFF70000, 0x031021FD,
     0x00000000, 0xFFFFF000, 0xFFFFFFFF, 0x010007FF,
-    0xF8000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xF000007F,
+    0xF8000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xF03FFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -505,22 +505,22 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00001000, 0x00000000, 0x00000000, 0xBFF78000,
-    0x80000000, 0x00000000, 0x00000000, 0x00030000,
+    0xB0000000, 0x00000000, 0x00000000, 0x00030000,
     0xFFFFFFFF, 0x00000003, 0x00000000, 0x00010000,
     0x00000700, 0x00000000, 0x00000000, 0x03000000,
     0x00000844, 0x00000060, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000010, 0x0003FFFF,
     0x00000000, 0x00003FC0, 0x0003FF80, 0x00000000,
-    0x00000007, 0x13C80000, 0x00008000, 0x00000000,
-    0x00000000, 0x00667E00, 0x00001008, 0x00010000,
+    0x00000007, 0x13C80000, 0x00008000, 0x00000060,
+    0x00000000, 0x00667E00, 0x00001008, 0x10010000,
     0x00000000, 0xC19D0000, 0x20000002, 0x00583000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xF8000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00002120,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x40000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFC0000, 0x00000003, 0x00000000,
-    0x0008FFFF, 0x0000007F, 0x00240000, 0x00000000,
+    0x0008FFFF, 0x00003FFF, 0x00240000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x80000000,
     0x04004080, 0x40000000, 0x00000001, 0x00010000,
     0xC0000000, 0x00000000, 0x00000000, 0x0E000008,
@@ -528,23 +528,43 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x20000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000001,
+    0x00000000, 0x00000000, 0x00000000, 0x07C00000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x0000F06E, 0x87000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000060,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000002, 0xFF000000, 0x0000007F, 0x80000000,
+    0x00000003, 0x26780000, 0x00000000, 0x00000000,
+    0x00000007, 0x001FEF80, 0x00000000, 0x00080000,
+    0x00000003, 0x7FC00000, 0x00000000, 0x00000000,
+    0x00000000, 0x00D38000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x80000000, 0x000007F8,
+    0x00000002, 0x10000000, 0x00000001, 0x001F1FC0,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x85F80000, 0x0000000D, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xB03C0000, 0x00000001, 0x00000000,
+    0x00000000, 0xA7F80000, 0x00000001, 0x00000000,
+    0x00000000, 0x00BF2800, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000002, 0xFF000000, 0x0000007F, 0x00000000,
-    0x00000003, 0x26780000, 0x00000000, 0x00000000,
-    0x00000007, 0x001FEF80, 0x00000000, 0x00000000,
-    0x00000003, 0x7FC00000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00BF2800, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x001F0000,
+    0x00000000, 0x007F0000, 0x0000000F, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFF8000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x60000000, 0x0000000F, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xFFF80380,
     0x00000FE7, 0x00003C00, 0x00000000, 0x00000000,
@@ -552,6 +572,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x007F0000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000002, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
--- a/lib/unictype/pr_cased.h
+++ b/lib/unictype/pr_cased.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[15 << 4];
+    /*unsigned*/ int level3[18 << 4];
   }
 u_property_cased =
 {
@@ -106,6 +106,7 @@
        -1,
         3 +   256 * sizeof (short) / sizeof (int) +   144,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   160,
        -1,
        -1,
        -1,
@@ -145,13 +146,22 @@
        -1,
        -1,
        -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   160,
-       -1,
         3 +   256 * sizeof (short) / sizeof (int) +   176,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   192,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   192,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   208,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   224,
        -1,
        -1,
        -1,
@@ -245,18 +255,8 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   208,
-        3 +   256 * sizeof (short) / sizeof (int) +   224,
+        3 +   256 * sizeof (short) / sizeof (int) +   240,
+        3 +   256 * sizeof (short) / sizeof (int) +   256,
        -1,
        -1,
        -1,
@@ -269,7 +269,7 @@
        -1,
        -1,
        -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   272,
        -1,
        -1,
        -1,
@@ -285,11 +285,11 @@
     0xFFFFFFFF, 0xF7FFFFFF, 0xFFFFFFF0, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFEFFFFF, 0x01FFFFFF, 0x00000003, 0x0000001F,
-    0x00000000, 0x00000000, 0x00000020, 0x3CCF0000,
+    0x00000000, 0x00000000, 0x00000020, 0xBCCF0000,
     0xFFFFD740, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFBFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE00FF, 0x007FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFEFFFF, 0x007FFFFF, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFFFFF, 0x000020BF, 0x00000000,
@@ -316,9 +316,13 @@
     0xFFFFFFFF, 0x000020BF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x00003FFF,
-    0x00FFFFFF, 0x00000000, 0x00000000, 0x00000000,
+    0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000F78FF, 0x000007FF, 0x00000000, 0x07000000,
+    0xFFFF78FF, 0x00033FFF, 0x00000000, 0x07000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0xF7FFFFFF, 0x00000030,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00F8007F, 0x00000000, 0x00000000, 0x00000000,
@@ -331,6 +335,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF,
     0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF,
     0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF,
@@ -338,6 +346,10 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFF3F, 0xF7FFFFFD, 0xF7FFFFFF,
     0xFFDFFFFF, 0xFFDFFFFF, 0xFFFF7FFF, 0xFFFF7FFF,
-    0xFFFFFDFF, 0xFFFFFDFF, 0x00000FF7, 0x00000000
+    0xFFFFFDFF, 0xFFFFFDFF, 0x00000FF7, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0xFFFF03FF, 0xFFFF03FF,
+    0x000003FF, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/pr_changes_when_casefolded.h
+++ b/lib/unictype/pr_changes_when_casefolded.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[12 << 4];
+    /*unsigned*/ int level3[13 << 4];
   }
 u_property_changes_when_casefolded =
 {
@@ -161,7 +161,7 @@
        -1,
        -1,
        -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   192,
        -1,
        -1,
        -1,
@@ -285,11 +285,11 @@
     0xB1DBCED6, 0x11AED2D5, 0x4AAAADB0, 0x55D65555,
     0x55555555, 0x6C055555, 0x0000557A, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000020, 0x00450000,
+    0x00000000, 0x00000000, 0x00000020, 0x80450000,
     0xFFFED740, 0x00000FFB, 0x55638004, 0xE6B35555,
     0xFFFFFFFF, 0x0000FFFF, 0x00000000, 0x55555555,
     0x55555401, 0x55555555, 0x55552AAB, 0x55555555,
-    0x55555555, 0xFFFE0055, 0x007FFFFF, 0x00000000,
+    0x55555555, 0xFFFE5555, 0x007FFFFF, 0x00000000,
     0x00000080, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFFFFF, 0x000020BF, 0x00000000,
@@ -312,9 +312,9 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x55555555, 0x00001555,
-    0x00555555, 0x00000000, 0x00000000, 0x00000000,
+    0x05555555, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x55545554, 0x55555555, 0x6A005555,
-    0x00052855, 0x00000555, 0x00000000, 0x00000000,
+    0x55452855, 0x00033D55, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00F8007F, 0x00000000, 0x00000000, 0x00000000,
@@ -326,6 +326,10 @@
     0xFFFFFFFF, 0x000000FF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/pr_changes_when_casemapped.h
+++ b/lib/unictype/pr_changes_when_casemapped.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[13 << 4];
+    /*unsigned*/ int level3[14 << 4];
   }
 u_property_changes_when_casemapped =
 {
@@ -161,7 +161,7 @@
        -1,
        -1,
        -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   208,
        -1,
        -1,
        -1,
@@ -283,13 +283,13 @@
     0x00000000, 0x00200000, 0xFF7FFFFF, 0xFF7FFFFF,
     0xFFFFFFFF, 0xFEFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xF7FFDFFF, 0xB3FFF3FF, 0xFFFFFFF0, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFC0FFFFD, 0x0ADFFFFF, 0x20268B69,
-    0x00041F09, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000020, 0x38CF0000,
-    0xFFFFD740, 0xFFFFFFFB, 0xFFE3FFFF, 0xEFB7FFFF,
+    0xFFFFFFFF, 0xFC0FFFFD, 0x1ADFFFFF, 0x20269B6B,
+    0x40041F89, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000020, 0xB8CF0000,
+    0xFFFFD740, 0xFFFFFFFB, 0xFFE3FFFF, 0xEFBFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE00FF, 0x007FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFEFFFF, 0x007FFFFF, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFFFFF, 0x000020BF, 0x00000000,
@@ -316,9 +316,9 @@
     0xFFFFFFFF, 0x000020BF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x00003FFF,
-    0x00FFFFFF, 0x00000000, 0x00000000, 0x00000000,
+    0x0FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFCFFFC, 0xFFFFFFFF, 0xFE00FFFF,
-    0x000F38FF, 0x000007FF, 0x00000000, 0x00000000,
+    0xFFCF38FF, 0x00033FFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00F8007F, 0x00000000, 0x00000000, 0x00000000,
@@ -330,6 +330,10 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/pr_changes_when_lowercased.h
+++ b/lib/unictype/pr_changes_when_lowercased.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[11 << 4];
+    /*unsigned*/ int level3[12 << 4];
   }
 u_property_changes_when_lowercased =
 {
@@ -161,7 +161,7 @@
        -1,
        -1,
        -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   176,
        -1,
        -1,
        -1,
@@ -285,11 +285,11 @@
     0xB1DBCED6, 0x11AED2D5, 0x4AAAADB0, 0x55D65555,
     0x55555555, 0x6C055555, 0x0000557A, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00450000,
+    0x00000000, 0x00000000, 0x00000000, 0x80450000,
     0xFFFED740, 0x00000FFB, 0x55008000, 0xE6905555,
     0xFFFFFFFF, 0x0000FFFF, 0x00000000, 0x55555555,
     0x55555401, 0x55555555, 0x55552AAB, 0x55555555,
-    0x55555555, 0xFFFE0055, 0x007FFFFF, 0x00000000,
+    0x55555555, 0xFFFE5555, 0x007FFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFFFFF, 0x000020BF, 0x00000000,
@@ -312,9 +312,9 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x55555555, 0x00001555,
-    0x00555555, 0x00000000, 0x00000000, 0x00000000,
+    0x05555555, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x55545554, 0x55555555, 0x6A005555,
-    0x00052855, 0x00000555, 0x00000000, 0x00000000,
+    0x55452855, 0x00033D55, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x07FFFFFE, 0x00000000, 0x00000000,
@@ -322,6 +322,10 @@
     0xFFFFFFFF, 0x000000FF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/pr_changes_when_titlecased.h
+++ b/lib/unictype/pr_changes_when_titlecased.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[12 << 4];
+    /*unsigned*/ int level3[13 << 4];
   }
 u_property_changes_when_titlecased =
 {
@@ -161,7 +161,7 @@
        -1,
        -1,
        -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   192,
        -1,
        -1,
        -1,
@@ -283,13 +283,13 @@
     0x00000000, 0x00200000, 0x80000000, 0xFF7FFFFF,
     0xAAAAAAAA, 0x54AAAAAA, 0xAAAAAB55, 0xD4AAAAAA,
     0x46241129, 0xA251212A, 0xB55556D0, 0xAA2BAAAA,
-    0xAAAAAAAA, 0x900AAAA8, 0x0ADFAA85, 0x20268B69,
-    0x00041F09, 0x00000000, 0x00000000, 0x00000000,
+    0xAAAAAAAA, 0x900AAAA8, 0x1ADFAA85, 0x20269B6B,
+    0x40041F89, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000020, 0x388A0000,
-    0x00010000, 0xFFFFF000, 0xAAE37FFF, 0x0927AAAA,
+    0x00010000, 0xFFFFF000, 0xAAE37FFF, 0x092FAAAA,
     0x00000000, 0xFFFF0000, 0xFFFFFFFF, 0xAAAAAAAA,
     0xAAAAA802, 0xAAAAAAAA, 0xAAAAD554, 0xAAAAAAAA,
-    0xAAAAAAAA, 0x000000AA, 0x00000000, 0xFFFFFFFE,
+    0xAAAAAAAA, 0x0000AAAA, 0x00000000, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -312,9 +312,9 @@
     0xFFFFFFFF, 0x000020BF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xAAAAAAAA, 0x00002AAA,
-    0x00AAAAAA, 0x00000000, 0x00000000, 0x00000000,
+    0x0AAAAAAA, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xAAA8AAA8, 0xAAAAAAAA, 0x9400AAAA,
-    0x000A10AA, 0x000002AA, 0x00000000, 0x00000000,
+    0xAA8A10AA, 0x000002AA, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00F8007F, 0x00000000, 0x00000000, 0x00000000,
@@ -326,6 +326,10 @@
     0x00000000, 0xFFFFFF00, 0x0000FFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/pr_changes_when_uppercased.h
+++ b/lib/unictype/pr_changes_when_uppercased.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[12 << 4];
+    /*unsigned*/ int level3[13 << 4];
   }
 u_property_changes_when_uppercased =
 {
@@ -161,7 +161,7 @@
        -1,
        -1,
        -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   192,
        -1,
        -1,
        -1,
@@ -283,13 +283,13 @@
     0x00000000, 0x00200000, 0x80000000, 0xFF7FFFFF,
     0xAAAAAAAA, 0x54AAAAAA, 0xAAAAAB55, 0xD4AAAAAA,
     0x46241129, 0xA251212A, 0xB5555B60, 0xAA2DAAAA,
-    0xAAAAAAAA, 0x900AAAA8, 0x0ADFAA85, 0x20268B69,
-    0x00041F09, 0x00000000, 0x00000000, 0x00000000,
+    0xAAAAAAAA, 0x900AAAA8, 0x1ADFAA85, 0x20269B6B,
+    0x40041F89, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000020, 0x388A0000,
-    0x00010000, 0xFFFFF000, 0xAAE37FFF, 0x0927AAAA,
+    0x00010000, 0xFFFFF000, 0xAAE37FFF, 0x092FAAAA,
     0x00000000, 0xFFFF0000, 0xFFFFFFFF, 0xAAAAAAAA,
     0xAAAAA802, 0xAAAAAAAA, 0xAAAAD554, 0xAAAAAAAA,
-    0xAAAAAAAA, 0x000000AA, 0x00000000, 0xFFFFFFFE,
+    0xAAAAAAAA, 0x0000AAAA, 0x00000000, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -312,9 +312,9 @@
     0xFFFFFFFF, 0x000020BF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xAAAAAAAA, 0x00002AAA,
-    0x00AAAAAA, 0x00000000, 0x00000000, 0x00000000,
+    0x0AAAAAAA, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xAAA8AAA8, 0xAAAAAAAA, 0x9400AAAA,
-    0x000A10AA, 0x000002AA, 0x00000000, 0x00000000,
+    0xAA8A10AA, 0x000002AA, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00F8007F, 0x00000000, 0x00000000, 0x00000000,
@@ -326,6 +326,10 @@
     0x00000000, 0xFFFFFF00, 0x0000FFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/pr_combining.h
+++ b/lib/unictype/pr_combining.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[15];
     short level2[3 << 7];
-    /*unsigned*/ int level3[29 << 4];
+    /*unsigned*/ int level3[35 << 4];
   }
 u_property_combining =
 {
@@ -163,19 +163,17 @@
        -1,
        16 +   384 * sizeof (short) / sizeof (int) +   320,
        16 +   384 * sizeof (short) / sizeof (int) +   336,
-       -1,
-       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   352,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   352,
-       -1,
        -1,
        16 +   384 * sizeof (short) / sizeof (int) +   368,
        -1,
        -1,
        16 +   384 * sizeof (short) / sizeof (int) +   384,
-       -1,
-       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   400,
+       16 +   384 * sizeof (short) / sizeof (int) +   416,
+       16 +   384 * sizeof (short) / sizeof (int) +   432,
        -1,
        -1,
        -1,
@@ -217,7 +215,9 @@
        -1,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   400,
+       16 +   384 * sizeof (short) / sizeof (int) +   448,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   464,
        -1,
        -1,
        -1,
@@ -256,6 +256,18 @@
        -1,
        -1,
        -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   480,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   496,
+       16 +   384 * sizeof (short) / sizeof (int) +   512,
        -1,
        -1,
        -1,
@@ -266,8 +278,7 @@
        -1,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   416,
-       16 +   384 * sizeof (short) / sizeof (int) +   432,
+       16 +   384 * sizeof (short) / sizeof (int) +   528,
        -1,
        -1,
        -1,
@@ -279,18 +290,7 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   448,
+       16 +   384 * sizeof (short) / sizeof (int) +   544,
        -1,
        -1,
        -1,
@@ -433,16 +433,16 @@
     0x00020000, 0xFFFF0000, 0x000007FF, 0x00000000,
     0x00000000, 0x0001FFC0, 0x00000000, 0x000FF800,
     0xFBC00000, 0x00003EEF, 0x0E000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x7FFFFFF0,
+    0x00000000, 0x00000000, 0x00000000, 0xFFFFFFF0,
     0x0000000F, 0xDC000000, 0x00FEFFFF, 0x0000000C,
     0x0000000E, 0xD0000000, 0x0080399F, 0x0000000C,
     0x0000000E, 0xD0000000, 0x00023987, 0x00230000,
     0x0000000E, 0xD0000000, 0x00003BBF, 0x0000000C,
     0x0000000E, 0xD0000000, 0x00C0399F, 0x0000000C,
     0x00000004, 0xC0000000, 0x00803DC7, 0x00000000,
-    0x0000000E, 0xC0000000, 0x00603DDF, 0x0000000C,
-    0x0000000C, 0xD0000000, 0x00603DDF, 0x0000000C,
-    0x0000000C, 0xC0000000, 0x00803DDF, 0x0000000C,
+    0x0000000F, 0xC0000000, 0x00603DDF, 0x0000000C,
+    0x0000000E, 0xD0000000, 0x00603DDF, 0x0000000C,
+    0x0000000E, 0xC0000000, 0x00803DDF, 0x0000000C,
     0x0000000C, 0x00000000, 0xFF5F8400, 0x000C0000,
     0x00000000, 0x07F20000, 0x00007F80, 0x00000000,
     0x00000000, 0x1BF20000, 0x00003F00, 0x00000000,
@@ -465,13 +465,13 @@
     0x00000000, 0x0FFF0FFF, 0x00000000, 0x00000000,
     0x00000000, 0xFFFF0000, 0x00000301, 0x00000000,
     0x0F800000, 0x00000000, 0x7FE00000, 0x9FFFFFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x7FFF0000, 0x00000000, 0x00000000,
     0x0000001F, 0xFFF00000, 0x0000001F, 0x000FF800,
     0x00000007, 0x00003FFE, 0x00000000, 0x000FFFC0,
     0x00000000, 0x00FFFFF0, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFF70000, 0x001C21FF,
+    0x00000000, 0x00000000, 0xFFF70000, 0x031C21FF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFFFFFFF, 0xF000007F,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0xF03FFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFF0000, 0x0001FFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -491,8 +491,8 @@
     0x00000844, 0x000000F8, 0x00000000, 0x00000000,
     0x00000003, 0xFFF00000, 0x0000001F, 0x0003FFFF,
     0x00000000, 0x00003FC0, 0x000FFF80, 0x00000000,
-    0x0000000F, 0xFFF80000, 0x00000001, 0x00000000,
-    0x00000000, 0x007FFE00, 0x00003008, 0x08000000,
+    0x0000000F, 0xFFF80000, 0x00000001, 0x00000020,
+    0x00000000, 0x007FFE00, 0x00003008, 0x38000000,
     0x00000000, 0xC19D0000, 0x00000002, 0x0060F800,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x000037F8,
@@ -500,7 +500,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x40000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x0000FFFF, 0x0000007F, 0x00000000, 0x00000000,
+    0x0000FFFF, 0x00003FFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -508,23 +508,43 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x20000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000001,
+    0x00000000, 0x00000000, 0x00000000, 0x07C00000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x0000F06E, 0x87000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000060,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000007, 0xFF000000, 0x0000007F, 0x80000000,
+    0x00000007, 0x07FF0000, 0x00000000, 0x00000000,
+    0x00000007, 0x001FFF80, 0x00000000, 0x00080000,
+    0x00000007, 0xFFF80000, 0x00000001, 0x00000000,
+    0x00000000, 0x00FFF000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x80000000, 0x000007FF,
+    0x0000000E, 0xD0000000, 0x0080399F, 0x001F1FCC,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0x0000000F, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFF3F8000, 0x00000001, 0x00000000,
+    0x00000000, 0xFFFF0000, 0x00000001, 0x00000000,
+    0x00000000, 0x00FFF800, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000007, 0xFF000000, 0x0000007F, 0x00000000,
-    0x00000007, 0x07FF0000, 0x00000000, 0x00000000,
-    0x00000007, 0x001FFF80, 0x00000000, 0x00000000,
-    0x00000007, 0xFFF80000, 0x00000001, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00FFF800, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x001F0000,
+    0x00000000, 0x007F0000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFE0000, 0x7FFFFFFF,
     0x00078000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x60000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xF807E3E0,
     0x00000FE7, 0x00003C00, 0x00000000, 0x00000000,
@@ -533,6 +553,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x007F0000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF
--- a/lib/unictype/pr_composite.h
+++ b/lib/unictype/pr_composite.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[26 << 4];
+    /*unsigned*/ int level3[28 << 4];
   }
 u_property_composite =
 {
@@ -158,6 +158,8 @@
        -1,
        -1,
         3 +   256 * sizeof (short) / sizeof (int) +   352,
+        3 +   256 * sizeof (short) / sizeof (int) +   368,
+        3 +   256 * sizeof (short) / sizeof (int) +   384,
        -1,
        -1,
        -1,
@@ -251,9 +253,7 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   368,
+        3 +   256 * sizeof (short) / sizeof (int) +   400,
        -1,
        -1,
        -1,
@@ -269,8 +269,8 @@
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   384,
-        3 +   256 * sizeof (short) / sizeof (int) +   400,
+        3 +   256 * sizeof (short) / sizeof (int) +   416,
+        3 +   256 * sizeof (short) / sizeof (int) +   432,
        -1,
        -1,
        -1,
@@ -373,6 +373,14 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00001800, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x58000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x0C000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xC0000000, 0x0000001F,
     0x00000000, 0xF8000000, 0x00000001, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/pr_currency_symbol.h
+++ b/lib/unictype/pr_currency_symbol.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -177,7 +177,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x08000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x07FFFFFF, 0x00000000, 0x00000000,
+    0x00000000, 0x3FFFFFFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x01000000, 0x00000000, 0x00000000,
--- a/lib/unictype/pr_dash.h
+++ b/lib/unictype/pr_dash.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -172,7 +172,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x04800000, 0x0C000000, 0x00000000, 0x00000000,
+    0x04800000, 0x0C000000, 0x00000001, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/pr_decimal_digit.h
+++ b/lib/unictype/pr_decimal_digit.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[19 << 4];
+    /*unsigned*/ int level3[22 << 4];
   }
 u_property_decimal_digit =
 {
@@ -27,15 +27,15 @@
         3 +   256 * sizeof (short) / sizeof (int) +    16,
         3 +   256 * sizeof (short) / sizeof (int) +    32,
         3 +   256 * sizeof (short) / sizeof (int) +    48,
+        3 +   256 * sizeof (short) / sizeof (int) +    48,
         3 +   256 * sizeof (short) / sizeof (int) +    64,
         3 +   256 * sizeof (short) / sizeof (int) +    80,
-        3 +   256 * sizeof (short) / sizeof (int) +    96,
        -1,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +    96,
         3 +   256 * sizeof (short) / sizeof (int) +   112,
         3 +   256 * sizeof (short) / sizeof (int) +   128,
         3 +   256 * sizeof (short) / sizeof (int) +   144,
-        3 +   256 * sizeof (short) / sizeof (int) +   160,
        -1,
        -1,
        -1,
@@ -104,9 +104,9 @@
        -1,
        -1,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   160,
         3 +   256 * sizeof (short) / sizeof (int) +   176,
         3 +   256 * sizeof (short) / sizeof (int) +   192,
-        3 +   256 * sizeof (short) / sizeof (int) +   208,
        -1,
        -1,
        -1,
@@ -148,19 +148,20 @@
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   224,
+        3 +   256 * sizeof (short) / sizeof (int) +   208,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   240,
+        3 +   256 * sizeof (short) / sizeof (int) +   224,
        -1,
        -1,
        -1,
        -1,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   240,
         3 +   256 * sizeof (short) / sizeof (int) +   256,
-       -1,
-       -1,
         3 +   256 * sizeof (short) / sizeof (int) +   272,
+        3 +   256 * sizeof (short) / sizeof (int) +   288,
+        3 +   256 * sizeof (short) / sizeof (int) +   304,
        -1,
        -1,
        -1,
@@ -201,6 +202,30 @@
        -1,
        -1,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   320,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
        -1,
        -1,
        -1,
@@ -231,32 +256,7 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   288,
+        3 +   256 * sizeof (short) / sizeof (int) +   336,
        -1,
        -1,
        -1,
@@ -295,10 +295,6 @@
     0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
     0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
     0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
-    0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
-    0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
-    0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x00000000, 0x000003FF, 0x00000000, 0x00000000,
@@ -330,7 +326,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x000003FF, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
+    0x00000000, 0x00000000, 0x03FF0000, 0x03FF0000,
     0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -348,10 +344,26 @@
     0x00000000, 0xFFC00000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x03FF0000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x00000000, 0x00000000, 0x000003FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x000003FF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x000003FF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFC000, 0xFFFFFFFF
--- a/lib/unictype/pr_default_ignorable_code_point.h
+++ b/lib/unictype/pr_default_ignorable_code_point.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[15];
     short level2[3 << 7];
-    /*unsigned*/ int level3[11 << 4];
+    /*unsigned*/ int level3[12 << 4];
   }
 u_property_default_ignorable_code_point =
 {
@@ -256,6 +256,7 @@
        -1,
        -1,
        -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   144,
        -1,
        -1,
        -1,
@@ -265,8 +266,7 @@
        -1,
        -1,
        -1,
-       -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   144,
+       16 +   384 * sizeof (short) / sizeof (int) +   160,
        -1,
        -1,
        -1,
@@ -290,14 +290,14 @@
        -1,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   160,
-       16 +   384 * sizeof (short) / sizeof (int) +   160,
-       16 +   384 * sizeof (short) / sizeof (int) +   160,
-       16 +   384 * sizeof (short) / sizeof (int) +   160,
-       16 +   384 * sizeof (short) / sizeof (int) +   160,
-       16 +   384 * sizeof (short) / sizeof (int) +   160,
-       16 +   384 * sizeof (short) / sizeof (int) +   160,
-       16 +   384 * sizeof (short) / sizeof (int) +   160,
+       16 +   384 * sizeof (short) / sizeof (int) +   176,
+       16 +   384 * sizeof (short) / sizeof (int) +   176,
+       16 +   384 * sizeof (short) / sizeof (int) +   176,
+       16 +   384 * sizeof (short) / sizeof (int) +   176,
+       16 +   384 * sizeof (short) / sizeof (int) +   176,
+       16 +   384 * sizeof (short) / sizeof (int) +   176,
+       16 +   384 * sizeof (short) / sizeof (int) +   176,
+       16 +   384 * sizeof (short) / sizeof (int) +   176,
        -1,
        -1,
        -1,
@@ -457,6 +457,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000001, 0x00000000, 0x01FF0000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x0000000F, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x07F80000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/pr_deprecated.h
+++ b/lib/unictype/pr_deprecated.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_diacritic.h
+++ b/lib/unictype/pr_diacritic.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[26 << 4];
+    /*unsigned*/ int level3[32 << 4];
   }
 u_property_diacritic =
 {
@@ -150,17 +150,17 @@
        -1,
         3 +   256 * sizeof (short) / sizeof (int) +   336,
        -1,
-       -1,
-       -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   352,
        -1,
        -1,
        -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   352,
+        3 +   256 * sizeof (short) / sizeof (int) +   368,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   368,
+        3 +   256 * sizeof (short) / sizeof (int) +   384,
+        3 +   256 * sizeof (short) / sizeof (int) +   400,
+        3 +   256 * sizeof (short) / sizeof (int) +   416,
+        3 +   256 * sizeof (short) / sizeof (int) +   432,
        -1,
        -1,
        -1,
@@ -202,9 +202,9 @@
        -1,
        -1,
        -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   448,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   384,
+        3 +   256 * sizeof (short) / sizeof (int) +   464,
        -1,
        -1,
        -1,
@@ -253,7 +253,7 @@
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   400,
+        3 +   256 * sizeof (short) / sizeof (int) +   480,
        -1,
        -1,
        -1,
@@ -265,7 +265,7 @@
        -1,
        -1,
        -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   496,
        -1,
        -1,
        -1,
@@ -324,13 +324,13 @@
     0x00000000, 0x0E000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x9FE00000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x3FFF0000, 0x00000000, 0x00000000,
     0x00000000, 0x00100000, 0x00000010, 0x000FF800,
     0x00000000, 0x00000C00, 0x00000000, 0x00000000,
     0x00000000, 0x00C00000, 0x00000000, 0x3F000000,
-    0x00000000, 0x00000000, 0xFFFF0000, 0x001021FF,
+    0x00000000, 0x00000000, 0xFFFF0000, 0x031021FF,
     0x00000000, 0xFFFFF000, 0xFFFFFFFF, 0x000007FF,
-    0x00000000, 0x00000000, 0x0000FFF0, 0xE0000000,
+    0x00000000, 0x00000000, 0x0000FFF0, 0xE0200000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -348,40 +348,64 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xB0008000,
-    0x00000000, 0x00000000, 0x00000000, 0x00030000,
+    0x30000000, 0x00000000, 0x00000000, 0x00030000,
     0xFF800000, 0x00000003, 0x00000000, 0x00000000,
     0x00000100, 0x00000000, 0x00000000, 0x03000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000010, 0x0003FFFF,
     0x00000000, 0x00007800, 0x00080000, 0x00000000,
-    0x00000000, 0x00080000, 0x00000001, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x08000000,
+    0x00000000, 0x00080000, 0x00000001, 0x00000020,
+    0x00000000, 0x00000000, 0x00000000, 0x38000000,
     0x00000000, 0x80000000, 0x00000007, 0x00400000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xF8000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00003000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x40000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x0000007F, 0x00000000, 0x00000000,
+    0x00000000, 0x00003FFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x40000000, 0x00000001, 0x00010000,
     0xC0000000, 0x00000000, 0x00000000, 0x00000008,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000001,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000060,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x06000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00180000, 0x00000000, 0x00000000,
+    0x00000000, 0x00180000, 0x00000000, 0x00080000,
     0x00000000, 0x00000000, 0x00000001, 0x00000000,
+    0x00000000, 0x00600000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000600,
+    0x00000000, 0x10000000, 0x00002000, 0x001F1FC0,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x0000000C, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x80000000, 0x00000001, 0x00000000,
+    0x00000000, 0x80000000, 0x00000000, 0x00000000,
     0x00000000, 0x00C00000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x001F0000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFF8000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xF807E380,
-    0x00000FE7, 0x00003C00, 0x00000000, 0x00000000
+    0x00000FE7, 0x00003C00, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x007F0000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/pr_extender.h
+++ b/lib/unictype/pr_extender.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -9,30 +9,33 @@
 struct
   {
     int header[1];
-    int level1[1];
-    short level2[1 << 7];
-    /*unsigned*/ int level3[13 << 4];
+    int level1[2];
+    short level2[2 << 7];
+    /*unsigned*/ int level3[16 << 4];
   }
 u_property_extender =
 {
-  { 1 },
-  {     2 * sizeof (int) / sizeof (short) +     0 },
+  { 2 },
   {
-        2 +   128 * sizeof (short) / sizeof (int) +     0,
-        2 +   128 * sizeof (short) / sizeof (int) +    16,
+        3 * sizeof (int) / sizeof (short) +     0,
+        3 * sizeof (int) / sizeof (short) +   128
+  },
+  {
+        3 +   256 * sizeof (short) / sizeof (int) +     0,
+        3 +   256 * sizeof (short) / sizeof (int) +    16,
        -1,
-        2 +   128 * sizeof (short) / sizeof (int) +    32,
+        3 +   256 * sizeof (short) / sizeof (int) +    32,
        -1,
        -1,
        -1,
-        2 +   128 * sizeof (short) / sizeof (int) +    48,
+        3 +   256 * sizeof (short) / sizeof (int) +    48,
        -1,
        -1,
        -1,
        -1,
-        2 +   128 * sizeof (short) / sizeof (int) +    64,
-        2 +   128 * sizeof (short) / sizeof (int) +    80,
-        2 +   128 * sizeof (short) / sizeof (int) +    96,
+        3 +   256 * sizeof (short) / sizeof (int) +    64,
+        3 +   256 * sizeof (short) / sizeof (int) +    80,
+        3 +   256 * sizeof (short) / sizeof (int) +    96,
        -1,
        -1,
        -1,
@@ -42,7 +45,7 @@
        -1,
        -1,
        -1,
-        2 +   128 * sizeof (short) / sizeof (int) +   112,
+        3 +   256 * sizeof (short) / sizeof (int) +   112,
        -1,
        -1,
        -1,
@@ -98,12 +101,12 @@
        -1,
        -1,
        -1,
-        2 +   128 * sizeof (short) / sizeof (int) +   128,
+        3 +   256 * sizeof (short) / sizeof (int) +   128,
        -1,
        -1,
-        2 +   128 * sizeof (short) / sizeof (int) +   144,
-        2 +   128 * sizeof (short) / sizeof (int) +   160,
-        2 +   128 * sizeof (short) / sizeof (int) +   176,
+        3 +   256 * sizeof (short) / sizeof (int) +   144,
+        3 +   256 * sizeof (short) / sizeof (int) +   160,
+        3 +   256 * sizeof (short) / sizeof (int) +   176,
        -1,
        -1,
        -1,
@@ -145,7 +148,135 @@
        -1,
        -1,
        -1,
-        2 +   128 * sizeof (short) / sizeof (int) +   192
+        3 +   256 * sizeof (short) / sizeof (int) +   192,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   208,
+        3 +   256 * sizeof (short) / sizeof (int) +   224,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   240,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1
   },
   {
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -191,7 +322,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00008000, 0x00000000,
+    0x00000000, 0x00000000, 0x00008000, 0x00000040,
     0x00000000, 0x00000000, 0x00000000, 0x00010000,
     0x00000000, 0x00000000, 0x20000000, 0x00180000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -199,6 +330,18 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00010000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x20000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x000001C0, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x0000000C, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/pr_format_control.h
+++ b/lib/unictype/pr_format_control.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[15];
     short level2[3 << 7];
-    /*unsigned*/ int level3[5 << 4];
+    /*unsigned*/ int level3[6 << 4];
   }
 u_property_format_control =
 {
@@ -256,6 +256,7 @@
        -1,
        -1,
        -1,
+       16 +   384 * sizeof (short) / sizeof (int) +    48,
        -1,
        -1,
        -1,
@@ -265,8 +266,7 @@
        -1,
        -1,
        -1,
-       -1,
-       16 +   384 * sizeof (short) / sizeof (int) +    48,
+       16 +   384 * sizeof (short) / sizeof (int) +    64,
        -1,
        -1,
        -1,
@@ -290,7 +290,7 @@
        -1,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +    64,
+       16 +   384 * sizeof (short) / sizeof (int) +    80,
        -1,
        -1,
        -1,
@@ -433,6 +433,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x0000000F, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x07F80000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/pr_grapheme_base.h
+++ b/lib/unictype/pr_grapheme_base.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[3];
     short level2[3 << 7];
-    /*unsigned*/ int level3[63 << 4];
+    /*unsigned*/ int level3[70 << 4];
   }
 u_property_grapheme_base =
 {
@@ -41,13 +41,13 @@
         4 +   384 * sizeof (short) / sizeof (int) +   256,
         4 +   384 * sizeof (short) / sizeof (int) +   272,
         4 +   384 * sizeof (short) / sizeof (int) +   288,
+        4 +   384 * sizeof (short) / sizeof (int) +   160,
+        4 +   384 * sizeof (short) / sizeof (int) +   160,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
-        4 +   384 * sizeof (short) / sizeof (int) +   160,
         4 +   384 * sizeof (short) / sizeof (int) +   320,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
         4 +   384 * sizeof (short) / sizeof (int) +   352,
         4 +   384 * sizeof (short) / sizeof (int) +   368,
-        4 +   384 * sizeof (short) / sizeof (int) +   384,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
@@ -60,7 +60,7 @@
         4 +   384 * sizeof (short) / sizeof (int) +   160,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
-        4 +   384 * sizeof (short) / sizeof (int) +   400,
+        4 +   384 * sizeof (short) / sizeof (int) +   384,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
@@ -101,13 +101,13 @@
         4 +   384 * sizeof (short) / sizeof (int) +   160,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
-        4 +   384 * sizeof (short) / sizeof (int) +   416,
+        4 +   384 * sizeof (short) / sizeof (int) +   400,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
+        4 +   384 * sizeof (short) / sizeof (int) +   416,
         4 +   384 * sizeof (short) / sizeof (int) +   432,
         4 +   384 * sizeof (short) / sizeof (int) +   448,
         4 +   384 * sizeof (short) / sizeof (int) +   464,
-        4 +   384 * sizeof (short) / sizeof (int) +   480,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
@@ -129,7 +129,7 @@
         4 +   384 * sizeof (short) / sizeof (int) +   160,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
-        4 +   384 * sizeof (short) / sizeof (int) +   496,
+        4 +   384 * sizeof (short) / sizeof (int) +   480,
        -1,
        -1,
        -1,
@@ -146,6 +146,7 @@
        -1,
        -1,
        -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   496,
         4 +   384 * sizeof (short) / sizeof (int) +   512,
         4 +   384 * sizeof (short) / sizeof (int) +   528,
         4 +   384 * sizeof (short) / sizeof (int) +   544,
@@ -153,22 +154,21 @@
         4 +   384 * sizeof (short) / sizeof (int) +   576,
         4 +   384 * sizeof (short) / sizeof (int) +   592,
         4 +   384 * sizeof (short) / sizeof (int) +   608,
-       -1,
         4 +   384 * sizeof (short) / sizeof (int) +   624,
         4 +   384 * sizeof (short) / sizeof (int) +   640,
         4 +   384 * sizeof (short) / sizeof (int) +   656,
         4 +   384 * sizeof (short) / sizeof (int) +   672,
         4 +   384 * sizeof (short) / sizeof (int) +   688,
-       -1,
-       -1,
         4 +   384 * sizeof (short) / sizeof (int) +   704,
-       -1,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   720,
+        4 +   384 * sizeof (short) / sizeof (int) +   736,
+        4 +   384 * sizeof (short) / sizeof (int) +   752,
+        4 +   384 * sizeof (short) / sizeof (int) +   768,
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
-        4 +   384 * sizeof (short) / sizeof (int) +   720,
-        4 +   384 * sizeof (short) / sizeof (int) +   736,
+        4 +   384 * sizeof (short) / sizeof (int) +   784,
+        4 +   384 * sizeof (short) / sizeof (int) +   800,
        -1,
        -1,
        -1,
@@ -176,7 +176,7 @@
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
-        4 +   384 * sizeof (short) / sizeof (int) +   752,
+        4 +   384 * sizeof (short) / sizeof (int) +   816,
        -1,
        -1,
        -1,
@@ -203,9 +203,9 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
-        4 +   384 * sizeof (short) / sizeof (int) +   768,
+        4 +   384 * sizeof (short) / sizeof (int) +   832,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   784,
+        4 +   384 * sizeof (short) / sizeof (int) +   848,
        -1,
        -1,
        -1,
@@ -238,13 +238,13 @@
        -1,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   800,
+        4 +   384 * sizeof (short) / sizeof (int) +   864,
        -1,
        -1,
        -1,
        -1,
        -1,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   880,
        -1,
        -1,
        -1,
@@ -254,10 +254,10 @@
        -1,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   816,
-        4 +   384 * sizeof (short) / sizeof (int) +   832,
-        4 +   384 * sizeof (short) / sizeof (int) +   848,
-        4 +   384 * sizeof (short) / sizeof (int) +   864,
+        4 +   384 * sizeof (short) / sizeof (int) +   896,
+        4 +   384 * sizeof (short) / sizeof (int) +   912,
+        4 +   384 * sizeof (short) / sizeof (int) +   928,
+        4 +   384 * sizeof (short) / sizeof (int) +   944,
        -1,
        -1,
        -1,
@@ -266,15 +266,15 @@
        -1,
        -1,
        -1,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   960,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   880,
-        4 +   384 * sizeof (short) / sizeof (int) +   896,
-        4 +   384 * sizeof (short) / sizeof (int) +   912,
-        4 +   384 * sizeof (short) / sizeof (int) +   928,
-        4 +   384 * sizeof (short) / sizeof (int) +   944,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   976,
+        4 +   384 * sizeof (short) / sizeof (int) +   992,
+        4 +   384 * sizeof (short) / sizeof (int) +  1008,
+        4 +   384 * sizeof (short) / sizeof (int) +  1024,
+        4 +   384 * sizeof (short) / sizeof (int) +  1040,
+        4 +   384 * sizeof (short) / sizeof (int) +  1056,
        -1,
        -1,
        -1,
@@ -361,7 +361,7 @@
         4 +   384 * sizeof (short) / sizeof (int) +   160,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
-        4 +   384 * sizeof (short) / sizeof (int) +   960,
+        4 +   384 * sizeof (short) / sizeof (int) +  1072,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
@@ -369,8 +369,8 @@
         4 +   384 * sizeof (short) / sizeof (int) +   160,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
-        4 +   384 * sizeof (short) / sizeof (int) +   976,
-        4 +   384 * sizeof (short) / sizeof (int) +   992,
+        4 +   384 * sizeof (short) / sizeof (int) +  1088,
+        4 +   384 * sizeof (short) / sizeof (int) +  1104,
        -1,
        -1,
        -1,
@@ -403,7 +403,7 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
-        4 +   384 * sizeof (short) / sizeof (int) +   992,
+        4 +   384 * sizeof (short) / sizeof (int) +  1104,
        -1,
        -1
   },
@@ -414,28 +414,28 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x7CFF0000,
+    0x00000000, 0x00000000, 0x00000000, 0xFCFF0000,
     0xFFFFD7F0, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFC07, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE00FF, 0xFE7FFFFF, 0xFFFFFFFE,
-    0x000086FF, 0x40000000, 0xFFFF0049, 0x001F07FF,
+    0xFFFFFFFF, 0xFFFEFFFF, 0xFE7FFFFF, 0xFFFFFFFE,
+    0x0000E6FF, 0x40000000, 0xFFFF0049, 0x001F07FF,
     0xC800FFC0, 0xFFFFFFFF, 0x000007FF, 0xFFFEFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x403FFFFF, 0xFFFFC260,
     0xFFFD3FFF, 0x0000FFFF, 0xFFFFE000, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0002003F, 0xFFFFFFFF, 0x07F007FF,
     0x043FFFFF, 0x7FFF0110, 0x41FFFFFF, 0x00000000,
-    0x00000000, 0x00001FFD, 0x00000000, 0x00000000,
-    0xFFFFFFF8, 0xEBFFFFFF, 0xFF01DE01, 0xFEFFFFF3,
-    0xFFF99FEC, 0xA3C5FDFF, 0xB0005981, 0x0FFFFFC3,
+    0x00000000, 0x0007FFFF, 0x00000000, 0x00000000,
+    0xFFFFFFF8, 0xEBFFFFFF, 0xFF01DE01, 0xFFFFFFF3,
+    0xFFF99FED, 0xA3C5FDFF, 0xB0005981, 0x0FFFFFC3,
     0xFFF987E8, 0xC36DFDFF, 0x5E000001, 0x001CFFC0,
     0xFFFBBFE8, 0xE3EDFDFF, 0x00011A01, 0x0003FFC3,
     0xFFF99FEC, 0x23EDFDFF, 0xB0001981, 0x00FFFFC3,
     0xD63DC7E8, 0x83FFC718, 0x00011DC6, 0x07FFFFC0,
-    0xFFFDDFEE, 0x23EFFDFF, 0x0300001E, 0xFF00FFC3,
+    0xFFFDDFEE, 0x23FFFDFF, 0x0300001E, 0xFF00FFC3,
     0xFFFDDFEC, 0x63EFFDFF, 0x40000D9B, 0x0006FFC3,
     0xFFFDDFEC, 0xA7FFFFFF, 0x00005DC1, 0xFE3FFFC3,
-    0xFC7FFFEC, 0x2FFBFFFF, 0x7F03007F, 0x001C0000,
+    0xFC7FFFEC, 0x2FFBFFFF, 0x7F03007F, 0x001CFFC0,
     0xFFFFFFFE, 0x800DFFFF, 0x0FFF807F, 0x00000000,
     0xFEF02596, 0x200DECAE, 0xF3FF005F, 0x00000000,
     0xFCFFFFFF, 0xFD5FFFFF, 0xFFFFFEFF, 0x80001FFF,
@@ -453,17 +453,17 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x1FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0001FFFF,
+    0x1FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x01FFFFFF,
     0x0003DFFF, 0x0063FFFF, 0x0003FFFF, 0x0001DFFF,
     0xFFFFFFFF, 0xC04FFFFF, 0x1FF001BF, 0x03FF03FF,
     0x03FF07FF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFF05FF, 0xFFFFFFFF, 0x003FFFFF,
-    0x1FFFFFFF, 0x01FB0E78, 0xFFFFFFF1, 0x001F3FFF,
+    0x7FFFFFFF, 0x01FB0E78, 0xFFFFFFF1, 0x001F3FFF,
     0xFFFFFFFF, 0xFFFF0FFF, 0xC7FF03FF, 0xFFFFFFFF,
     0xC67FFFFF, 0xFFFFFFFF, 0x00BFFFFF, 0x0007E01A,
     0x03FF03FF, 0x00003FFF, 0x00000000, 0x00000000,
     0xFFFFFFF0, 0xE82FFFFF, 0xFFFF0FFB, 0x1FF007FF,
-    0xFFFFFFFC, 0xFFFFF4C3, 0xFFFFFFFF, 0xF00C5CBF,
+    0xFFFFFFFC, 0xFFFFC4C3, 0xFFFFFFFF, 0xF00C5CBF,
     0xFFFFFFFF, 0xF8300FFF, 0xFFFFE3FF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x000800FF, 0x006FDE02,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -473,30 +473,26 @@
     0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF,
     0xFFFFFFFF, 0xFFDFFFFF, 0xEFCFFFDF, 0x7FDCFFFF,
     0xFFFF07FF, 0xFFFF80FF, 0xFFFFFFFF, 0xFFF30000,
-    0x1FFF7FFF, 0x07FFFFFF, 0x00000000, 0x00000000,
+    0x1FFF7FFF, 0x3FFFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFF03FF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF,
     0xFFFFFFFF, 0x0000007F, 0x000007FF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x03FF1FFF, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFCFFFFF,
+    0xFF3FFFFF, 0xE3FFFFFF, 0x0003FDFF, 0x00000000,
     0xFFFFFFFF, 0xFFFF7FFF, 0x7FFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFE0C7FFF,
     0xFFFFFFFF, 0xFFFF20BF, 0xFFFFFFFF, 0x000180FF,
     0x007FFFFF, 0x7F7F7F7F, 0x7F7F7F7F, 0x00000000,
-    0xFFFFFFFF, 0x0FFFFFFF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x00000007, 0x00000000,
     0xFBFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, 0x0FFF0000,
@@ -521,16 +517,16 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0x00000FFF, 0xFFFFFFFF, 0xC0087FFF,
-    0x00FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FCFFFF,
+    0x3FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FCFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000F7FFF, 0x000007FF, 0x00000000, 0xFF000000,
+    0xFFFF7FFF, 0x00033FFF, 0x00000000, 0xFF800000,
     0xFFFFF7BB, 0x03FF0F9F, 0xFFFFFFFF, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x03FFC00F, 0x0FFC0000,
     0xFFFFFFFF, 0xFFFFC03F, 0x800C007F, 0x1FFFFFFF,
-    0xFFFFFFF8, 0xEC37FFFF, 0xC3FFBFFF, 0x00000000,
-    0xFFFFFFFF, 0x001981FF, 0xF3FF2FF7, 0x0FFFFFFF,
+    0xFFFFFFF8, 0xEC37FFFF, 0xC3FFBFFF, 0x7FFFFFDF,
+    0xFFFFFFFF, 0x001981FF, 0xF3FF2FF7, 0xEFFFFFFF,
     0xFFFFFFFF, 0x3E62FFFF, 0xF8000005, 0x003FCFFF,
-    0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
+    0x007E7E7E, 0xFFFF7F7F, 0xFFFFFFFF, 0x00000030,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x03FF1EDF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -555,23 +551,27 @@
     0xFFFFEFFF, 0xB7FFFF7F, 0x3FFF3FFF, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF,
     0xFFFFFF87, 0xFF8FFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x0FFF07FF, 0x00000000, 0xFFFF0000, 0x1FFFFFFF,
+    0x0FFF1FFF, 0x00000001, 0xFFFF0000, 0x1FFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x1FFFFFFF, 0xFFFFFFFF, 0x0001FFFF, 0x00000000,
-    0x7FFFFFFF, 0xFFFF000F, 0x000007FF, 0x00000000,
+    0x1FFFFFFF, 0xFFFFFFFF, 0x0001FFFF, 0x0FFFFFFE,
+    0xFFFFFFFF, 0xFFFF000F, 0xFFFF07FF, 0x003FFFFF,
     0xBFFFFFFF, 0xFFFFFFFF, 0x003FFF0F, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x000003FF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFF00FF, 0xFFFFFFFF, 0x0000800F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFD3F, 0x91BFFFFF, 0xFFBFFFFF, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0x007FFFFF, 0x003FFFFF, 0x000000FF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFD3F, 0x91BFFFFF, 0xFFBFFFFF, 0xFFFFFFFF,
+    0x7FFFFFFF, 0x0000FF80, 0x00000000, 0x00000000,
     0x8FFFFFFF, 0x83FFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xC0FFFFFF, 0x00000000, 0x00000000,
     0xFEEF0001, 0x000FFFFF, 0x01FF00FF, 0xFFFFFFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x00000000, 0xFFFFFFFF, 0x007FF81F,
     0xFFFFFFFF, 0xFE3FFFFF, 0xFF3FFFFF, 0xFF07FFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x1E03FFFF, 0x0000FE00, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x000001FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -582,17 +582,33 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFD, 0x00FFFFFF, 0xFFFC3F80, 0x0000FFFF,
     0xFFFFFFFC, 0xD987FFFF, 0xFFFF0003, 0x03FF01FF,
-    0xFFFFFFF8, 0xFFC0107F, 0x0000000F, 0x00000000,
-    0xFFFFFFFC, 0x803FFFFF, 0x03FF01FF, 0x00000000,
+    0xFFFFFFF8, 0xFFC0107F, 0xFFFF000F, 0x0077FFFF,
+    0xFFFFFFFC, 0x803FFFFF, 0x07FF21FF, 0x001FFFFE,
+    0xFFFBFFFF, 0x3F2C7FFF, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0x7FFFFFFF, 0x03FF0007,
+    0xFFF99FEC, 0xA3EDFDFF, 0xE000399E, 0x0000000F,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x5A06FFFF, 0x03FF00F2, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x4F037FFF, 0x000003FE, 0x00000000,
+    0xFFFFFFFF, 0x5807FFFF, 0x03FF001E, 0x00000000,
     0xFFFFFFFF, 0x0040D7FF, 0x000003FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x8007FFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0x01FFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000F0007,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x01FFFFFF, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x001F7FFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -600,10 +616,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0x01FFFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x01FFFFFF, 0x7FFFFFFF, 0x0000C3FF,
+    0x00000000, 0x00000000, 0xFFFF0000, 0x00203FFF,
+    0xFFFFFFFF, 0xFF80FFFF, 0xFBFF003F, 0xE0FFFFFB,
+    0x0000FFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF001F, 0x7FFFFFFF,
@@ -612,6 +628,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFF07FF,
+    0x93FF01FF, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF,
     0xFFFFFFFF, 0xFFFFFE7F, 0xFFFFFFFF, 0x00003C5F,
@@ -628,25 +648,33 @@
     0xFFFFFFFF, 0xFFFFFF3F, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFCFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FF9F, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFEF, 0x0AF7FE96, 0xAA96EA84, 0x5EF7F796,
     0x0FFFFBFF, 0x0FFFFBEE, 0x00000000, 0x00030000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFF0FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000FFFFF, 0x7FFE7FFF, 0xFFFEFFFE, 0x00000000,
-    0xFFFF07FF, 0xFFFF7FFF, 0xFFFFFFFF, 0xFFFF0FFF,
+    0x000FFFFF, 0xFFFE7FFF, 0xFFFEFFFE, 0x003FFFFF,
+    0xFFFF1FFF, 0xFFFF7FFF, 0xFFFFFFFF, 0xFFFF0FFF,
     0x07FFFFFF, 0x00000000, 0x00000000, 0xFFFFFFC0,
     0xFFFF0007, 0x07FFFFFF, 0x000301FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFBF0001, 0xFFFFFFFF, 0x1FFFFFFF,
-    0x000FFFFF, 0xFFFFFFFF, 0x000007DF, 0x0001FFFF,
-    0xFFFFFFFF, 0x7FFFFFFF, 0xFFFFFFFD, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1EFFFFFF,
-    0xFFFFFFFF, 0x3FFFFFFF, 0xFFFF000F, 0x000000FF,
-    0x00000000, 0x00000000, 0x00000000, 0xF8000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFE1, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000000,
+    0xFFFFFFFF, 0xFFFF1FFF, 0xFFFFFFFF, 0x3FFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFF07FFF, 0x00FFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF07FF, 0xFBFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFEF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFE7, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, 0x000F1FFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x001FFFFF, 0x00000000,
+    0xFFFF0FFF, 0xFFFFFFFF, 0x03FF00FF, 0xFFFFFFFF,
+    0xFFFF00FF, 0x00003FFF, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000,
--- a/lib/unictype/pr_grapheme_extend.h
+++ b/lib/unictype/pr_grapheme_extend.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[15];
     short level2[3 << 7];
-    /*unsigned*/ int level3[29 << 4];
+    /*unsigned*/ int level3[35 << 4];
   }
 u_property_grapheme_extend =
 {
@@ -163,19 +163,17 @@
        -1,
        16 +   384 * sizeof (short) / sizeof (int) +   320,
        16 +   384 * sizeof (short) / sizeof (int) +   336,
-       -1,
-       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   352,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   352,
-       -1,
        -1,
        16 +   384 * sizeof (short) / sizeof (int) +   368,
        -1,
        -1,
        16 +   384 * sizeof (short) / sizeof (int) +   384,
-       -1,
-       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   400,
+       16 +   384 * sizeof (short) / sizeof (int) +   416,
+       16 +   384 * sizeof (short) / sizeof (int) +   432,
        -1,
        -1,
        -1,
@@ -217,7 +215,9 @@
        -1,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   400,
+       16 +   384 * sizeof (short) / sizeof (int) +   448,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   464,
        -1,
        -1,
        -1,
@@ -256,6 +256,18 @@
        -1,
        -1,
        -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   480,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +   496,
+       16 +   384 * sizeof (short) / sizeof (int) +   512,
        -1,
        -1,
        -1,
@@ -266,8 +278,7 @@
        -1,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   416,
-       16 +   384 * sizeof (short) / sizeof (int) +   432,
+       16 +   384 * sizeof (short) / sizeof (int) +   528,
        -1,
        -1,
        -1,
@@ -279,18 +290,7 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   448,
+       16 +   384 * sizeof (short) / sizeof (int) +   544,
        -1,
        -1,
        -1,
@@ -433,16 +433,16 @@
     0x00020000, 0xFFFF0000, 0x000007FF, 0x00000000,
     0x00000000, 0x0001FFC0, 0x00000000, 0x000FF800,
     0xFBC00000, 0x00003EEF, 0x0E000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x7FFFFFF0,
+    0x00000000, 0x00000000, 0x00000000, 0xFFFFFFF0,
     0x00000007, 0x14000000, 0x00FE21FE, 0x0000000C,
     0x00000002, 0x50000000, 0x0080201E, 0x0000000C,
     0x00000006, 0x10000000, 0x00023986, 0x00230000,
     0x00000006, 0x10000000, 0x000021BE, 0x0000000C,
     0x00000002, 0xD0000000, 0x00C0201E, 0x0000000C,
     0x00000004, 0x40000000, 0x00802001, 0x00000000,
-    0x00000000, 0xC0000000, 0x00603DC1, 0x0000000C,
-    0x00000000, 0x90000000, 0x00603044, 0x0000000C,
-    0x00000000, 0x40000000, 0x0080201E, 0x0000000C,
+    0x00000001, 0xC0000000, 0x00603DC1, 0x0000000C,
+    0x00000002, 0x90000000, 0x00603044, 0x0000000C,
+    0x00000002, 0x40000000, 0x0080201E, 0x0000000C,
     0x00000000, 0x00000000, 0x805C8400, 0x00000000,
     0x00000000, 0x07F20000, 0x00007F80, 0x00000000,
     0x00000000, 0x1BF20000, 0x00003F00, 0x00000000,
@@ -465,13 +465,13 @@
     0x00000000, 0x0E040187, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x09800000, 0x00000000, 0x7F400000, 0x9FF81FE5,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x7FFF0000, 0x00000000, 0x00000000,
     0x0000000F, 0x17D00000, 0x00000004, 0x000FF800,
-    0x00000003, 0x00000B3C, 0x00000000, 0x0003A340,
+    0x00000003, 0x00003B3C, 0x00000000, 0x0003A340,
     0x00000000, 0x00CFF000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFF70000, 0x001021FD,
+    0x00000000, 0x00000000, 0xFFF70000, 0x031021FD,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFFFFFFF, 0xF000007F,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0xF03FFFFF,
     0x00003000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFF0000, 0x0001FFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -491,8 +491,8 @@
     0x00000844, 0x00000060, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000010, 0x0003FFFF,
     0x00000000, 0x00003FC0, 0x0003FF80, 0x00000000,
-    0x00000007, 0x13C80000, 0x00000000, 0x00000000,
-    0x00000000, 0x00667E00, 0x00001008, 0x00000000,
+    0x00000007, 0x13C80000, 0x00000000, 0x00000020,
+    0x00000000, 0x00667E00, 0x00001008, 0x10000000,
     0x00000000, 0xC19D0000, 0x00000002, 0x00403000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00002120,
@@ -500,7 +500,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x40000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x0000FFFF, 0x0000007F, 0x00000000, 0x00000000,
+    0x0000FFFF, 0x00003FFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xC0000000, 0x00000000, 0x00000000, 0x00000000,
@@ -508,23 +508,43 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x20000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000001,
+    0x00000000, 0x00000000, 0x00000000, 0x07C00000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x0000F06E, 0x87000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000060,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000002, 0xFF000000, 0x0000007F, 0x80000000,
+    0x00000003, 0x06780000, 0x00000000, 0x00000000,
+    0x00000007, 0x001FEF80, 0x00000000, 0x00080000,
+    0x00000003, 0x7FC00000, 0x00000000, 0x00000000,
+    0x00000000, 0x00D38000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x80000000, 0x000007F8,
+    0x00000002, 0x50000000, 0x00800001, 0x001F1FC0,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xA5F90000, 0x0000000D, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xB03C8000, 0x00000001, 0x00000000,
+    0x00000000, 0xA7F80000, 0x00000001, 0x00000000,
+    0x00000000, 0x00BF2800, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000002, 0xFF000000, 0x0000007F, 0x00000000,
-    0x00000003, 0x06780000, 0x00000000, 0x00000000,
-    0x00000007, 0x001FEF80, 0x00000000, 0x00000000,
-    0x00000003, 0x7FC00000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00BF2800, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x001F0000,
+    0x00000000, 0x007F0000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00078000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x60000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xF807C3A0,
     0x00000FE7, 0x00003C00, 0x00000000, 0x00000000,
@@ -533,6 +553,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x007F0000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF
--- a/lib/unictype/pr_grapheme_link.h
+++ b/lib/unictype/pr_grapheme_link.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[13 << 4];
+    /*unsigned*/ int level3[15 << 4];
   }
 u_property_grapheme_link =
 {
@@ -158,9 +158,9 @@
        -1,
        -1,
         3 +   256 * sizeof (short) / sizeof (int) +   176,
-       -1,
-       -1,
         3 +   256 * sizeof (short) / sizeof (int) +   192,
+        3 +   256 * sizeof (short) / sizeof (int) +   208,
+        3 +   256 * sizeof (short) / sizeof (int) +   224,
        -1,
        -1,
        -1,
@@ -323,11 +323,19 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000040, 0x00000000,
+    0x00000000, 0x00000000, 0x00000040, 0x80000000,
     0x00000000, 0x02000000, 0x00000000, 0x00000000,
     0x00000000, 0x00180000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000001, 0x00000000,
+    0x00000000, 0x00200000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000400,
+    0x00000000, 0x00000000, 0x00002000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000004, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x80000000, 0x00000000, 0x00000000,
+    0x00000000, 0x80000000, 0x00000000, 0x00000000,
     0x00000000, 0x00400000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000
--- a/lib/unictype/pr_hex_digit.h
+++ b/lib/unictype/pr_hex_digit.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_hyphen.h
+++ b/lib/unictype/pr_hyphen.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_id_continue.h
+++ b/lib/unictype/pr_id_continue.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[15];
     short level2[4 << 7];
-    /*unsigned*/ int level3[54 << 4];
+    /*unsigned*/ int level3[61 << 4];
   }
 u_property_id_continue =
 {
@@ -165,22 +165,22 @@
        16 +   512 * sizeof (short) / sizeof (int) +   496,
        16 +   512 * sizeof (short) / sizeof (int) +   512,
        16 +   512 * sizeof (short) / sizeof (int) +   528,
-       -1,
        16 +   512 * sizeof (short) / sizeof (int) +   544,
        16 +   512 * sizeof (short) / sizeof (int) +   560,
        16 +   512 * sizeof (short) / sizeof (int) +   576,
-       -1,
        16 +   512 * sizeof (short) / sizeof (int) +   592,
        -1,
-       -1,
        16 +   512 * sizeof (short) / sizeof (int) +   608,
-       -1,
-       -1,
+       16 +   512 * sizeof (short) / sizeof (int) +   624,
+       16 +   512 * sizeof (short) / sizeof (int) +   640,
+       16 +   512 * sizeof (short) / sizeof (int) +   656,
+       16 +   512 * sizeof (short) / sizeof (int) +   672,
+       16 +   512 * sizeof (short) / sizeof (int) +   688,
        -1,
        -1,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
-       16 +   512 * sizeof (short) / sizeof (int) +   624,
-       16 +   512 * sizeof (short) / sizeof (int) +   640,
+       16 +   512 * sizeof (short) / sizeof (int) +   704,
+       16 +   512 * sizeof (short) / sizeof (int) +   720,
        -1,
        -1,
        -1,
@@ -188,7 +188,7 @@
        -1,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
-       16 +   512 * sizeof (short) / sizeof (int) +   656,
+       16 +   512 * sizeof (short) / sizeof (int) +   736,
        -1,
        -1,
        -1,
@@ -215,9 +215,9 @@
        -1,
        -1,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
-       16 +   512 * sizeof (short) / sizeof (int) +   672,
+       16 +   512 * sizeof (short) / sizeof (int) +   752,
        -1,
-       16 +   512 * sizeof (short) / sizeof (int) +   688,
+       16 +   512 * sizeof (short) / sizeof (int) +   768,
        -1,
        -1,
        -1,
@@ -250,13 +250,13 @@
        -1,
        -1,
        -1,
-       16 +   512 * sizeof (short) / sizeof (int) +   704,
+       16 +   512 * sizeof (short) / sizeof (int) +   784,
        -1,
        -1,
        -1,
        -1,
        -1,
-       -1,
+       16 +   512 * sizeof (short) / sizeof (int) +   800,
        -1,
        -1,
        -1,
@@ -266,10 +266,10 @@
        -1,
        -1,
        -1,
-       16 +   512 * sizeof (short) / sizeof (int) +   720,
-       16 +   512 * sizeof (short) / sizeof (int) +   736,
-       16 +   512 * sizeof (short) / sizeof (int) +   752,
-       16 +   512 * sizeof (short) / sizeof (int) +   768,
+       16 +   512 * sizeof (short) / sizeof (int) +   816,
+       16 +   512 * sizeof (short) / sizeof (int) +   832,
+       16 +   512 * sizeof (short) / sizeof (int) +   848,
+       16 +   512 * sizeof (short) / sizeof (int) +   864,
        -1,
        -1,
        -1,
@@ -278,10 +278,10 @@
        -1,
        -1,
        -1,
+       16 +   512 * sizeof (short) / sizeof (int) +   880,
        -1,
        -1,
-       -1,
-       16 +   512 * sizeof (short) / sizeof (int) +   784,
+       16 +   512 * sizeof (short) / sizeof (int) +   896,
        -1,
        -1,
        -1,
@@ -373,7 +373,7 @@
        16 +   512 * sizeof (short) / sizeof (int) +   304,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
-       16 +   512 * sizeof (short) / sizeof (int) +   800,
+       16 +   512 * sizeof (short) / sizeof (int) +   912,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
@@ -381,8 +381,8 @@
        16 +   512 * sizeof (short) / sizeof (int) +   304,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
-       16 +   512 * sizeof (short) / sizeof (int) +   816,
-       16 +   512 * sizeof (short) / sizeof (int) +   832,
+       16 +   512 * sizeof (short) / sizeof (int) +   928,
+       16 +   512 * sizeof (short) / sizeof (int) +   944,
        -1,
        -1,
        -1,
@@ -415,10 +415,10 @@
        -1,
        -1,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
-       16 +   512 * sizeof (short) / sizeof (int) +   832,
+       16 +   512 * sizeof (short) / sizeof (int) +   944,
        -1,
        -1,
-       16 +   512 * sizeof (short) / sizeof (int) +   848,
+       16 +   512 * sizeof (short) / sizeof (int) +   960,
        -1,
        -1,
        -1,
@@ -554,28 +554,28 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x0003FFC3, 0x0000501F,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x3CDFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xBCDFFFFF,
     0xFFFFD7C0, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFBFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFCFB, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE00FF, 0x027FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFEFFFF, 0x027FFFFF, 0xFFFFFFFE,
     0xFFFE00FF, 0xBFFFFFFF, 0xFFFF00B6, 0x000707FF,
     0x07FF0000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFC3FF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x9FEFFFFF, 0x9FFFFDFF,
     0xFFFF0000, 0xFFFFFFFF, 0xFFFFE7FF, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0003FFFF, 0xFFFFFFFF, 0x043FFFFF,
     0xFFFFFFFF, 0x00003FFF, 0x0FFFFFFF, 0x00000000,
-    0x00000000, 0x00001FFD, 0x00000000, 0x7FFFFFF0,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFEFEFFCF,
-    0xFFF99FEE, 0xF3C5FDFF, 0xB080799F, 0x0003FFCF,
+    0x00000000, 0x0007FFFF, 0x00000000, 0xFFFFFFF0,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFEFFCF,
+    0xFFF99FEF, 0xF3C5FDFF, 0xB080799F, 0x0003FFCF,
     0xFFF987EE, 0xD36DFDFF, 0x5E023987, 0x003FFFC0,
     0xFFFBBFEE, 0xF3EDFDFF, 0x00013BBF, 0x0000FFCF,
     0xFFF99FEE, 0xF3EDFDFF, 0xB0C0399F, 0x0002FFCF,
     0xD63DC7EC, 0xC3FFC718, 0x00813DC7, 0x0000FFC0,
-    0xFFFDDFEE, 0xE3EFFDFF, 0x03603DDF, 0x0000FFCF,
-    0xFFFDDFEC, 0xF3EFFDFF, 0x40603DDF, 0x0006FFCF,
-    0xFFFDDFEC, 0xE7FFFFFF, 0x00807DDF, 0xFC00FFCF,
-    0xFC7FFFEC, 0x2FFBFFFF, 0xFF5F847F, 0x000C0000,
+    0xFFFDDFEF, 0xE3FFFDFF, 0x03603DDF, 0x0000FFCF,
+    0xFFFDDFEE, 0xF3EFFDFF, 0x40603DDF, 0x0006FFCF,
+    0xFFFDDFEE, 0xE7FFFFFF, 0x00807DDF, 0xFC00FFCF,
+    0xFC7FFFEC, 0x2FFBFFFF, 0xFF5F847F, 0x000CFFC0,
     0xFFFFFFFE, 0x07FFFFFF, 0x03FF7FFF, 0x00000000,
     0xFEF02596, 0x3BFFECAE, 0xF3FF3F5F, 0x00000000,
     0x03000001, 0xC2A003FF, 0xFFFFFEFF, 0xFFFE1FFF,
@@ -593,21 +593,21 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF9FFF,
-    0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x0001C7FF,
+    0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x01FFC7FF,
     0x001FDFFF, 0x001FFFFF, 0x000FFFFF, 0x000DDFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x308FFFFF, 0x000003FF,
     0x03FF3800, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFF07FF, 0xFFFFFFFF, 0x003FFFFF,
-    0x1FFFFFFF, 0x0FFF0FFF, 0xFFFFFFC0, 0x001F3FFF,
+    0x7FFFFFFF, 0x0FFF0FFF, 0xFFFFFFC0, 0x001F3FFF,
     0xFFFFFFFF, 0xFFFF0FFF, 0x07FF03FF, 0x00000000,
     0x0FFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF, 0x9FFFFFFF,
-    0x03FF03FF, 0x00000080, 0x00000000, 0x00000000,
+    0x03FF03FF, 0x3FFF0080, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x03FF0FFF, 0x000FF800,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFF, 0x00FFFFFF, 0xFFFFE3FF, 0x3FFFFFFF,
-    0x00000000, 0x00000000, 0xFFF70000, 0x007FFFFF,
+    0x00000000, 0x00000000, 0xFFF70000, 0x037FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xF000007F,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xF03FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF,
@@ -641,16 +641,16 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFF1FFF, 0x00000FFF, 0xFFFFFFFF, 0xBFF0FFFF,
-    0x80FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0003FFFF,
+    0xBFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0003FFFF,
     0xFF800000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000F79FF, 0x000007FF, 0x00000000, 0xFF000000,
+    0xFFFF79FF, 0x00033FFF, 0x00000000, 0xFF800000,
     0xFFFFFFFF, 0x000000FF, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x03FF001F, 0x08FFFFFF,
     0xFFFFFFFF, 0xFFFF3FFF, 0x000FFFFF, 0x1FFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x03FF8001, 0x00000000,
-    0xFFFFFFFF, 0x007FFFFF, 0x03FF3FFF, 0x0C7FFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x03FF8001, 0x7FFFFFFF,
+    0xFFFFFFFF, 0x007FFFFF, 0x03FF3FFF, 0xFC7FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x38000007, 0x007CFFFF,
-    0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
+    0x007E7E7E, 0xFFFF7F7F, 0xF7FFFFFF, 0x00000030,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x03FF37FF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -668,7 +668,7 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0x3FFFFFFF, 0xFFFF0000, 0xFFFFFFFF,
     0xFFFCFFFF, 0xFFFFFFFF, 0x000000FF, 0x0FFF0000,
-    0x0000FFFF, 0x0018007F, 0x0000E000, 0xFFDF0000,
+    0x0000FFFF, 0x00183FFF, 0x0000E000, 0xFFDF0000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFFFFFF,
     0x03FF0000, 0x87FFFFFE, 0x07FFFFFE, 0xFFFFFFC0,
     0xFFFFFFFF, 0x7FFFFFFF, 0x1CFCFCFC, 0x00000000,
@@ -677,49 +677,69 @@
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x001FFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x20000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x1FFFFFFF, 0xFFFFFFFF, 0x0001FFFF, 0x00000000,
-    0x7FFFFFFF, 0xFFFF0000, 0x000007FF, 0x00000000,
+    0x1FFFFFFF, 0xFFFFFFFF, 0x0001FFFF, 0x00000001,
+    0xFFFFFFFF, 0xFFFF0000, 0xFFFF07FF, 0x07FFFFFF,
     0x3FFFFFFF, 0xFFFFFFFF, 0x003EFF0F, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x000003FF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFF00FF, 0xFFFFFFFF, 0x0000000F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFD3F, 0x91BFFFFF, 0x003FFFFF, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0x007FFFFF, 0x003FFFFF, 0x000000FF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFD3F, 0x91BFFFFF, 0x003FFFFF, 0x007FFFFF,
+    0x7FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x003FFFFF, 0x03FFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xC0FFFFFF, 0x00000000, 0x00000000,
     0xFEEFF06F, 0x870FFFFF, 0x00000000, 0x1FFFFFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x1FFFFFFF, 0x00000000, 0xFFFFFEFF, 0x0000007F,
     0xFFFFFFFF, 0x003FFFFF, 0x003FFFFF, 0x0007FFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x0003FFFF, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x000001FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x0000007F, 0x0000FFC0,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000007F, 0x8000FFC0,
     0xFFFFFFFF, 0x07FFFFFF, 0xFFFF0000, 0x03FF01FF,
-    0xFFFFFFFF, 0xFFDFFFFF, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x03FF001F, 0x00000000,
+    0xFFFFFFFF, 0xFFDFFFFF, 0xFFFF0000, 0x004FFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x07FF001F, 0x00000000,
+    0xFFFBFFFF, 0x00FFFFFF, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0xFFFFFFFF, 0x03FF07FF,
+    0xFFF99FEE, 0xF3EDFDFF, 0xE080399F, 0x001F1FCF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x03FF00BF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFF3FFFFF, 0x00000001, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x03FF0011, 0x00000000,
     0xFFFFFFFF, 0x00FFFFFF, 0x000003FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x800003FF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0x01FFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x01FFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000007,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0x00007FFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0x01FFFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x01FFFFFF, 0x7FFFFFFF, 0x000003FF,
+    0x00000000, 0x00000000, 0xFFFF0000, 0x001F3FFF,
+    0xFFFFFFFF, 0x007FFFFF, 0x03FF000F, 0xE0FFFFF8,
+    0x0000FFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF001F, 0x7FFFFFFF,
@@ -728,6 +748,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFF07FF,
+    0x63FF01FF, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xF807E3E0,
@@ -744,6 +768,10 @@
     0xFFFFFFFF, 0xFFFFFF3F, 0xF7FFFFFD, 0xF7FFFFFF,
     0xFFDFFFFF, 0xFFDFFFFF, 0xFFFF7FFF, 0xFFFF7FFF,
     0xFFFFFDFF, 0xFFFFFDFF, 0xFFFFCFF7, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x007F001F, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFEF, 0x0AF7FE96, 0xAA96EA84, 0x5EF7F796,
     0x0FFFFBFF, 0x0FFFFBEE, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/pr_id_start.h
+++ b/lib/unictype/pr_id_start.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[3];
     short level2[3 << 7];
-    /*unsigned*/ int level3[51 << 4];
+    /*unsigned*/ int level3[58 << 4];
   }
 u_property_id_start =
 {
@@ -153,22 +153,22 @@
         4 +   384 * sizeof (short) / sizeof (int) +   496,
         4 +   384 * sizeof (short) / sizeof (int) +   512,
         4 +   384 * sizeof (short) / sizeof (int) +   528,
-       -1,
         4 +   384 * sizeof (short) / sizeof (int) +   544,
         4 +   384 * sizeof (short) / sizeof (int) +   560,
         4 +   384 * sizeof (short) / sizeof (int) +   576,
-       -1,
         4 +   384 * sizeof (short) / sizeof (int) +   592,
        -1,
-       -1,
         4 +   384 * sizeof (short) / sizeof (int) +   608,
-       -1,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   624,
+        4 +   384 * sizeof (short) / sizeof (int) +   640,
+        4 +   384 * sizeof (short) / sizeof (int) +   656,
+        4 +   384 * sizeof (short) / sizeof (int) +   672,
+        4 +   384 * sizeof (short) / sizeof (int) +   688,
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
-        4 +   384 * sizeof (short) / sizeof (int) +   624,
-        4 +   384 * sizeof (short) / sizeof (int) +   640,
+        4 +   384 * sizeof (short) / sizeof (int) +   704,
+        4 +   384 * sizeof (short) / sizeof (int) +   720,
        -1,
        -1,
        -1,
@@ -176,7 +176,7 @@
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
-        4 +   384 * sizeof (short) / sizeof (int) +   656,
+        4 +   384 * sizeof (short) / sizeof (int) +   736,
        -1,
        -1,
        -1,
@@ -203,9 +203,9 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
-        4 +   384 * sizeof (short) / sizeof (int) +   672,
+        4 +   384 * sizeof (short) / sizeof (int) +   752,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   688,
+        4 +   384 * sizeof (short) / sizeof (int) +   768,
        -1,
        -1,
        -1,
@@ -238,12 +238,14 @@
        -1,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   704,
+        4 +   384 * sizeof (short) / sizeof (int) +   784,
        -1,
        -1,
        -1,
        -1,
        -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   800,
+       -1,
        -1,
        -1,
        -1,
@@ -254,10 +256,8 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   720,
-        4 +   384 * sizeof (short) / sizeof (int) +   736,
+        4 +   384 * sizeof (short) / sizeof (int) +   816,
+        4 +   384 * sizeof (short) / sizeof (int) +   832,
        -1,
        -1,
        -1,
@@ -266,10 +266,10 @@
        -1,
        -1,
        -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   848,
        -1,
        -1,
-       -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   752,
+        4 +   384 * sizeof (short) / sizeof (int) +   864,
        -1,
        -1,
        -1,
@@ -361,7 +361,7 @@
         4 +   384 * sizeof (short) / sizeof (int) +   304,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
-        4 +   384 * sizeof (short) / sizeof (int) +   768,
+        4 +   384 * sizeof (short) / sizeof (int) +   880,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
@@ -369,8 +369,8 @@
         4 +   384 * sizeof (short) / sizeof (int) +   304,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
-        4 +   384 * sizeof (short) / sizeof (int) +   784,
-        4 +   384 * sizeof (short) / sizeof (int) +   800,
+        4 +   384 * sizeof (short) / sizeof (int) +   896,
+        4 +   384 * sizeof (short) / sizeof (int) +   912,
        -1,
        -1,
        -1,
@@ -403,7 +403,7 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
-        4 +   384 * sizeof (short) / sizeof (int) +   800,
+        4 +   384 * sizeof (short) / sizeof (int) +   912,
        -1,
        -1
   },
@@ -414,25 +414,25 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x0003FFC3, 0x0000501F,
-    0x00000000, 0x00000000, 0x00000000, 0x3CDF0000,
+    0x00000000, 0x00000000, 0x00000000, 0xBCDF0000,
     0xFFFFD740, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFBFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE00FF, 0x027FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFEFFFF, 0x027FFFFF, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0xFFFF0000, 0x000707FF,
     0x00000000, 0xFFFFFFFF, 0x000007FF, 0xFFFEC000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x002FFFFF, 0x9C00C060,
     0xFFFD0000, 0x0000FFFF, 0xFFFFE000, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0002003F, 0xFFFFFC00, 0x043007FF,
     0x043FFFFF, 0x00000110, 0x01FFFFFF, 0x00000000,
-    0x00000000, 0x00001FFD, 0x00000000, 0x00000000,
-    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFEFE0003,
-    0xFFF99FE0, 0x23C5FDFF, 0xB0004000, 0x00030003,
+    0x00000000, 0x0007FFFF, 0x00000000, 0x00000000,
+    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFFFE0003,
+    0xFFF99FE1, 0x23C5FDFF, 0xB0004000, 0x00030003,
     0xFFF987E0, 0x036DFDFF, 0x5E000000, 0x001C0000,
     0xFFFBBFE0, 0x23EDFDFF, 0x00010000, 0x00000003,
     0xFFF99FE0, 0x23EDFDFF, 0xB0000000, 0x00020003,
     0xD63DC7E8, 0x03FFC718, 0x00010000, 0x00000000,
-    0xFFFDDFE0, 0x23EFFDFF, 0x03000000, 0x00000003,
+    0xFFFDDFE0, 0x23FFFDFF, 0x03000000, 0x00000003,
     0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x00060003,
     0xFFFDDFE0, 0x27FFFFFF, 0x00004000, 0xFC000003,
     0xFC7FFFE0, 0x2FFBFFFF, 0x0000007F, 0x00000000,
@@ -453,12 +453,12 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF9FFF,
-    0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x0001C7FF,
+    0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x01FFC7FF,
     0x0003DFFF, 0x0003FFFF, 0x0003FFFF, 0x0001DFFF,
     0xFFFFFFFF, 0x000FFFFF, 0x10800000, 0x00000000,
     0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFF05FF, 0xFFFFFFFF, 0x003FFFFF,
-    0x1FFFFFFF, 0x00000000, 0xFFFF0000, 0x001F3FFF,
+    0x7FFFFFFF, 0x00000000, 0xFFFF0000, 0x001F3FFF,
     0xFFFFFFFF, 0x00000FFF, 0x000000FE, 0x00000000,
     0x007FFFFF, 0xFFFFFFFF, 0x001FFFFF, 0x00000000,
     0x00000000, 0x00000080, 0x00000000, 0x00000000,
@@ -501,16 +501,16 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFF1FFF, 0x00000C00, 0xFFFFFFFF, 0x80007FFF,
-    0x00FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF,
+    0x3FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF,
     0xFF800000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000F79FF, 0x000007FF, 0x00000000, 0xFF000000,
+    0xFFFF79FF, 0x00033FFF, 0x00000000, 0xFF800000,
     0xFFFFF7BB, 0x00000007, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFC, 0x000FFFFF, 0x00000000, 0x08FC0000,
     0xFFFFFC00, 0xFFFF003F, 0x0000007F, 0x1FFFFFFF,
-    0xFFFFFFF0, 0x0007FFFF, 0x00008000, 0x00000000,
-    0xFFFFFFFF, 0x000001FF, 0x00000FF7, 0x047FFFFF,
+    0xFFFFFFF0, 0x0007FFFF, 0x00008000, 0x7C00FFDF,
+    0xFFFFFFFF, 0x000001FF, 0x00000FF7, 0xC47FFFFF,
     0xFFFFFFFF, 0x3E62FFFF, 0x38000005, 0x001C07FF,
-    0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
+    0x007E7E7E, 0xFFFF7F7F, 0xF7FFFFFF, 0x00000030,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000007,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -538,48 +538,68 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x1FFFFFFF, 0xFFFFFFFF, 0x0001FFFF, 0x00000000,
-    0x7FFFFFFF, 0xFFFF0000, 0x000007FF, 0x00000000,
+    0xFFFFFFFF, 0xFFFF0000, 0xFFFF07FF, 0x003FFFFF,
     0x3FFFFFFF, 0xFFFFFFFF, 0x003EFF0F, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFF00FF, 0xFFFFFFFF, 0x0000000F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFD3F, 0x91BFFFFF, 0x003FFFFF, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0x007FFFFF, 0x003FFFFF, 0x000000FF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFD3F, 0x91BFFFFF, 0x003FFFFF, 0x007FFFFF,
+    0x7FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x003FFFFF, 0x03FFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xC0FFFFFF, 0x00000000, 0x00000000,
     0xFEEF0001, 0x000FFFFF, 0x00000000, 0x1FFFFFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x1FFFFFFF, 0x00000000, 0xFFFFFEFF, 0x0000001F,
     0xFFFFFFFF, 0x003FFFFF, 0x003FFFFF, 0x0007FFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x0003FFFF, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x000001FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFF8, 0x00FFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFF8, 0x0000FFFF, 0xFFFF0000, 0x000001FF,
-    0xFFFFFFF8, 0x0000007F, 0x00000000, 0x00000000,
-    0xFFFFFFF8, 0x0007FFFF, 0x0000001E, 0x00000000,
+    0xFFFFFFF8, 0x0000007F, 0xFFFF0000, 0x0047FFFF,
+    0xFFFFFFF8, 0x0007FFFF, 0x0400001E, 0x00000000,
+    0xFFFBFFFF, 0x00000FFF, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0x7FFFFFFF, 0x00000000,
+    0xFFF99FE0, 0x23EDFDFF, 0xE0000000, 0x00000003,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x0000FFFF, 0x000000B0, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x00007FFF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x0000FFFF, 0x00000010, 0x00000000,
     0xFFFFFFFF, 0x000007FF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x80000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0x01FFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x01FFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000007,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0x00007FFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0x01FFFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x01FFFFFF, 0x7FFFFFFF, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFF0000, 0x00003FFF,
+    0xFFFFFFFF, 0x0000FFFF, 0x0000000F, 0xE0FFFFF8,
+    0x0000FFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x0001001F, 0x00000000,
@@ -588,6 +608,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFF07FF,
+    0x03FF01FF, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF,
     0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF,
     0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF,
@@ -596,6 +620,10 @@
     0xFFFFFFFF, 0xFFFFFF3F, 0xF7FFFFFD, 0xF7FFFFFF,
     0xFFDFFFFF, 0xFFDFFFFF, 0xFFFF7FFF, 0xFFFF7FFF,
     0xFFFFFDFF, 0xFFFFFDFF, 0x00000FF7, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000001F, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFEF, 0x0AF7FE96, 0xAA96EA84, 0x5EF7F796,
     0x0FFFFBFF, 0x0FFFFBEE, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/pr_ideographic.h
+++ b/lib/unictype/pr_ideographic.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_ids_binary_operator.h
+++ b/lib/unictype/pr_ids_binary_operator.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_ids_trinary_operator.h
+++ b/lib/unictype/pr_ids_trinary_operator.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_ignorable_control.h
+++ b/lib/unictype/pr_ignorable_control.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[15];
     short level2[3 << 7];
-    /*unsigned*/ int level3[8 << 4];
+    /*unsigned*/ int level3[9 << 4];
   }
 u_property_ignorable_control =
 {
@@ -256,6 +256,7 @@
        -1,
        -1,
        -1,
+       16 +   384 * sizeof (short) / sizeof (int) +    96,
        -1,
        -1,
        -1,
@@ -265,8 +266,7 @@
        -1,
        -1,
        -1,
-       -1,
-       16 +   384 * sizeof (short) / sizeof (int) +    96,
+       16 +   384 * sizeof (short) / sizeof (int) +   112,
        -1,
        -1,
        -1,
@@ -290,7 +290,7 @@
        -1,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   112,
+       16 +   384 * sizeof (short) / sizeof (int) +   128,
        -1,
        -1,
        -1,
@@ -424,7 +424,7 @@
     0xFFFFFFDF, 0x00002000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x1000001F, 0x00000000, 0x00000000, 0x00000000,
+    0x1000003F, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x20000000, 0x00000000,
     0x00008000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -445,6 +445,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x0000000F, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x07F80000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/pr_iso_control.h
+++ b/lib/unictype/pr_iso_control.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_join_control.h
+++ b/lib/unictype/pr_join_control.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_left_of_pair.h
+++ b/lib/unictype/pr_left_of_pair.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_line_separator.h
+++ b/lib/unictype/pr_line_separator.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_logical_order_exception.h
+++ b/lib/unictype/pr_logical_order_exception.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_lowercase.h
+++ b/lib/unictype/pr_lowercase.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[14 << 4];
+    /*unsigned*/ int level3[16 << 4];
   }
 u_property_lowercase =
 {
@@ -106,6 +106,7 @@
        -1,
         3 +   256 * sizeof (short) / sizeof (int) +   128,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   144,
        -1,
        -1,
        -1,
@@ -145,13 +146,22 @@
        -1,
        -1,
        -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   144,
-       -1,
         3 +   256 * sizeof (short) / sizeof (int) +   160,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   176,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   176,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   192,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   208,
        -1,
        -1,
        -1,
@@ -245,18 +255,8 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   192,
-        3 +   256 * sizeof (short) / sizeof (int) +   208,
+        3 +   256 * sizeof (short) / sizeof (int) +   224,
+        3 +   256 * sizeof (short) / sizeof (int) +   240,
        -1,
        -1,
        -1,
@@ -289,7 +289,7 @@
     0x00010000, 0xFFFFF000, 0xAAE37FFF, 0x192FAAAA,
     0x00000000, 0xFFFF0000, 0xFFFFFFFF, 0xAAAAAAAA,
     0xAAAAA802, 0xAAAAAAAA, 0xAAAAD554, 0xAAAAAAAA,
-    0xAAAAAAAA, 0x000000AA, 0x00000000, 0xFFFFFFFE,
+    0xAAAAAAAA, 0x0000AAAA, 0x00000000, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -312,9 +312,13 @@
     0xFFFFFFFF, 0x000020BF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xAAAAAAAA, 0x00002AAA,
-    0x00AAAAAA, 0x00000000, 0x00000000, 0x00000000,
+    0x3AAAAAAA, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xAAABAAA8, 0xAAAAAAAA, 0x95FFAAAA,
-    0x000A50AA, 0x000002AA, 0x00000000, 0x07000000,
+    0xAABA50AA, 0x000002AA, 0x00000000, 0x07000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0xF7FFFFFF, 0x00000030,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00F8007F, 0x00000000, 0x00000000, 0x00000000,
@@ -327,6 +331,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFC000000, 0x000FFFFF, 0xFFDFC000, 0x000000FF,
     0x0FFFFFFC, 0xEBC00000, 0x0000FFEF, 0xFFFFFC00,
     0xC000000F, 0x00FFFFFF, 0xFFFC0000, 0x00000FFF,
--- a/lib/unictype/pr_math.h
+++ b/lib/unictype/pr_math.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_non_break.h
+++ b/lib/unictype/pr_non_break.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_not_a_character.h
+++ b/lib/unictype/pr_not_a_character.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_numeric.h
+++ b/lib/unictype/pr_numeric.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[3];
     short level2[3 << 7];
-    /*unsigned*/ int level3[36 << 4];
+    /*unsigned*/ int level3[41 << 4];
   }
 u_property_numeric =
 {
@@ -159,16 +159,51 @@
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   448,
         4 +   384 * sizeof (short) / sizeof (int) +   464,
+        4 +   384 * sizeof (short) / sizeof (int) +   480,
+        4 +   384 * sizeof (short) / sizeof (int) +   496,
+        4 +   384 * sizeof (short) / sizeof (int) +   512,
+        4 +   384 * sizeof (short) / sizeof (int) +   528,
+       -1,
+       -1,
+       -1,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   480,
+        4 +   384 * sizeof (short) / sizeof (int) +   544,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
        -1,
        -1,
        -1,
        -1,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   496,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   560,
        -1,
        -1,
        -1,
@@ -220,24 +255,9 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   576,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   592,
        -1,
        -1,
        -1,
@@ -246,31 +266,11 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   608,
        -1,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   512,
-       -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   528,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   544,
+        4 +   384 * sizeof (short) / sizeof (int) +   624,
        -1,
        -1,
        -1,
@@ -402,7 +402,7 @@
        -1,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   560,
+        4 +   384 * sizeof (short) / sizeof (int) +   640,
        -1,
        -1,
        -1
@@ -427,7 +427,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x7F00FFC0,
     0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
     0x00000000, 0x00000000, 0x00000000, 0x003FFFC0,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
     0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x00000000, 0x000FFFFF, 0x00000000, 0x00000000,
@@ -487,7 +487,7 @@
     0x00000000, 0x003F0000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x000003FF, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
+    0x00000000, 0x00000000, 0x03FF0000, 0x03FF0000,
     0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -503,23 +503,23 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFF80, 0x000FFFFF, 0xFFFFFFFF, 0x01FFFFFF,
-    0x00000400, 0x00000000, 0x00000000, 0x00000000,
+    0x00000C00, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x0FFFFFFE,
     0x00000000, 0x0000000F, 0x00000402, 0x00000000,
     0x00000000, 0x00000000, 0x003E0000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x000003FF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFF000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFF000000, 0xFE000000,
+    0x00000000, 0x0000FF80, 0x00000000, 0x00000000,
     0x0FC00000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x000000FF, 0x60000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xE0000000, 0x00000000, 0x00000000, 0x0000F800,
     0x00000000, 0x00000000, 0xFF000000, 0xFF000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x0000FE00, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x7FFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -527,14 +527,30 @@
     0x00000000, 0x00000000, 0xFFFC0000, 0x0000FFFF,
     0x00000000, 0x00000000, 0x00000000, 0x03FF0000,
     0x00000000, 0xFFC00000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x03FF0000, 0x001FFFFE,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x03FF0000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x00000000, 0x00000000, 0x000003FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000007,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x0007FFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x000003FF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFBFF0000, 0x00000003,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -545,8 +561,12 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFC000, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x0000FF80, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x000007FF, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00001FFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00010000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/pr_other_alphabetic.h
+++ b/lib/unictype/pr_other_alphabetic.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[23 << 4];
+    /*unsigned*/ int level3[29 << 4];
   }
 u_property_other_alphabetic =
 {
@@ -150,77 +150,17 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   304,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   304,
-       -1,
        -1,
         3 +   256 * sizeof (short) / sizeof (int) +   320,
        -1,
        -1,
         3 +   256 * sizeof (short) / sizeof (int) +   336,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
         3 +   256 * sizeof (short) / sizeof (int) +   352,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   368,
+        3 +   256 * sizeof (short) / sizeof (int) +   384,
        -1,
        -1,
        -1,
@@ -262,6 +202,32 @@
        -1,
        -1,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   400,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   416,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
        -1,
        -1,
        -1,
@@ -276,6 +242,40 @@
        -1,
        -1,
        -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   432,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   448,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
        -1
   },
   {
@@ -292,16 +292,16 @@
     0x00020000, 0xFFFF0000, 0x00000000, 0x00000000,
     0x00000000, 0x0001FFC0, 0x00000000, 0x00000000,
     0xF8C00000, 0x00001EEF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x7FFF03F0,
+    0x00000000, 0x00000000, 0x00000000, 0xFFFF03F0,
     0x0000000F, 0xCC000000, 0x00E0DFFF, 0x0000000C,
     0x0000000E, 0xC0000000, 0x0080199F, 0x0000000C,
     0x0000000E, 0xC0000000, 0x00021987, 0x00230000,
     0x0000000E, 0xC0000000, 0x00001BBF, 0x0000000C,
     0x0000000E, 0xC0000000, 0x00C0199F, 0x0000000C,
     0x00000004, 0xC0000000, 0x00801DC7, 0x00000000,
+    0x0000000F, 0xC0000000, 0x00601DDF, 0x0000000C,
     0x0000000E, 0xC0000000, 0x00601DDF, 0x0000000C,
-    0x0000000C, 0xC0000000, 0x00601DDF, 0x0000000C,
-    0x0000000C, 0xC0000000, 0x00801DDF, 0x0000000C,
+    0x0000000E, 0xC0000000, 0x00801DDF, 0x0000000C,
     0x0000000C, 0x00000000, 0xFF5F8000, 0x000C0000,
     0x00000000, 0x07F20000, 0x00002000, 0x00000000,
     0x00000000, 0x1BF20000, 0x00002000, 0x00000000,
@@ -330,7 +330,7 @@
     0x00000000, 0x003FFFF0, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x000C0000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x001FFF80,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFC00000, 0xFFFFFFFF, 0x000003FF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -355,6 +355,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x40000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x07C00000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x0000F06E, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -363,13 +367,33 @@
     0x00000004, 0x01FF0000, 0x00000000, 0x00000000,
     0x00000007, 0x0007FF80, 0x00000000, 0x00000000,
     0x00000007, 0xFFF80000, 0x00000000, 0x00000000,
+    0x00000000, 0x009FF000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x80000000, 0x000001FF,
+    0x0000000E, 0xC0000000, 0x0080199F, 0x0000000C,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0x00000003, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x7F3F8000, 0x00000000, 0x00000000,
+    0x00000000, 0x7FFF0000, 0x00000001, 0x00000000,
     0x00000000, 0x003FF800, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x007F0000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFE0000, 0x7FFFFFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x40000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0xFFFF03FF, 0xFFFF03FF,
+    0x000003FF, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/pr_other_default_ignorable_code_point.h
+++ b/lib/unictype/pr_other_default_ignorable_code_point.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_other_grapheme_extend.h
+++ b/lib/unictype/pr_other_grapheme_extend.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[7 << 4];
+    /*unsigned*/ int level3[9 << 4];
   }
 u_property_other_grapheme_extend =
 {
@@ -158,6 +158,8 @@
        -1,
        -1,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +    96,
+        3 +   256 * sizeof (short) / sizeof (int) +   112,
        -1,
        -1,
        -1,
@@ -251,9 +253,7 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +    96,
+        3 +   256 * sizeof (short) / sizeof (int) +   128,
        -1,
        -1,
        -1,
@@ -305,6 +305,14 @@
     0xC0000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x40000000, 0x00800000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x20010000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00008000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x0007C020,
     0x00000000, 0x00000000, 0x00000000, 0x00000000
   }
--- a/lib/unictype/pr_other_id_continue.h
+++ b/lib/unictype/pr_other_id_continue.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_other_id_start.h
+++ b/lib/unictype/pr_other_id_start.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_other_lowercase.h
+++ b/lib/unictype/pr_other_lowercase.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[1];
     short level2[1 << 7];
-    /*unsigned*/ int level3[7 << 4];
+    /*unsigned*/ int level3[8 << 4];
   }
 u_property_other_lowercase =
 {
@@ -103,7 +103,7 @@
        -1,
         2 +   128 * sizeof (short) / sizeof (int) +    96,
        -1,
-       -1,
+        2 +   128 * sizeof (short) / sizeof (int) +   112,
        -1,
        -1,
        -1,
@@ -173,8 +173,12 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x30000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00010000,
-    0x00000000, 0x00000000, 0x00000000, 0x03000000
+    0x00000000, 0x00000000, 0x00000000, 0x03000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xF0000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/pr_other_math.h
+++ b/lib/unictype/pr_other_math.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_other_uppercase.h
+++ b/lib/unictype/pr_other_uppercase.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -9,14 +9,17 @@
 struct
   {
     int header[1];
-    int level1[1];
-    short level2[1 << 7];
-    /*unsigned*/ int level3[2 << 4];
+    int level1[2];
+    short level2[2 << 7];
+    /*unsigned*/ int level3[3 << 4];
   }
 u_property_other_uppercase =
 {
-  { 1 },
-  {     2 * sizeof (int) / sizeof (short) +     0 },
+  { 2 },
+  {
+        3 * sizeof (int) / sizeof (short) +     0,
+        3 * sizeof (int) / sizeof (short) +   128
+  },
   {
        -1,
        -1,
@@ -34,9 +37,9 @@
        -1,
        -1,
        -1,
-        2 +   128 * sizeof (short) / sizeof (int) +     0,
+        3 +   256 * sizeof (short) / sizeof (int) +     0,
        -1,
-        2 +   128 * sizeof (short) / sizeof (int) +    16,
+        3 +   256 * sizeof (short) / sizeof (int) +    16,
        -1,
        -1,
        -1,
@@ -145,6 +148,134 @@
        -1,
        -1,
        -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +    32,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
        -1
   },
   {
@@ -155,6 +286,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFC00000, 0x0000FFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0xFFFF03FF, 0xFFFF03FF,
+    0x000003FF, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/pr_paired_punctuation.h
+++ b/lib/unictype/pr_paired_punctuation.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_paragraph_separator.h
+++ b/lib/unictype/pr_paragraph_separator.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_pattern_syntax.h
+++ b/lib/unictype/pr_pattern_syntax.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_pattern_white_space.h
+++ b/lib/unictype/pr_pattern_white_space.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_private_use.h
+++ b/lib/unictype/pr_private_use.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_punctuation.h
+++ b/lib/unictype/pr_punctuation.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[34 << 4];
+    /*unsigned*/ int level3[40 << 4];
   }
 u_property_punctuation =
 {
@@ -151,13 +151,23 @@
         3 +   256 * sizeof (short) / sizeof (int) +   432,
         3 +   256 * sizeof (short) / sizeof (int) +   448,
         3 +   256 * sizeof (short) / sizeof (int) +   464,
+        3 +   256 * sizeof (short) / sizeof (int) +   480,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   496,
+        3 +   256 * sizeof (short) / sizeof (int) +   512,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   480,
-        3 +   256 * sizeof (short) / sizeof (int) +   496,
+        3 +   256 * sizeof (short) / sizeof (int) +   528,
+        3 +   256 * sizeof (short) / sizeof (int) +   544,
+        3 +   256 * sizeof (short) / sizeof (int) +   560,
+        3 +   256 * sizeof (short) / sizeof (int) +   576,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   512,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   592,
        -1,
        -1,
        -1,
@@ -167,7 +177,32 @@
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   528,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   608,
        -1,
        -1,
        -1,
@@ -208,42 +243,7 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   624,
        -1,
        -1,
        -1,
@@ -359,7 +359,7 @@
     0x00000000, 0x00000000, 0x00000000, 0xDE000000,
     0x00000000, 0x00000000, 0x00000000, 0x00010000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0x0FFF7FFF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFF7FFF, 0x00000007, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -399,21 +399,45 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x80000000, 0x00000000, 0x00010000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00008000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00800000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x80000000, 0x80000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x01FF0000, 0x80000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x007F0000,
     0x00000000, 0xFE000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x1E000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00003F80, 0x00000000,
     0x00000000, 0xD8000000, 0x00000003, 0x00000000,
-    0x00000000, 0x00000000, 0x0000000F, 0x00000000,
-    0x00000000, 0x00000000, 0x000001E0, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x000F0000,
+    0x00000000, 0x00000000, 0x0000000F, 0x00300000,
+    0x00000000, 0x00000000, 0x000021E0, 0x00000000,
+    0x00000000, 0x3F000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000040, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x000003FE, 0x00000000,
+    0x00000000, 0x00000000, 0x0000000E, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x001F0000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x0000C000,
+    0x00000000, 0x00000000, 0x00000000, 0x00200000,
+    0x00000000, 0x0F800000, 0x00000010, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x80000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/pr_quotation_mark.h
+++ b/lib/unictype/pr_quotation_mark.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[1];
     short level2[1 << 7];
-    /*unsigned*/ int level3[4 << 4];
+    /*unsigned*/ int level3[5 << 4];
   }
 u_property_quotation_mark =
 {
@@ -41,8 +41,8 @@
        -1,
        -1,
        -1,
-       -1,
         2 +   128 * sizeof (short) / sizeof (int) +    32,
+        2 +   128 * sizeof (short) / sizeof (int) +    48,
        -1,
        -1,
        -1,
@@ -145,7 +145,7 @@
        -1,
        -1,
        -1,
-        2 +   128 * sizeof (short) / sizeof (int) +    48
+        2 +   128 * sizeof (short) / sizeof (int) +    64
   },
   {
     0x00000000, 0x00000084, 0x00000000, 0x00000000,
@@ -156,6 +156,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000004, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xE000F000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/pr_radical.h
+++ b/lib/unictype/pr_radical.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_sentence_terminal.h
+++ b/lib/unictype/pr_sentence_terminal.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[20 << 4];
+    /*unsigned*/ int level3[25 << 4];
   }
 u_property_sentence_terminal =
 {
@@ -158,67 +158,9 @@
        -1,
        -1,
         3 +   256 * sizeof (short) / sizeof (int) +   304,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   320,
+        3 +   256 * sizeof (short) / sizeof (int) +   336,
+        3 +   256 * sizeof (short) / sizeof (int) +   352,
        -1,
        -1,
        -1,
@@ -260,6 +202,64 @@
        -1,
        -1,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   368,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   384,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
        -1,
        -1,
        -1,
@@ -285,7 +285,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x50000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000200, 0x00000000, 0x00000000, 0x00000000,
     0x80000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00100000, 0x00000000,
@@ -323,7 +323,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00004000, 0x00000000, 0x00000000,
+    0x00000000, 0x10004000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -358,6 +358,26 @@
     0x00000000, 0x00000000, 0x00000180, 0x00000000,
     0x00000000, 0xC0000000, 0x00000003, 0x00000000,
     0x00000000, 0x00000000, 0x0000000E, 0x00000000,
-    0x00000000, 0x00000000, 0x00000060, 0x00000000
+    0x00000000, 0x00000000, 0x00002060, 0x00000000,
+    0x00000000, 0x1B000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x0000020C, 0x00000000,
+    0x00000000, 0x00000000, 0x00000006, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x0000C000,
+    0x00000000, 0x00000000, 0x00000000, 0x00200000,
+    0x00000000, 0x01800000, 0x00000010, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x80000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/pr_soft_dotted.h
+++ b/lib/unictype/pr_soft_dotted.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_space.h
+++ b/lib/unictype/pr_space.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_terminal_punctuation.h
+++ b/lib/unictype/pr_terminal_punctuation.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[25 << 4];
+    /*unsigned*/ int level3[30 << 4];
   }
 u_property_terminal_punctuation =
 {
@@ -158,6 +158,20 @@
        -1,
        -1,
         3 +   256 * sizeof (short) / sizeof (int) +   368,
+        3 +   256 * sizeof (short) / sizeof (int) +   384,
+        3 +   256 * sizeof (short) / sizeof (int) +   400,
+        3 +   256 * sizeof (short) / sizeof (int) +   416,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   432,
+       -1,
+       -1,
+       -1,
+       -1,
        -1,
        -1,
        -1,
@@ -167,7 +181,28 @@
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   384,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   448,
        -1,
        -1,
        -1,
@@ -208,42 +243,7 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   464,
        -1,
        -1,
        -1,
@@ -313,7 +313,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00006000,
     0x00000000, 0x00000000, 0x00000000, 0x00003800,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00600000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x04700000, 0x00000000,
     0x0000033C, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -331,7 +331,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00004000, 0x00000000, 0x00000000,
+    0x00000000, 0x10004000, 0x00000002, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -367,17 +367,37 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x80000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00C00000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x003F0000,
     0x00000000, 0xFC000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x1E000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00003F80, 0x00000000,
     0x00000000, 0xC0000000, 0x00000003, 0x00000000,
     0x00000000, 0x00000000, 0x0000000E, 0x00000000,
-    0x00000000, 0x00000000, 0x00000060, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x000F0000,
+    0x00000000, 0x00000000, 0x00002060, 0x00000000,
+    0x00000000, 0x1F000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x0000023C, 0x00000000,
+    0x00000000, 0x00000000, 0x00000006, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x001F0000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x0000C000,
+    0x00000000, 0x00000000, 0x00000000, 0x00200000,
+    0x00000000, 0x03800000, 0x00000010, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x80000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/pr_titlecase.h
+++ b/lib/unictype/pr_titlecase.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_unassigned_code_value.h
+++ b/lib/unictype/pr_unassigned_code_value.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[15];
     short level2[5 << 7];
-    /*unsigned*/ int level3[63 << 4];
+    /*unsigned*/ int level3[70 << 4];
   }
 u_property_unassigned_code_value =
 {
@@ -53,13 +53,13 @@
        16 +   640 * sizeof (short) / sizeof (int) +   224,
        16 +   640 * sizeof (short) / sizeof (int) +   240,
        16 +   640 * sizeof (short) / sizeof (int) +   256,
+       -1,
+       -1,
        16 +   640 * sizeof (short) / sizeof (int) +   272,
-       -1,
        16 +   640 * sizeof (short) / sizeof (int) +   288,
        16 +   640 * sizeof (short) / sizeof (int) +   304,
        16 +   640 * sizeof (short) / sizeof (int) +   320,
        16 +   640 * sizeof (short) / sizeof (int) +   336,
-       16 +   640 * sizeof (short) / sizeof (int) +   352,
        -1,
        -1,
        -1,
@@ -72,7 +72,7 @@
        -1,
        -1,
        -1,
-       16 +   640 * sizeof (short) / sizeof (int) +   368,
+       16 +   640 * sizeof (short) / sizeof (int) +   352,
        -1,
        -1,
        -1,
@@ -113,13 +113,13 @@
        -1,
        -1,
        -1,
-       16 +   640 * sizeof (short) / sizeof (int) +   384,
+       16 +   640 * sizeof (short) / sizeof (int) +   368,
        -1,
        -1,
+       16 +   640 * sizeof (short) / sizeof (int) +   384,
        16 +   640 * sizeof (short) / sizeof (int) +   400,
        16 +   640 * sizeof (short) / sizeof (int) +   416,
        16 +   640 * sizeof (short) / sizeof (int) +   432,
-       16 +   640 * sizeof (short) / sizeof (int) +   448,
        -1,
        -1,
        -1,
@@ -141,7 +141,7 @@
        -1,
        -1,
        -1,
-       16 +   640 * sizeof (short) / sizeof (int) +   464,
+       16 +   640 * sizeof (short) / sizeof (int) +   448,
        -1,
        -1,
        -1,
@@ -159,6 +159,7 @@
        -1,
        -1,
        -1,
+       16 +   640 * sizeof (short) / sizeof (int) +   464,
        16 +   640 * sizeof (short) / sizeof (int) +   480,
        16 +   640 * sizeof (short) / sizeof (int) +   496,
        16 +   640 * sizeof (short) / sizeof (int) +   512,
@@ -171,125 +172,124 @@
        16 +   640 * sizeof (short) / sizeof (int) +   624,
        16 +   640 * sizeof (short) / sizeof (int) +   640,
        16 +   640 * sizeof (short) / sizeof (int) +   656,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
        16 +   640 * sizeof (short) / sizeof (int) +   672,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       -1,
        16 +   640 * sizeof (short) / sizeof (int) +   688,
        16 +   640 * sizeof (short) / sizeof (int) +   704,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
+       16 +   640 * sizeof (short) / sizeof (int) +   720,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       -1,
+       16 +   640 * sizeof (short) / sizeof (int) +   752,
+       16 +   640 * sizeof (short) / sizeof (int) +   768,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
        -1,
        -1,
-       16 +   640 * sizeof (short) / sizeof (int) +   720,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
+       16 +   640 * sizeof (short) / sizeof (int) +   784,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
        -1,
+       16 +   640 * sizeof (short) / sizeof (int) +   800,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   816,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
        16 +   640 * sizeof (short) / sizeof (int) +   736,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   752,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   768,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   784,
-       16 +   640 * sizeof (short) / sizeof (int) +   800,
-       16 +   640 * sizeof (short) / sizeof (int) +   816,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
        16 +   640 * sizeof (short) / sizeof (int) +   832,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
        16 +   640 * sizeof (short) / sizeof (int) +   848,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
        16 +   640 * sizeof (short) / sizeof (int) +   864,
        16 +   640 * sizeof (short) / sizeof (int) +   880,
        16 +   640 * sizeof (short) / sizeof (int) +   896,
        16 +   640 * sizeof (short) / sizeof (int) +   912,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
        16 +   640 * sizeof (short) / sizeof (int) +   928,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   944,
+       16 +   640 * sizeof (short) / sizeof (int) +   960,
+       16 +   640 * sizeof (short) / sizeof (int) +   976,
+       16 +   640 * sizeof (short) / sizeof (int) +   992,
+       16 +   640 * sizeof (short) / sizeof (int) +  1008,
+       16 +   640 * sizeof (short) / sizeof (int) +  1024,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +  1040,
        -1,
        -1,
        -1,
@@ -373,7 +373,7 @@
        -1,
        -1,
        -1,
-       16 +   640 * sizeof (short) / sizeof (int) +   944,
+       16 +   640 * sizeof (short) / sizeof (int) +  1056,
        -1,
        -1,
        -1,
@@ -381,325 +381,325 @@
        -1,
        -1,
        -1,
-       16 +   640 * sizeof (short) / sizeof (int) +   960,
-       16 +   640 * sizeof (short) / sizeof (int) +   976,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
+       16 +   640 * sizeof (short) / sizeof (int) +  1072,
+       16 +   640 * sizeof (short) / sizeof (int) +  1088,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
        -1,
-       16 +   640 * sizeof (short) / sizeof (int) +   976,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   928,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   928,
-       16 +   640 * sizeof (short) / sizeof (int) +   992,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   928
+       16 +   640 * sizeof (short) / sizeof (int) +  1088,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +  1040,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +  1040,
+       16 +   640 * sizeof (short) / sizeof (int) +  1104,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +   736,
+       16 +   640 * sizeof (short) / sizeof (int) +  1040
   },
   {
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x83000000,
+    0x00000000, 0x00000000, 0x00000000, 0x03000000,
     0x0000280F, 0x00000004, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x0001FF00, 0x01800000, 0x00000001,
-    0x00017900, 0x00000000, 0x0000FF00, 0xFFE0F800,
-    0x20000020, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00010000, 0x01800000, 0x00000001,
+    0x00011900, 0x00000000, 0x0000FF00, 0xFFE0F800,
+    0x20000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00004000, 0x00000000, 0x00001800, 0x00000000,
     0x00000000, 0xFFFC0000, 0x00000000, 0xF8000000,
     0x00000000, 0x8000C000, 0xB0000000, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFE002, 0xFFFFFFFF, 0x8000000F,
-    0x00000000, 0x00000000, 0x00000000, 0x01000000,
-    0x00066011, 0x0C3A0200, 0x4F7F8660, 0xF0000030,
+    0xFFFFFFFF, 0xFFF80000, 0xFFFFFFFF, 0x0000000F,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00066010, 0x0C3A0200, 0x4F7F8660, 0xF0000030,
     0x00067811, 0x2C920200, 0xA1FDC678, 0xFFC0003F,
     0x00044011, 0x0C120200, 0xFFFEC440, 0xFFFC0030,
     0x00066011, 0x0C120200, 0x4F3FC660, 0xFF000030,
     0x29C23813, 0x3C0038E7, 0xFF7EC238, 0xF800003F,
-    0x00022011, 0x1C100200, 0xFC9FC220, 0x00FF0030,
-    0x00022013, 0x0C100200, 0xBF9FC220, 0xFFF90030,
-    0x00022013, 0x18000000, 0xFF7F8220, 0x01C00030,
-    0x03800013, 0xD0040000, 0x00A07B80, 0xFFE3FFFF,
+    0x00022010, 0x1C000200, 0xFC9FC220, 0x00FF0030,
+    0x00022011, 0x0C100200, 0xBF9FC220, 0xFFF90030,
+    0x00022011, 0x18000000, 0xFF7F8220, 0x01C00030,
+    0x03800013, 0xD0040000, 0x00A07B80, 0xFFE3003F,
     0x00000001, 0x78000000, 0xF0000000, 0xFFFFFFFF,
     0x010FDA69, 0xC4001351, 0x0C00C0A0, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000100, 0x0001E000,
@@ -713,50 +713,46 @@
     0x00C20000, 0x00000000, 0x18000000, 0xE0000000,
     0xFC000000, 0x00000000, 0x00000000, 0xFFE00000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xE0000000, 0x00000000, 0x00000000, 0xFFFE0000,
+    0xE0000000, 0x00000000, 0x00000000, 0xFE000000,
     0xFFE02000, 0xFF800000, 0xFFF00000, 0xFFF22000,
     0x00000000, 0x00000000, 0xC0000000, 0xFC00FC00,
     0xFC008000, 0x00000000, 0x00000000, 0xFF000000,
     0x00000000, 0x0000F800, 0x00000000, 0xFFC00000,
-    0xE0000000, 0xF000F000, 0x0000000E, 0xFFE0C000,
+    0x80000000, 0xF000F000, 0x0000000E, 0xFFE0C000,
     0x00000000, 0x0000F000, 0x3800FC00, 0x00000000,
     0x30000000, 0x00000000, 0x80000000, 0x60000000,
-    0xFC00FC00, 0xFFFFC000, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFC00FC00, 0x8000C000, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x0000F000, 0xE0000000,
     0x00000000, 0x00000000, 0x00000000, 0x0FF00000,
     0x00000000, 0x07000000, 0x00001C00, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FF00, 0xFF800000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FF00, 0xFC800000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x0FFFFF80,
+    0x00000000, 0x00000000, 0x00000000, 0x0FC00000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xC0C00000, 0x00000000, 0x5500C0C0, 0xC0000000,
     0x00000000, 0x00200000, 0x10300020, 0x80230000,
     0x00000000, 0x00000000, 0x00000000, 0x000C0020,
-    0xE0008000, 0xF8000000, 0x0000FFFF, 0xFFFE0000,
+    0xE0008000, 0xC0000000, 0x0000FFFF, 0xFFFE0000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x0000FC00, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0xFFF00000,
+    0x00000000, 0x00000000, 0x00000000, 0xF8000000,
     0x00000000, 0xFFFFFF80, 0xFFFFF800, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000001, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFC00E000, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00300000,
+    0x00C00000, 0x1C000000, 0xFFFC0200, 0xFFFFFFFF,
     0x00000000, 0x00008000, 0x80000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x01F00000,
     0x00000000, 0x0000DF40, 0x00000000, 0x7FFE7F00,
     0xFF800000, 0x80808080, 0x80808080, 0x00000000,
-    0x00000000, 0xF0000000, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0xFFFFFFF8, 0xFFFFFFFF,
     0x04000000, 0x00000000, 0x00000000, 0xFFF00000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFC00000, 0xF000FFFF,
@@ -781,16 +777,16 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFF000, 0x00000000, 0x00000000,
-    0x7F000000, 0x00000000, 0x00000000, 0xFF000000,
+    0x40000000, 0x00000000, 0x00000000, 0xFF000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFF08000, 0xFFFFF800, 0xFFFFFFFF, 0x00FFFFFF,
+    0x00008000, 0xFFFCC000, 0xFFFFFFFF, 0x007FFFFF,
     0x00000000, 0xFC00F000, 0x00000000, 0xFF000000,
     0x00000000, 0x00000000, 0xFC003FE0, 0xF0000000,
     0x00000000, 0x00000000, 0x7FF00000, 0xE0000000,
-    0x00000000, 0x00000000, 0x3C004000, 0xFFFFFFFF,
-    0x00000000, 0xFF800000, 0x0C00C000, 0xF0000000,
+    0x00000000, 0x00000000, 0x3C004000, 0x80000000,
+    0x00000000, 0xFF800000, 0x0C00C000, 0x00000000,
     0x00000000, 0x00000000, 0x07FFFFF8, 0xFF800000,
-    0xFF818181, 0xFFFF8080, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFF818181, 0x00008080, 0x00000000, 0xFFFFFFCF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0xFC00C000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -804,34 +800,34 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x0000FFFF, 0x00000000,
     0x00030000, 0x00000000, 0x0000FF00, 0xC0000000,
-    0xFC000000, 0x0000FF80, 0x00080000, 0x0020F080,
+    0xFC000000, 0x0000C000, 0x00080000, 0x0020F080,
     0x00000000, 0x00000000, 0x00000000, 0x60000000,
     0x00000001, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x80000000, 0xE3030303, 0x01FF8080,
     0x00001000, 0x48000080, 0xC000C000, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0xF8000000,
     0x00000078, 0x00700000, 0x00000000, 0x00000000,
-    0xF000F800, 0xFFFFFFFF, 0x0000FFFF, 0xC0000000,
+    0xF000E000, 0xFFFFFFFE, 0x0000FFFF, 0xC0000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xE0000000, 0x00000000, 0xFFFE0000, 0xFFFFFFFF,
-    0x80000000, 0x0000FFF0, 0xFFFFF800, 0xFFFFFFFF,
+    0xE0000000, 0x00000000, 0xFFFE0000, 0xF0000000,
+    0x00000000, 0x0000FFF0, 0x0000F800, 0xF8000000,
     0x40000000, 0x00000000, 0xFFC000F0, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xC0000000, 0xFFFFFC00, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x0000FF00, 0x00000000, 0xFFFF7FF0,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFF800000, 0xFFC00000, 0xFFFFFF00,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000002C0, 0x6E400000, 0x00400000, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x000002C0, 0x6E400000, 0x00400000, 0x00000000,
+    0x80000000, 0xFFFF007F, 0xFFFFFFFF, 0xFFFFFFFF,
     0x70000000, 0x7C000000, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x3F000000, 0xFFFFFFFF, 0xFFFFFFFF,
     0x01100F90, 0x78F00000, 0xFE00FF00, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0xFFFFFFFF, 0x00000000, 0xFF800780,
     0x00000000, 0x01C00000, 0x00C00000, 0x00F80000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xE1FC0000, 0xFFFF01FF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0xFFFFFE00, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -840,19 +836,39 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00000000, 0x00000000, 0x0003C000, 0xFFFF0000,
+    0x00000000, 0x00000000, 0x0003C000, 0x7FFF0000,
     0x00000000, 0x00000000, 0x0000FFFC, 0xFC00FE00,
-    0x00000000, 0x00200000, 0xFFFFFFF0, 0xFFFFFFFF,
-    0x00000000, 0x00000000, 0xFC00FE00, 0xFFFFFFFF,
+    0x00000000, 0x00200000, 0x0000FFF0, 0xFF800000,
+    0x00000000, 0x00000000, 0xF800DE00, 0xFFE00001,
+    0x00040000, 0xC0000000, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0x0000FFFF, 0x00000000, 0xFC00F800,
+    0x00066011, 0x0C120200, 0x1F7FC660, 0xFFE0E030,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0xFC00FF00, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00C00000, 0xFFFFFC00, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0xFC00FFE0, 0xFFFFFFFF,
     0x00000000, 0xFF000000, 0xFFFFFC00, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0x00000000, 0x00000000, 0x7FF80000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0xFE000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0xFFFF8000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00000000, 0x00000000, 0x00000000, 0xFFF0FFF8,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFE000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0xFFE08000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -860,10 +876,10 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00000000, 0xFE000000, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0xFE000000, 0x80000000, 0xFFFF3C00,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, 0xFFC0C000,
+    0x00000000, 0x00000000, 0x0400FFC0, 0x1F000004,
+    0xFFFF0000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x0000FFE0, 0x80000000,
@@ -872,6 +888,10 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0xE000F800,
+    0x0C00FE00, 0xFFFFFFF0, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xFFC00000,
     0x00000000, 0x00000180, 0x00000000, 0x00000000,
@@ -888,25 +908,33 @@
     0x00000000, 0x000000C0, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00003000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFF800060, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000010, 0xF5080169, 0x5569157B, 0xA1080869,
     0xF0000400, 0xF0000411, 0xFFFFFFFF, 0xFFFCFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x0000F000, 0x00000000, 0x00000000,
-    0xFFF00000, 0x80018000, 0x00010001, 0xFFFFFFFF,
-    0x0000F800, 0x00008000, 0x00000000, 0x0000F000,
+    0xFFF00000, 0x00018000, 0x00010001, 0xFFC00000,
+    0x0000E000, 0x00008000, 0x00000000, 0x0000F000,
     0xF8000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F,
     0x0000FFF8, 0xF8000000, 0xFFFCFE00, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00000000, 0x0040FFFE, 0x00000000, 0xE0000000,
-    0xFFF00000, 0x00000000, 0xFFFFF820, 0xFFFE0000,
-    0x00000000, 0x80000000, 0x00000002, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0xE1000000,
-    0x00000000, 0xC0000000, 0x0000FFF0, 0xFFFFFF00,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF,
-    0x00000000, 0x00000000, 0xFFFF001E, 0xFFFFFFFF,
-    0x00000000, 0x00000000, 0xFFFFFFC0, 0xFFFFFFFF,
+    0x00000000, 0x0000E000, 0x00000000, 0xC0000000,
+    0x00000000, 0x00000000, 0x000F8000, 0xFF000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x80000000,
+    0x00000000, 0x00000000, 0x0000F800, 0x04000000,
+    0x00000000, 0x00000010, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000018, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFF0000, 0xFFF0E000,
     0x00000000, 0x00000000, 0x00000000, 0xFFF00000,
+    0x00000000, 0x00000000, 0xFFE00000, 0xFFFFFFFF,
+    0x0000F000, 0x00000000, 0xFC00FF00, 0x00000000,
+    0x0000FF00, 0xFFFFC000, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
--- a/lib/unictype/pr_unified_ideograph.h
+++ b/lib/unictype/pr_unified_ideograph.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_uppercase.h
+++ b/lib/unictype/pr_uppercase.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[2];
     short level2[2 << 7];
-    /*unsigned*/ int level3[13 << 4];
+    /*unsigned*/ int level3[15 << 4];
   }
 u_property_uppercase =
 {
@@ -161,6 +161,7 @@
        -1,
        -1,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   176,
        -1,
        -1,
        -1,
@@ -254,9 +255,8 @@
        -1,
        -1,
        -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   176,
         3 +   256 * sizeof (short) / sizeof (int) +   192,
+        3 +   256 * sizeof (short) / sizeof (int) +   208,
        -1,
        -1,
        -1,
@@ -269,7 +269,7 @@
        -1,
        -1,
        -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   224,
        -1,
        -1,
        -1,
@@ -285,11 +285,11 @@
     0xB1DBCED6, 0x11AED2D5, 0x4AAAA490, 0x55D25555,
     0x55555555, 0x6C055555, 0x0000557A, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00450000,
+    0x00000000, 0x00000000, 0x00000000, 0x80450000,
     0xFFFED740, 0x00000FFB, 0x551C8000, 0xE6905555,
     0xFFFFFFFF, 0x0000FFFF, 0x00000000, 0x55555555,
     0x55555401, 0x55555555, 0x55552AAB, 0x55555555,
-    0x55555555, 0xFFFE0055, 0x007FFFFF, 0x00000000,
+    0x55555555, 0xFFFE5555, 0x007FFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFFFFF, 0x000020BF, 0x00000000,
@@ -312,9 +312,9 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x55555555, 0x00001555,
-    0x00555555, 0x00000000, 0x00000000, 0x00000000,
+    0x05555555, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x55545554, 0x55555555, 0x6A005555,
-    0x00052855, 0x00000555, 0x00000000, 0x00000000,
+    0x55452855, 0x00033D55, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x07FFFFFE, 0x00000000, 0x00000000,
@@ -323,6 +323,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x03FFFFFF, 0xFFF00000, 0x00003FFF, 0xFFFFFF00,
     0xD0000003, 0x003FDE64, 0xFFFF0000, 0x000003FF,
     0x1FDFE7B0, 0x7B000000, 0x0001FC5F, 0xFFFFF000,
@@ -330,6 +334,10 @@
     0xFFFFFF00, 0xF0000003, 0x003FFFFF, 0xFFFF0000,
     0x000003FF, 0xFFFFFF00, 0x00000001, 0x07FFFFFC,
     0xF0000000, 0x001FFFFF, 0xFFC00000, 0x00007FFF,
-    0xFFFF0000, 0x000001FF, 0x00000400, 0x00000000
+    0xFFFF0000, 0x000001FF, 0x00000400, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0xFFFF03FF, 0xFFFF03FF,
+    0x000003FF, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- a/lib/unictype/pr_variation_selector.h
+++ b/lib/unictype/pr_variation_selector.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_white_space.h
+++ b/lib/unictype/pr_white_space.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/pr_xid_continue.h
+++ b/lib/unictype/pr_xid_continue.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[15];
     short level2[4 << 7];
-    /*unsigned*/ int level3[54 << 4];
+    /*unsigned*/ int level3[61 << 4];
   }
 u_property_xid_continue =
 {
@@ -165,22 +165,22 @@
        16 +   512 * sizeof (short) / sizeof (int) +   496,
        16 +   512 * sizeof (short) / sizeof (int) +   512,
        16 +   512 * sizeof (short) / sizeof (int) +   528,
-       -1,
        16 +   512 * sizeof (short) / sizeof (int) +   544,
        16 +   512 * sizeof (short) / sizeof (int) +   560,
        16 +   512 * sizeof (short) / sizeof (int) +   576,
-       -1,
        16 +   512 * sizeof (short) / sizeof (int) +   592,
        -1,
-       -1,
        16 +   512 * sizeof (short) / sizeof (int) +   608,
-       -1,
-       -1,
+       16 +   512 * sizeof (short) / sizeof (int) +   624,
+       16 +   512 * sizeof (short) / sizeof (int) +   640,
+       16 +   512 * sizeof (short) / sizeof (int) +   656,
+       16 +   512 * sizeof (short) / sizeof (int) +   672,
+       16 +   512 * sizeof (short) / sizeof (int) +   688,
        -1,
        -1,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
-       16 +   512 * sizeof (short) / sizeof (int) +   624,
-       16 +   512 * sizeof (short) / sizeof (int) +   640,
+       16 +   512 * sizeof (short) / sizeof (int) +   704,
+       16 +   512 * sizeof (short) / sizeof (int) +   720,
        -1,
        -1,
        -1,
@@ -188,7 +188,7 @@
        -1,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
-       16 +   512 * sizeof (short) / sizeof (int) +   656,
+       16 +   512 * sizeof (short) / sizeof (int) +   736,
        -1,
        -1,
        -1,
@@ -215,9 +215,9 @@
        -1,
        -1,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
-       16 +   512 * sizeof (short) / sizeof (int) +   672,
+       16 +   512 * sizeof (short) / sizeof (int) +   752,
        -1,
-       16 +   512 * sizeof (short) / sizeof (int) +   688,
+       16 +   512 * sizeof (short) / sizeof (int) +   768,
        -1,
        -1,
        -1,
@@ -250,13 +250,13 @@
        -1,
        -1,
        -1,
-       16 +   512 * sizeof (short) / sizeof (int) +   704,
+       16 +   512 * sizeof (short) / sizeof (int) +   784,
        -1,
        -1,
        -1,
        -1,
        -1,
-       -1,
+       16 +   512 * sizeof (short) / sizeof (int) +   800,
        -1,
        -1,
        -1,
@@ -266,10 +266,10 @@
        -1,
        -1,
        -1,
-       16 +   512 * sizeof (short) / sizeof (int) +   720,
-       16 +   512 * sizeof (short) / sizeof (int) +   736,
-       16 +   512 * sizeof (short) / sizeof (int) +   752,
-       16 +   512 * sizeof (short) / sizeof (int) +   768,
+       16 +   512 * sizeof (short) / sizeof (int) +   816,
+       16 +   512 * sizeof (short) / sizeof (int) +   832,
+       16 +   512 * sizeof (short) / sizeof (int) +   848,
+       16 +   512 * sizeof (short) / sizeof (int) +   864,
        -1,
        -1,
        -1,
@@ -278,10 +278,10 @@
        -1,
        -1,
        -1,
+       16 +   512 * sizeof (short) / sizeof (int) +   880,
        -1,
        -1,
-       -1,
-       16 +   512 * sizeof (short) / sizeof (int) +   784,
+       16 +   512 * sizeof (short) / sizeof (int) +   896,
        -1,
        -1,
        -1,
@@ -373,7 +373,7 @@
        16 +   512 * sizeof (short) / sizeof (int) +   304,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
-       16 +   512 * sizeof (short) / sizeof (int) +   800,
+       16 +   512 * sizeof (short) / sizeof (int) +   912,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
@@ -381,8 +381,8 @@
        16 +   512 * sizeof (short) / sizeof (int) +   304,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
-       16 +   512 * sizeof (short) / sizeof (int) +   816,
-       16 +   512 * sizeof (short) / sizeof (int) +   832,
+       16 +   512 * sizeof (short) / sizeof (int) +   928,
+       16 +   512 * sizeof (short) / sizeof (int) +   944,
        -1,
        -1,
        -1,
@@ -415,10 +415,10 @@
        -1,
        -1,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
-       16 +   512 * sizeof (short) / sizeof (int) +   832,
+       16 +   512 * sizeof (short) / sizeof (int) +   944,
        -1,
        -1,
-       16 +   512 * sizeof (short) / sizeof (int) +   848,
+       16 +   512 * sizeof (short) / sizeof (int) +   960,
        -1,
        -1,
        -1,
@@ -554,28 +554,28 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x0003FFC3, 0x0000501F,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x38DFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xB8DFFFFF,
     0xFFFFD7C0, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFBFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFCFB, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE00FF, 0x027FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFEFFFF, 0x027FFFFF, 0xFFFFFFFE,
     0xFFFE00FF, 0xBFFFFFFF, 0xFFFF00B6, 0x000707FF,
     0x07FF0000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFC3FF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x9FEFFFFF, 0x9FFFFDFF,
     0xFFFF0000, 0xFFFFFFFF, 0xFFFFE7FF, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0003FFFF, 0xFFFFFFFF, 0x043FFFFF,
     0xFFFFFFFF, 0x00003FFF, 0x0FFFFFFF, 0x00000000,
-    0x00000000, 0x00001FFD, 0x00000000, 0x7FFFFFF0,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFEFEFFCF,
-    0xFFF99FEE, 0xF3C5FDFF, 0xB080799F, 0x0003FFCF,
+    0x00000000, 0x0007FFFF, 0x00000000, 0xFFFFFFF0,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFEFFCF,
+    0xFFF99FEF, 0xF3C5FDFF, 0xB080799F, 0x0003FFCF,
     0xFFF987EE, 0xD36DFDFF, 0x5E023987, 0x003FFFC0,
     0xFFFBBFEE, 0xF3EDFDFF, 0x00013BBF, 0x0000FFCF,
     0xFFF99FEE, 0xF3EDFDFF, 0xB0C0399F, 0x0002FFCF,
     0xD63DC7EC, 0xC3FFC718, 0x00813DC7, 0x0000FFC0,
-    0xFFFDDFEE, 0xE3EFFDFF, 0x03603DDF, 0x0000FFCF,
-    0xFFFDDFEC, 0xF3EFFDFF, 0x40603DDF, 0x0006FFCF,
-    0xFFFDDFEC, 0xE7FFFFFF, 0x00807DDF, 0xFC00FFCF,
-    0xFC7FFFEC, 0x2FFBFFFF, 0xFF5F847F, 0x000C0000,
+    0xFFFDDFEF, 0xE3FFFDFF, 0x03603DDF, 0x0000FFCF,
+    0xFFFDDFEE, 0xF3EFFDFF, 0x40603DDF, 0x0006FFCF,
+    0xFFFDDFEE, 0xE7FFFFFF, 0x00807DDF, 0xFC00FFCF,
+    0xFC7FFFEC, 0x2FFBFFFF, 0xFF5F847F, 0x000CFFC0,
     0xFFFFFFFE, 0x07FFFFFF, 0x03FF7FFF, 0x00000000,
     0xFEF02596, 0x3BFFECAE, 0xF3FF3F5F, 0x00000000,
     0x03000001, 0xC2A003FF, 0xFFFFFEFF, 0xFFFE1FFF,
@@ -593,21 +593,21 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF9FFF,
-    0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x0001C7FF,
+    0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x01FFC7FF,
     0x001FDFFF, 0x001FFFFF, 0x000FFFFF, 0x000DDFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x308FFFFF, 0x000003FF,
     0x03FF3800, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFF07FF, 0xFFFFFFFF, 0x003FFFFF,
-    0x1FFFFFFF, 0x0FFF0FFF, 0xFFFFFFC0, 0x001F3FFF,
+    0x7FFFFFFF, 0x0FFF0FFF, 0xFFFFFFC0, 0x001F3FFF,
     0xFFFFFFFF, 0xFFFF0FFF, 0x07FF03FF, 0x00000000,
     0x0FFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF, 0x9FFFFFFF,
-    0x03FF03FF, 0x00000080, 0x00000000, 0x00000000,
+    0x03FF03FF, 0x3FFF0080, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x03FF0FFF, 0x000FF800,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFF, 0x00FFFFFF, 0xFFFFE3FF, 0x3FFFFFFF,
-    0x00000000, 0x00000000, 0xFFF70000, 0x007FFFFF,
+    0x00000000, 0x00000000, 0xFFF70000, 0x037FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xF000007F,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xF03FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF,
@@ -641,16 +641,16 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFF1FFF, 0x00000FFF, 0xFFFFFFFF, 0xBFF0FFFF,
-    0x80FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0003FFFF,
+    0xBFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0003FFFF,
     0xFF800000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000F79FF, 0x000007FF, 0x00000000, 0xFF000000,
+    0xFFFF79FF, 0x00033FFF, 0x00000000, 0xFF800000,
     0xFFFFFFFF, 0x000000FF, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x03FF001F, 0x08FFFFFF,
     0xFFFFFFFF, 0xFFFF3FFF, 0x000FFFFF, 0x1FFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x03FF8001, 0x00000000,
-    0xFFFFFFFF, 0x007FFFFF, 0x03FF3FFF, 0x0C7FFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x03FF8001, 0x7FFFFFFF,
+    0xFFFFFFFF, 0x007FFFFF, 0x03FF3FFF, 0xFC7FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x38000007, 0x007CFFFF,
-    0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
+    0x007E7E7E, 0xFFFF7F7F, 0xF7FFFFFF, 0x00000030,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x03FF37FF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -668,7 +668,7 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0x3FFFFFFF, 0xFFFF0000, 0xFFFFFFFF,
     0xFFFCFFFF, 0xFFFFFFFF, 0x000000FF, 0x03FF0000,
-    0x0000FFFF, 0x0018007F, 0x0000E000, 0xAA8A0000,
+    0x0000FFFF, 0x00183FFF, 0x0000E000, 0xAA8A0000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFFFFFF,
     0x03FF0000, 0x87FFFFFE, 0x07FFFFFE, 0xFFFFFFC0,
     0xFFFFFFFF, 0x7FFFFFFF, 0x1CFCFCFC, 0x00000000,
@@ -677,49 +677,69 @@
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x001FFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x20000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x1FFFFFFF, 0xFFFFFFFF, 0x0001FFFF, 0x00000000,
-    0x7FFFFFFF, 0xFFFF0000, 0x000007FF, 0x00000000,
+    0x1FFFFFFF, 0xFFFFFFFF, 0x0001FFFF, 0x00000001,
+    0xFFFFFFFF, 0xFFFF0000, 0xFFFF07FF, 0x07FFFFFF,
     0x3FFFFFFF, 0xFFFFFFFF, 0x003EFF0F, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x000003FF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFF00FF, 0xFFFFFFFF, 0x0000000F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFD3F, 0x91BFFFFF, 0x003FFFFF, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0x007FFFFF, 0x003FFFFF, 0x000000FF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFD3F, 0x91BFFFFF, 0x003FFFFF, 0x007FFFFF,
+    0x7FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x003FFFFF, 0x03FFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xC0FFFFFF, 0x00000000, 0x00000000,
     0xFEEFF06F, 0x870FFFFF, 0x00000000, 0x1FFFFFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x1FFFFFFF, 0x00000000, 0xFFFFFEFF, 0x0000007F,
     0xFFFFFFFF, 0x003FFFFF, 0x003FFFFF, 0x0007FFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x0003FFFF, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x000001FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x0000007F, 0x0000FFC0,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000007F, 0x8000FFC0,
     0xFFFFFFFF, 0x07FFFFFF, 0xFFFF0000, 0x03FF01FF,
-    0xFFFFFFFF, 0xFFDFFFFF, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x03FF001F, 0x00000000,
+    0xFFFFFFFF, 0xFFDFFFFF, 0xFFFF0000, 0x004FFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x07FF001F, 0x00000000,
+    0xFFFBFFFF, 0x00FFFFFF, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0xFFFFFFFF, 0x03FF07FF,
+    0xFFF99FEE, 0xF3EDFDFF, 0xE080399F, 0x001F1FCF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x03FF00BF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFF3FFFFF, 0x00000001, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x03FF0011, 0x00000000,
     0xFFFFFFFF, 0x00FFFFFF, 0x000003FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x800003FF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0x01FFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x01FFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000007,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0x00007FFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0x01FFFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x01FFFFFF, 0x7FFFFFFF, 0x000003FF,
+    0x00000000, 0x00000000, 0xFFFF0000, 0x001F3FFF,
+    0xFFFFFFFF, 0x007FFFFF, 0x03FF000F, 0xE0FFFFF8,
+    0x0000FFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF001F, 0x7FFFFFFF,
@@ -728,6 +748,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFF07FF,
+    0x63FF01FF, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xF807E3E0,
@@ -744,6 +768,10 @@
     0xFFFFFFFF, 0xFFFFFF3F, 0xF7FFFFFD, 0xF7FFFFFF,
     0xFFDFFFFF, 0xFFDFFFFF, 0xFFFF7FFF, 0xFFFF7FFF,
     0xFFFFFDFF, 0xFFFFFDFF, 0xFFFFCFF7, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x007F001F, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFEF, 0x0AF7FE96, 0xAA96EA84, 0x5EF7F796,
     0x0FFFFBFF, 0x0FFFFBEE, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/pr_xid_start.h
+++ b/lib/unictype/pr_xid_start.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[3];
     short level2[3 << 7];
-    /*unsigned*/ int level3[51 << 4];
+    /*unsigned*/ int level3[58 << 4];
   }
 u_property_xid_start =
 {
@@ -153,22 +153,22 @@
         4 +   384 * sizeof (short) / sizeof (int) +   496,
         4 +   384 * sizeof (short) / sizeof (int) +   512,
         4 +   384 * sizeof (short) / sizeof (int) +   528,
-       -1,
         4 +   384 * sizeof (short) / sizeof (int) +   544,
         4 +   384 * sizeof (short) / sizeof (int) +   560,
         4 +   384 * sizeof (short) / sizeof (int) +   576,
-       -1,
         4 +   384 * sizeof (short) / sizeof (int) +   592,
        -1,
-       -1,
         4 +   384 * sizeof (short) / sizeof (int) +   608,
-       -1,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   624,
+        4 +   384 * sizeof (short) / sizeof (int) +   640,
+        4 +   384 * sizeof (short) / sizeof (int) +   656,
+        4 +   384 * sizeof (short) / sizeof (int) +   672,
+        4 +   384 * sizeof (short) / sizeof (int) +   688,
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
-        4 +   384 * sizeof (short) / sizeof (int) +   624,
-        4 +   384 * sizeof (short) / sizeof (int) +   640,
+        4 +   384 * sizeof (short) / sizeof (int) +   704,
+        4 +   384 * sizeof (short) / sizeof (int) +   720,
        -1,
        -1,
        -1,
@@ -176,7 +176,7 @@
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
-        4 +   384 * sizeof (short) / sizeof (int) +   656,
+        4 +   384 * sizeof (short) / sizeof (int) +   736,
        -1,
        -1,
        -1,
@@ -203,9 +203,9 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
-        4 +   384 * sizeof (short) / sizeof (int) +   672,
+        4 +   384 * sizeof (short) / sizeof (int) +   752,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   688,
+        4 +   384 * sizeof (short) / sizeof (int) +   768,
        -1,
        -1,
        -1,
@@ -238,12 +238,14 @@
        -1,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   704,
+        4 +   384 * sizeof (short) / sizeof (int) +   784,
        -1,
        -1,
        -1,
        -1,
        -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   800,
+       -1,
        -1,
        -1,
        -1,
@@ -254,10 +256,8 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   720,
-        4 +   384 * sizeof (short) / sizeof (int) +   736,
+        4 +   384 * sizeof (short) / sizeof (int) +   816,
+        4 +   384 * sizeof (short) / sizeof (int) +   832,
        -1,
        -1,
        -1,
@@ -266,10 +266,10 @@
        -1,
        -1,
        -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   848,
        -1,
        -1,
-       -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   752,
+        4 +   384 * sizeof (short) / sizeof (int) +   864,
        -1,
        -1,
        -1,
@@ -361,7 +361,7 @@
         4 +   384 * sizeof (short) / sizeof (int) +   304,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
-        4 +   384 * sizeof (short) / sizeof (int) +   768,
+        4 +   384 * sizeof (short) / sizeof (int) +   880,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
@@ -369,8 +369,8 @@
         4 +   384 * sizeof (short) / sizeof (int) +   304,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
-        4 +   384 * sizeof (short) / sizeof (int) +   784,
-        4 +   384 * sizeof (short) / sizeof (int) +   800,
+        4 +   384 * sizeof (short) / sizeof (int) +   896,
+        4 +   384 * sizeof (short) / sizeof (int) +   912,
        -1,
        -1,
        -1,
@@ -403,7 +403,7 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
-        4 +   384 * sizeof (short) / sizeof (int) +   800,
+        4 +   384 * sizeof (short) / sizeof (int) +   912,
        -1,
        -1
   },
@@ -414,25 +414,25 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x0003FFC3, 0x0000501F,
-    0x00000000, 0x00000000, 0x00000000, 0x38DF0000,
+    0x00000000, 0x00000000, 0x00000000, 0xB8DF0000,
     0xFFFFD740, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFBFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE00FF, 0x027FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFEFFFF, 0x027FFFFF, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0xFFFF0000, 0x000707FF,
     0x00000000, 0xFFFFFFFF, 0x000007FF, 0xFFFEC000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x002FFFFF, 0x9C00C060,
     0xFFFD0000, 0x0000FFFF, 0xFFFFE000, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0002003F, 0xFFFFFC00, 0x043007FF,
     0x043FFFFF, 0x00000110, 0x01FFFFFF, 0x00000000,
-    0x00000000, 0x00001FFD, 0x00000000, 0x00000000,
-    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFEFE0003,
-    0xFFF99FE0, 0x23C5FDFF, 0xB0004000, 0x00030003,
+    0x00000000, 0x0007FFFF, 0x00000000, 0x00000000,
+    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFFFE0003,
+    0xFFF99FE1, 0x23C5FDFF, 0xB0004000, 0x00030003,
     0xFFF987E0, 0x036DFDFF, 0x5E000000, 0x001C0000,
     0xFFFBBFE0, 0x23EDFDFF, 0x00010000, 0x00000003,
     0xFFF99FE0, 0x23EDFDFF, 0xB0000000, 0x00020003,
     0xD63DC7E8, 0x03FFC718, 0x00010000, 0x00000000,
-    0xFFFDDFE0, 0x23EFFDFF, 0x03000000, 0x00000003,
+    0xFFFDDFE0, 0x23FFFDFF, 0x03000000, 0x00000003,
     0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x00060003,
     0xFFFDDFE0, 0x27FFFFFF, 0x00004000, 0xFC000003,
     0xFC7FFFE0, 0x2FFBFFFF, 0x0000007F, 0x00000000,
@@ -453,12 +453,12 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF9FFF,
-    0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x0001C7FF,
+    0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x01FFC7FF,
     0x0003DFFF, 0x0003FFFF, 0x0003FFFF, 0x0001DFFF,
     0xFFFFFFFF, 0x000FFFFF, 0x10800000, 0x00000000,
     0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFF05FF, 0xFFFFFFFF, 0x003FFFFF,
-    0x1FFFFFFF, 0x00000000, 0xFFFF0000, 0x001F3FFF,
+    0x7FFFFFFF, 0x00000000, 0xFFFF0000, 0x001F3FFF,
     0xFFFFFFFF, 0x00000FFF, 0x000000FE, 0x00000000,
     0x007FFFFF, 0xFFFFFFFF, 0x001FFFFF, 0x00000000,
     0x00000000, 0x00000080, 0x00000000, 0x00000000,
@@ -501,16 +501,16 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFF1FFF, 0x00000C00, 0xFFFFFFFF, 0x80007FFF,
-    0x00FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF,
+    0x3FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF,
     0xFF800000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000F79FF, 0x000007FF, 0x00000000, 0xFF000000,
+    0xFFFF79FF, 0x00033FFF, 0x00000000, 0xFF800000,
     0xFFFFF7BB, 0x00000007, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFC, 0x000FFFFF, 0x00000000, 0x08FC0000,
     0xFFFFFC00, 0xFFFF003F, 0x0000007F, 0x1FFFFFFF,
-    0xFFFFFFF0, 0x0007FFFF, 0x00008000, 0x00000000,
-    0xFFFFFFFF, 0x000001FF, 0x00000FF7, 0x047FFFFF,
+    0xFFFFFFF0, 0x0007FFFF, 0x00008000, 0x7C00FFDF,
+    0xFFFFFFFF, 0x000001FF, 0x00000FF7, 0xC47FFFFF,
     0xFFFFFFFF, 0x3E62FFFF, 0x38000005, 0x001C07FF,
-    0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
+    0x007E7E7E, 0xFFFF7F7F, 0xF7FFFFFF, 0x00000030,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000007,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -538,48 +538,68 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x1FFFFFFF, 0xFFFFFFFF, 0x0001FFFF, 0x00000000,
-    0x7FFFFFFF, 0xFFFF0000, 0x000007FF, 0x00000000,
+    0xFFFFFFFF, 0xFFFF0000, 0xFFFF07FF, 0x003FFFFF,
     0x3FFFFFFF, 0xFFFFFFFF, 0x003EFF0F, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFF00FF, 0xFFFFFFFF, 0x0000000F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFD3F, 0x91BFFFFF, 0x003FFFFF, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0x007FFFFF, 0x003FFFFF, 0x000000FF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFD3F, 0x91BFFFFF, 0x003FFFFF, 0x007FFFFF,
+    0x7FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x003FFFFF, 0x03FFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xC0FFFFFF, 0x00000000, 0x00000000,
     0xFEEF0001, 0x000FFFFF, 0x00000000, 0x1FFFFFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x1FFFFFFF, 0x00000000, 0xFFFFFEFF, 0x0000001F,
     0xFFFFFFFF, 0x003FFFFF, 0x003FFFFF, 0x0007FFFF,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x0003FFFF, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x000001FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFF8, 0x00FFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFF8, 0x0000FFFF, 0xFFFF0000, 0x000001FF,
-    0xFFFFFFF8, 0x0000007F, 0x00000000, 0x00000000,
-    0xFFFFFFF8, 0x0007FFFF, 0x0000001E, 0x00000000,
+    0xFFFFFFF8, 0x0000007F, 0xFFFF0000, 0x0047FFFF,
+    0xFFFFFFF8, 0x0007FFFF, 0x0400001E, 0x00000000,
+    0xFFFBFFFF, 0x00000FFF, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFF0000, 0x7FFFFFFF, 0x00000000,
+    0xFFF99FE0, 0x23EDFDFF, 0xE0000000, 0x00000003,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x0000FFFF, 0x000000B0, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x00007FFF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x0000FFFF, 0x00000010, 0x00000000,
     0xFFFFFFFF, 0x000007FF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x80000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0x01FFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x01FFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000007,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0x00007FFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0x01FFFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x01FFFFFF, 0x7FFFFFFF, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFF0000, 0x00003FFF,
+    0xFFFFFFFF, 0x0000FFFF, 0x0000000F, 0xE0FFFFF8,
+    0x0000FFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x0001001F, 0x00000000,
@@ -588,6 +608,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFF07FF,
+    0x03FF01FF, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF,
     0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF,
     0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF,
@@ -596,6 +620,10 @@
     0xFFFFFFFF, 0xFFFFFF3F, 0xF7FFFFFD, 0xF7FFFFFF,
     0xFFDFFFFF, 0xFFDFFFFF, 0xFFFF7FFF, 0xFFFF7FFF,
     0xFFFFFDFF, 0xFFFFFDFF, 0x00000FF7, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000001F, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFEF, 0x0AF7FE96, 0xAA96EA84, 0x5EF7F796,
     0x0FFFFBFF, 0x0FFFFBEE, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/pr_zero_width.h
+++ b/lib/unictype/pr_zero_width.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -11,7 +11,7 @@
     int header[1];
     int level1[15];
     short level2[3 << 7];
-    /*unsigned*/ int level3[8 << 4];
+    /*unsigned*/ int level3[9 << 4];
   }
 u_property_zero_width =
 {
@@ -256,6 +256,7 @@
        -1,
        -1,
        -1,
+       16 +   384 * sizeof (short) / sizeof (int) +    96,
        -1,
        -1,
        -1,
@@ -265,8 +266,7 @@
        -1,
        -1,
        -1,
-       -1,
-       16 +   384 * sizeof (short) / sizeof (int) +    96,
+       16 +   384 * sizeof (short) / sizeof (int) +   112,
        -1,
        -1,
        -1,
@@ -290,7 +290,7 @@
        -1,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +   112,
+       16 +   384 * sizeof (short) / sizeof (int) +   128,
        -1,
        -1,
        -1,
@@ -424,7 +424,7 @@
     0x00000000, 0x00002000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x1000001F, 0x00000000, 0x00000000, 0x00000000,
+    0x1000003F, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x20000000, 0x00000000,
     0x00008000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -445,6 +445,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x0000000F, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x07F80000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- a/lib/unictype/scripts.h
+++ b/lib/unictype/scripts.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Unicode scripts.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 static const uc_interval_t script_common_intervals[] =
 {
   { 0x0000, 1, 0 }, { 0x0040, 0, 1 },
@@ -18,8 +18,9 @@
   { 0x0385, 1, 1 },
   { 0x0387, 1, 1 },
   { 0x0589, 1, 1 },
+  { 0x0605, 1, 1 },
   { 0x060C, 1, 1 },
-  { 0x061B, 1, 1 },
+  { 0x061B, 1, 0 }, { 0x061C, 0, 1 },
   { 0x061F, 1, 1 },
   { 0x0640, 1, 1 },
   { 0x0660, 1, 0 }, { 0x0669, 0, 1 },
@@ -42,21 +43,23 @@
   { 0x2066, 1, 0 }, { 0x2070, 0, 1 },
   { 0x2074, 1, 0 }, { 0x207E, 0, 1 },
   { 0x2080, 1, 0 }, { 0x208E, 0, 1 },
-  { 0x20A0, 1, 0 }, { 0x20BA, 0, 1 },
+  { 0x20A0, 1, 0 }, { 0x20BD, 0, 1 },
   { 0x2100, 1, 0 }, { 0x2125, 0, 1 },
   { 0x2127, 1, 0 }, { 0x2129, 0, 1 },
   { 0x212C, 1, 0 }, { 0x2131, 0, 1 },
   { 0x2133, 1, 0 }, { 0x214D, 0, 1 },
   { 0x214F, 1, 0 }, { 0x215F, 0, 1 },
   { 0x2189, 1, 1 },
-  { 0x2190, 1, 0 }, { 0x23F3, 0, 1 },
+  { 0x2190, 1, 0 }, { 0x23FA, 0, 1 },
   { 0x2400, 1, 0 }, { 0x2426, 0, 1 },
   { 0x2440, 1, 0 }, { 0x244A, 0, 1 },
-  { 0x2460, 1, 0 }, { 0x26FF, 0, 1 },
-  { 0x2701, 1, 0 }, { 0x27FF, 0, 1 },
-  { 0x2900, 1, 0 }, { 0x2B4C, 0, 1 },
-  { 0x2B50, 1, 0 }, { 0x2B59, 0, 1 },
-  { 0x2E00, 1, 0 }, { 0x2E3B, 0, 1 },
+  { 0x2460, 1, 0 }, { 0x27FF, 0, 1 },
+  { 0x2900, 1, 0 }, { 0x2B73, 0, 1 },
+  { 0x2B76, 1, 0 }, { 0x2B95, 0, 1 },
+  { 0x2B98, 1, 0 }, { 0x2BB9, 0, 1 },
+  { 0x2BBD, 1, 0 }, { 0x2BC8, 0, 1 },
+  { 0x2BCA, 1, 0 }, { 0x2BD1, 0, 1 },
+  { 0x2E00, 1, 0 }, { 0x2E42, 0, 1 },
   { 0x2FF0, 1, 0 }, { 0x2FFB, 0, 1 },
   { 0x3000, 1, 0 }, { 0x3004, 0, 1 },
   { 0x3006, 1, 1 },
@@ -75,9 +78,10 @@
   { 0xA700, 1, 0 }, { 0xA721, 0, 1 },
   { 0xA788, 1, 0 }, { 0xA78A, 0, 1 },
   { 0xA830, 1, 0 }, { 0xA839, 0, 1 },
+  { 0xA92E, 1, 1 },
   { 0xA9CF, 1, 1 },
+  { 0xAB5B, 1, 1 },
   { 0xFD3E, 1, 0 }, { 0xFD3F, 0, 1 },
-  { 0xFDFD, 1, 1 },
   { 0xFE10, 1, 0 }, { 0xFE19, 0, 1 },
   { 0xFE30, 1, 0 }, { 0xFE52, 0, 1 },
   { 0xFE54, 1, 0 }, { 0xFE66, 0, 1 },
@@ -96,6 +100,8 @@
   { 0x10137, 1, 0 }, { 0x1013F, 0, 1 },
   { 0x10190, 1, 0 }, { 0x1019B, 0, 1 },
   { 0x101D0, 1, 0 }, { 0x101FC, 0, 1 },
+  { 0x102E1, 1, 0 }, { 0x102FB, 0, 1 },
+  { 0x1BCA0, 1, 0 }, { 0x1BCA3, 0, 1 },
   { 0x1D000, 1, 0 }, { 0x1D0F5, 0, 1 },
   { 0x1D100, 1, 0 }, { 0x1D126, 0, 1 },
   { 0x1D129, 1, 0 }, { 0x1D166, 0, 1 },
@@ -129,10 +135,10 @@
   { 0x1F000, 1, 0 }, { 0x1F02B, 0, 1 },
   { 0x1F030, 1, 0 }, { 0x1F093, 0, 1 },
   { 0x1F0A0, 1, 0 }, { 0x1F0AE, 0, 1 },
-  { 0x1F0B1, 1, 0 }, { 0x1F0BE, 0, 1 },
+  { 0x1F0B1, 1, 0 }, { 0x1F0BF, 0, 1 },
   { 0x1F0C1, 1, 0 }, { 0x1F0CF, 0, 1 },
-  { 0x1F0D1, 1, 0 }, { 0x1F0DF, 0, 1 },
-  { 0x1F100, 1, 0 }, { 0x1F10A, 0, 1 },
+  { 0x1F0D1, 1, 0 }, { 0x1F0F5, 0, 1 },
+  { 0x1F100, 1, 0 }, { 0x1F10C, 0, 1 },
   { 0x1F110, 1, 0 }, { 0x1F12E, 0, 1 },
   { 0x1F130, 1, 0 }, { 0x1F16B, 0, 1 },
   { 0x1F170, 1, 0 }, { 0x1F19A, 0, 1 },
@@ -141,24 +147,25 @@
   { 0x1F210, 1, 0 }, { 0x1F23A, 0, 1 },
   { 0x1F240, 1, 0 }, { 0x1F248, 0, 1 },
   { 0x1F250, 1, 0 }, { 0x1F251, 0, 1 },
-  { 0x1F300, 1, 0 }, { 0x1F320, 0, 1 },
-  { 0x1F330, 1, 0 }, { 0x1F335, 0, 1 },
-  { 0x1F337, 1, 0 }, { 0x1F37C, 0, 1 },
-  { 0x1F380, 1, 0 }, { 0x1F393, 0, 1 },
-  { 0x1F3A0, 1, 0 }, { 0x1F3C4, 0, 1 },
-  { 0x1F3C6, 1, 0 }, { 0x1F3CA, 0, 1 },
-  { 0x1F3E0, 1, 0 }, { 0x1F3F0, 0, 1 },
-  { 0x1F400, 1, 0 }, { 0x1F43E, 0, 1 },
-  { 0x1F440, 1, 1 },
-  { 0x1F442, 1, 0 }, { 0x1F4F7, 0, 1 },
-  { 0x1F4F9, 1, 0 }, { 0x1F4FC, 0, 1 },
-  { 0x1F500, 1, 0 }, { 0x1F53D, 0, 1 },
-  { 0x1F540, 1, 0 }, { 0x1F543, 0, 1 },
-  { 0x1F550, 1, 0 }, { 0x1F567, 0, 1 },
-  { 0x1F5FB, 1, 0 }, { 0x1F640, 0, 1 },
-  { 0x1F645, 1, 0 }, { 0x1F64F, 0, 1 },
-  { 0x1F680, 1, 0 }, { 0x1F6C5, 0, 1 },
+  { 0x1F300, 1, 0 }, { 0x1F32C, 0, 1 },
+  { 0x1F330, 1, 0 }, { 0x1F37D, 0, 1 },
+  { 0x1F380, 1, 0 }, { 0x1F3CE, 0, 1 },
+  { 0x1F3D4, 1, 0 }, { 0x1F3F7, 0, 1 },
+  { 0x1F400, 1, 0 }, { 0x1F4FE, 0, 1 },
+  { 0x1F500, 1, 0 }, { 0x1F54A, 0, 1 },
+  { 0x1F550, 1, 0 }, { 0x1F579, 0, 1 },
+  { 0x1F57B, 1, 0 }, { 0x1F5A3, 0, 1 },
+  { 0x1F5A5, 1, 0 }, { 0x1F642, 0, 1 },
+  { 0x1F645, 1, 0 }, { 0x1F6CF, 0, 1 },
+  { 0x1F6E0, 1, 0 }, { 0x1F6EC, 0, 1 },
+  { 0x1F6F0, 1, 0 }, { 0x1F6F3, 0, 1 },
   { 0x1F700, 1, 0 }, { 0x1F773, 0, 1 },
+  { 0x1F780, 1, 0 }, { 0x1F7D4, 0, 1 },
+  { 0x1F800, 1, 0 }, { 0x1F80B, 0, 1 },
+  { 0x1F810, 1, 0 }, { 0x1F847, 0, 1 },
+  { 0x1F850, 1, 0 }, { 0x1F859, 0, 1 },
+  { 0x1F860, 1, 0 }, { 0x1F887, 0, 1 },
+  { 0x1F890, 1, 0 }, { 0x1F8AD, 0, 1 },
   { 0xE0001, 1, 1 },
   { 0xE0020, 1, 0 }, { 0xE007F, 0, 1 }
 };
@@ -188,9 +195,12 @@
   { 0x2C60, 1, 0 }, { 0x2C7F, 0, 1 },
   { 0xA722, 1, 0 }, { 0xA787, 0, 1 },
   { 0xA78B, 1, 0 }, { 0xA78E, 0, 1 },
-  { 0xA790, 1, 0 }, { 0xA793, 0, 1 },
-  { 0xA7A0, 1, 0 }, { 0xA7AA, 0, 1 },
-  { 0xA7F8, 1, 0 }, { 0xA7FF, 0, 1 },
+  { 0xA790, 1, 0 }, { 0xA7AD, 0, 1 },
+  { 0xA7B0, 1, 0 }, { 0xA7B1, 0, 1 },
+  { 0xA7F7, 1, 0 }, { 0xA7FF, 0, 1 },
+  { 0xAB30, 1, 0 }, { 0xAB5A, 0, 1 },
+  { 0xAB5C, 1, 0 }, { 0xAB5F, 0, 1 },
+  { 0xAB64, 1, 1 },
   { 0xFB00, 1, 0 }, { 0xFB06, 0, 1 },
   { 0xFF21, 1, 0 }, { 0xFF3A, 0, 1 },
   { 0xFF41, 1, 0 }, { 0xFF5A, 0, 1 }
@@ -200,6 +210,7 @@
   { 0x0370, 1, 0 }, { 0x0373, 0, 1 },
   { 0x0375, 1, 0 }, { 0x0377, 0, 1 },
   { 0x037A, 1, 0 }, { 0x037D, 0, 1 },
+  { 0x037F, 1, 1 },
   { 0x0384, 1, 1 },
   { 0x0386, 1, 1 },
   { 0x0388, 1, 0 }, { 0x038A, 0, 1 },
@@ -228,17 +239,19 @@
   { 0x1FF2, 1, 0 }, { 0x1FF4, 0, 1 },
   { 0x1FF6, 1, 0 }, { 0x1FFE, 0, 1 },
   { 0x2126, 1, 1 },
-  { 0x10140, 1, 0 }, { 0x1018A, 0, 1 },
+  { 0xAB65, 1, 1 },
+  { 0x10140, 1, 0 }, { 0x1018C, 0, 1 },
+  { 0x101A0, 1, 1 },
   { 0x1D200, 1, 0 }, { 0x1D245, 0, 1 }
 };
 static const uc_interval_t script_cyrillic_intervals[] =
 {
   { 0x0400, 1, 0 }, { 0x0484, 0, 1 },
-  { 0x0487, 1, 0 }, { 0x0527, 0, 1 },
+  { 0x0487, 1, 0 }, { 0x052F, 0, 1 },
   { 0x1D2B, 1, 1 },
   { 0x1D78, 1, 1 },
   { 0x2DE0, 1, 0 }, { 0x2DFF, 0, 1 },
-  { 0xA640, 1, 0 }, { 0xA697, 0, 1 },
+  { 0xA640, 1, 0 }, { 0xA69D, 0, 1 },
   { 0xA69F, 1, 1 }
 };
 static const uc_interval_t script_armenian_intervals[] =
@@ -247,7 +260,7 @@
   { 0x0559, 1, 0 }, { 0x055F, 0, 1 },
   { 0x0561, 1, 0 }, { 0x0587, 0, 1 },
   { 0x058A, 1, 1 },
-  { 0x058F, 1, 1 },
+  { 0x058D, 1, 0 }, { 0x058F, 0, 1 },
   { 0xFB13, 1, 0 }, { 0xFB17, 0, 1 }
 };
 static const uc_interval_t script_hebrew_intervals[] =
@@ -267,7 +280,6 @@
   { 0x0600, 1, 0 }, { 0x0604, 0, 1 },
   { 0x0606, 1, 0 }, { 0x060B, 0, 1 },
   { 0x060D, 1, 0 }, { 0x061A, 0, 1 },
-  { 0x061C, 1, 1 },
   { 0x061E, 1, 1 },
   { 0x0620, 1, 0 }, { 0x063F, 0, 1 },
   { 0x0641, 1, 0 }, { 0x064A, 0, 1 },
@@ -276,14 +288,13 @@
   { 0x0671, 1, 0 }, { 0x06DC, 0, 1 },
   { 0x06DE, 1, 0 }, { 0x06FF, 0, 1 },
   { 0x0750, 1, 0 }, { 0x077F, 0, 1 },
-  { 0x08A0, 1, 1 },
-  { 0x08A2, 1, 0 }, { 0x08AC, 0, 1 },
-  { 0x08E4, 1, 0 }, { 0x08FE, 0, 1 },
+  { 0x08A0, 1, 0 }, { 0x08B2, 0, 1 },
+  { 0x08E4, 1, 0 }, { 0x08FF, 0, 1 },
   { 0xFB50, 1, 0 }, { 0xFBC1, 0, 1 },
   { 0xFBD3, 1, 0 }, { 0xFD3D, 0, 1 },
   { 0xFD50, 1, 0 }, { 0xFD8F, 0, 1 },
   { 0xFD92, 1, 0 }, { 0xFDC7, 0, 1 },
-  { 0xFDF0, 1, 0 }, { 0xFDFC, 0, 1 },
+  { 0xFDF0, 1, 0 }, { 0xFDFD, 0, 1 },
   { 0xFE70, 1, 0 }, { 0xFE74, 0, 1 },
   { 0xFE76, 1, 0 }, { 0xFEFC, 0, 1 },
   { 0x10E60, 1, 0 }, { 0x10E7E, 0, 1 },
@@ -336,13 +347,12 @@
 {
   { 0x0900, 1, 0 }, { 0x0950, 0, 1 },
   { 0x0953, 1, 0 }, { 0x0963, 0, 1 },
-  { 0x0966, 1, 0 }, { 0x0977, 0, 1 },
-  { 0x0979, 1, 0 }, { 0x097F, 0, 1 },
+  { 0x0966, 1, 0 }, { 0x097F, 0, 1 },
   { 0xA8E0, 1, 0 }, { 0xA8FB, 0, 1 }
 };
 static const uc_interval_t script_bengali_intervals[] =
 {
-  { 0x0981, 1, 0 }, { 0x0983, 0, 1 },
+  { 0x0980, 1, 0 }, { 0x0983, 0, 1 },
   { 0x0985, 1, 0 }, { 0x098C, 0, 1 },
   { 0x098F, 1, 0 }, { 0x0990, 0, 1 },
   { 0x0993, 1, 0 }, { 0x09A8, 0, 1 },
@@ -430,12 +440,11 @@
 };
 static const uc_interval_t script_telugu_intervals[] =
 {
-  { 0x0C01, 1, 0 }, { 0x0C03, 0, 1 },
+  { 0x0C00, 1, 0 }, { 0x0C03, 0, 1 },
   { 0x0C05, 1, 0 }, { 0x0C0C, 0, 1 },
   { 0x0C0E, 1, 0 }, { 0x0C10, 0, 1 },
   { 0x0C12, 1, 0 }, { 0x0C28, 0, 1 },
-  { 0x0C2A, 1, 0 }, { 0x0C33, 0, 1 },
-  { 0x0C35, 1, 0 }, { 0x0C39, 0, 1 },
+  { 0x0C2A, 1, 0 }, { 0x0C39, 0, 1 },
   { 0x0C3D, 1, 0 }, { 0x0C44, 0, 1 },
   { 0x0C46, 1, 0 }, { 0x0C48, 0, 1 },
   { 0x0C4A, 1, 0 }, { 0x0C4D, 0, 1 },
@@ -447,7 +456,7 @@
 };
 static const uc_interval_t script_kannada_intervals[] =
 {
-  { 0x0C82, 1, 0 }, { 0x0C83, 0, 1 },
+  { 0x0C81, 1, 0 }, { 0x0C83, 0, 1 },
   { 0x0C85, 1, 0 }, { 0x0C8C, 0, 1 },
   { 0x0C8E, 1, 0 }, { 0x0C90, 0, 1 },
   { 0x0C92, 1, 0 }, { 0x0CA8, 0, 1 },
@@ -464,7 +473,7 @@
 };
 static const uc_interval_t script_malayalam_intervals[] =
 {
-  { 0x0D02, 1, 0 }, { 0x0D03, 0, 1 },
+  { 0x0D01, 1, 0 }, { 0x0D03, 0, 1 },
   { 0x0D05, 1, 0 }, { 0x0D0C, 0, 1 },
   { 0x0D0E, 1, 0 }, { 0x0D10, 0, 1 },
   { 0x0D12, 1, 0 }, { 0x0D3A, 0, 1 },
@@ -488,7 +497,9 @@
   { 0x0DCF, 1, 0 }, { 0x0DD4, 0, 1 },
   { 0x0DD6, 1, 1 },
   { 0x0DD8, 1, 0 }, { 0x0DDF, 0, 1 },
-  { 0x0DF2, 1, 0 }, { 0x0DF4, 0, 1 }
+  { 0x0DE6, 1, 0 }, { 0x0DEF, 0, 1 },
+  { 0x0DF2, 1, 0 }, { 0x0DF4, 0, 1 },
+  { 0x111E1, 1, 0 }, { 0x111F4, 0, 1 }
 };
 static const uc_interval_t script_thai_intervals[] =
 {
@@ -529,7 +540,8 @@
 static const uc_interval_t script_myanmar_intervals[] =
 {
   { 0x1000, 1, 0 }, { 0x109F, 0, 1 },
-  { 0xAA60, 1, 0 }, { 0xAA7B, 0, 1 }
+  { 0xA9E0, 1, 0 }, { 0xA9FE, 0, 1 },
+  { 0xAA60, 1, 0 }, { 0xAA7F, 0, 1 }
 };
 static const uc_interval_t script_georgian_intervals[] =
 {
@@ -610,7 +622,7 @@
 static const uc_interval_t script_runic_intervals[] =
 {
   { 0x16A0, 1, 0 }, { 0x16EA, 0, 1 },
-  { 0x16EE, 1, 0 }, { 0x16F0, 0, 1 }
+  { 0x16EE, 1, 0 }, { 0x16F8, 0, 1 }
 };
 static const uc_interval_t script_khmer_intervals[] =
 {
@@ -677,8 +689,7 @@
 };
 static const uc_interval_t script_old_italic_intervals[] =
 {
-  { 0x10300, 1, 0 }, { 0x1031E, 0, 1 },
-  { 0x10320, 1, 0 }, { 0x10323, 0, 1 }
+  { 0x10300, 1, 0 }, { 0x10323, 0, 1 }
 };
 static const uc_interval_t script_gothic_intervals[] =
 {
@@ -695,20 +706,23 @@
   { 0x064B, 1, 0 }, { 0x0655, 0, 1 },
   { 0x0670, 1, 1 },
   { 0x0951, 1, 0 }, { 0x0952, 0, 1 },
+  { 0x1AB0, 1, 0 }, { 0x1ABE, 0, 1 },
   { 0x1CD0, 1, 0 }, { 0x1CD2, 0, 1 },
   { 0x1CD4, 1, 0 }, { 0x1CE0, 0, 1 },
   { 0x1CE2, 1, 0 }, { 0x1CE8, 0, 1 },
   { 0x1CED, 1, 1 },
   { 0x1CF4, 1, 1 },
-  { 0x1DC0, 1, 0 }, { 0x1DE6, 0, 1 },
+  { 0x1CF8, 1, 0 }, { 0x1CF9, 0, 1 },
+  { 0x1DC0, 1, 0 }, { 0x1DF5, 0, 1 },
   { 0x1DFC, 1, 0 }, { 0x1DFF, 0, 1 },
   { 0x200C, 1, 0 }, { 0x200D, 0, 1 },
   { 0x20D0, 1, 0 }, { 0x20F0, 0, 1 },
   { 0x302A, 1, 0 }, { 0x302D, 0, 1 },
   { 0x3099, 1, 0 }, { 0x309A, 0, 1 },
   { 0xFE00, 1, 0 }, { 0xFE0F, 0, 1 },
-  { 0xFE20, 1, 0 }, { 0xFE26, 0, 1 },
+  { 0xFE20, 1, 0 }, { 0xFE2D, 0, 1 },
   { 0x101FD, 1, 1 },
+  { 0x102E0, 1, 1 },
   { 0x1D167, 1, 0 }, { 0x1D169, 0, 1 },
   { 0x1D17B, 1, 0 }, { 0x1D182, 0, 1 },
   { 0x1D185, 1, 0 }, { 0x1D18B, 0, 1 },
@@ -736,7 +750,7 @@
 };
 static const uc_interval_t script_limbu_intervals[] =
 {
-  { 0x1900, 1, 0 }, { 0x191C, 0, 1 },
+  { 0x1900, 1, 0 }, { 0x191E, 0, 1 },
   { 0x1920, 1, 0 }, { 0x192B, 0, 1 },
   { 0x1930, 1, 0 }, { 0x193B, 0, 1 },
   { 0x1940, 1, 1 },
@@ -840,9 +854,9 @@
 };
 static const uc_interval_t script_cuneiform_intervals[] =
 {
-  { 0x12000, 1, 0 }, { 0x1236E, 0, 1 },
-  { 0x12400, 1, 0 }, { 0x12462, 0, 1 },
-  { 0x12470, 1, 0 }, { 0x12473, 0, 1 }
+  { 0x12000, 1, 0 }, { 0x12398, 0, 1 },
+  { 0x12400, 1, 0 }, { 0x1246E, 0, 1 },
+  { 0x12470, 1, 0 }, { 0x12474, 0, 1 }
 };
 static const uc_interval_t script_phoenician_intervals[] =
 {
@@ -883,7 +897,8 @@
 };
 static const uc_interval_t script_kayah_li_intervals[] =
 {
-  { 0xA900, 1, 0 }, { 0xA92F, 0, 1 }
+  { 0xA900, 1, 0 }, { 0xA92D, 0, 1 },
+  { 0xA92F, 1, 1 }
 };
 static const uc_interval_t script_rejang_intervals[] =
 {
@@ -993,7 +1008,8 @@
 static const uc_interval_t script_brahmi_intervals[] =
 {
   { 0x11000, 1, 0 }, { 0x1104D, 0, 1 },
-  { 0x11052, 1, 0 }, { 0x1106F, 0, 1 }
+  { 0x11052, 1, 0 }, { 0x1106F, 0, 1 },
+  { 0x1107F, 1, 1 }
 };
 static const uc_interval_t script_mandaic_intervals[] =
 {
@@ -1023,7 +1039,8 @@
 static const uc_interval_t script_sharada_intervals[] =
 {
   { 0x11180, 1, 0 }, { 0x111C8, 0, 1 },
-  { 0x111D0, 1, 0 }, { 0x111D9, 0, 1 }
+  { 0x111CD, 1, 1 },
+  { 0x111D0, 1, 0 }, { 0x111DA, 0, 1 }
 };
 static const uc_interval_t script_sora_sompeng_intervals[] =
 {
@@ -1035,7 +1052,137 @@
   { 0x11680, 1, 0 }, { 0x116B7, 0, 1 },
   { 0x116C0, 1, 0 }, { 0x116C9, 0, 1 }
 };
-static const uc_script_t scripts[102] =
+static const uc_interval_t script_caucasian_albanian_intervals[] =
+{
+  { 0x10530, 1, 0 }, { 0x10563, 0, 1 },
+  { 0x1056F, 1, 1 }
+};
+static const uc_interval_t script_bassa_vah_intervals[] =
+{
+  { 0x16AD0, 1, 0 }, { 0x16AED, 0, 1 },
+  { 0x16AF0, 1, 0 }, { 0x16AF5, 0, 1 }
+};
+static const uc_interval_t script_duployan_intervals[] =
+{
+  { 0x1BC00, 1, 0 }, { 0x1BC6A, 0, 1 },
+  { 0x1BC70, 1, 0 }, { 0x1BC7C, 0, 1 },
+  { 0x1BC80, 1, 0 }, { 0x1BC88, 0, 1 },
+  { 0x1BC90, 1, 0 }, { 0x1BC99, 0, 1 },
+  { 0x1BC9C, 1, 0 }, { 0x1BC9F, 0, 1 }
+};
+static const uc_interval_t script_elbasan_intervals[] =
+{
+  { 0x10500, 1, 0 }, { 0x10527, 0, 1 }
+};
+static const uc_interval_t script_grantha_intervals[] =
+{
+  { 0x11301, 1, 0 }, { 0x11303, 0, 1 },
+  { 0x11305, 1, 0 }, { 0x1130C, 0, 1 },
+  { 0x1130F, 1, 0 }, { 0x11310, 0, 1 },
+  { 0x11313, 1, 0 }, { 0x11328, 0, 1 },
+  { 0x1132A, 1, 0 }, { 0x11330, 0, 1 },
+  { 0x11332, 1, 0 }, { 0x11333, 0, 1 },
+  { 0x11335, 1, 0 }, { 0x11339, 0, 1 },
+  { 0x1133C, 1, 0 }, { 0x11344, 0, 1 },
+  { 0x11347, 1, 0 }, { 0x11348, 0, 1 },
+  { 0x1134B, 1, 0 }, { 0x1134D, 0, 1 },
+  { 0x11357, 1, 1 },
+  { 0x1135D, 1, 0 }, { 0x11363, 0, 1 },
+  { 0x11366, 1, 0 }, { 0x1136C, 0, 1 },
+  { 0x11370, 1, 0 }, { 0x11374, 0, 1 }
+};
+static const uc_interval_t script_pahawh_hmong_intervals[] =
+{
+  { 0x16B00, 1, 0 }, { 0x16B45, 0, 1 },
+  { 0x16B50, 1, 0 }, { 0x16B59, 0, 1 },
+  { 0x16B5B, 1, 0 }, { 0x16B61, 0, 1 },
+  { 0x16B63, 1, 0 }, { 0x16B77, 0, 1 },
+  { 0x16B7D, 1, 0 }, { 0x16B8F, 0, 1 }
+};
+static const uc_interval_t script_khojki_intervals[] =
+{
+  { 0x11200, 1, 0 }, { 0x11211, 0, 1 },
+  { 0x11213, 1, 0 }, { 0x1123D, 0, 1 }
+};
+static const uc_interval_t script_linear_a_intervals[] =
+{
+  { 0x10600, 1, 0 }, { 0x10736, 0, 1 },
+  { 0x10740, 1, 0 }, { 0x10755, 0, 1 },
+  { 0x10760, 1, 0 }, { 0x10767, 0, 1 }
+};
+static const uc_interval_t script_mahajani_intervals[] =
+{
+  { 0x11150, 1, 0 }, { 0x11176, 0, 1 }
+};
+static const uc_interval_t script_manichaean_intervals[] =
+{
+  { 0x10AC0, 1, 0 }, { 0x10AE6, 0, 1 },
+  { 0x10AEB, 1, 0 }, { 0x10AF6, 0, 1 }
+};
+static const uc_interval_t script_mende_kikakui_intervals[] =
+{
+  { 0x1E800, 1, 0 }, { 0x1E8C4, 0, 1 },
+  { 0x1E8C7, 1, 0 }, { 0x1E8D6, 0, 1 }
+};
+static const uc_interval_t script_modi_intervals[] =
+{
+  { 0x11600, 1, 0 }, { 0x11644, 0, 1 },
+  { 0x11650, 1, 0 }, { 0x11659, 0, 1 }
+};
+static const uc_interval_t script_mro_intervals[] =
+{
+  { 0x16A40, 1, 0 }, { 0x16A5E, 0, 1 },
+  { 0x16A60, 1, 0 }, { 0x16A69, 0, 1 },
+  { 0x16A6E, 1, 0 }, { 0x16A6F, 0, 1 }
+};
+static const uc_interval_t script_old_north_arabian_intervals[] =
+{
+  { 0x10A80, 1, 0 }, { 0x10A9F, 0, 1 }
+};
+static const uc_interval_t script_nabataean_intervals[] =
+{
+  { 0x10880, 1, 0 }, { 0x1089E, 0, 1 },
+  { 0x108A7, 1, 0 }, { 0x108AF, 0, 1 }
+};
+static const uc_interval_t script_palmyrene_intervals[] =
+{
+  { 0x10860, 1, 0 }, { 0x1087F, 0, 1 }
+};
+static const uc_interval_t script_pau_cin_hau_intervals[] =
+{
+  { 0x11AC0, 1, 0 }, { 0x11AF8, 0, 1 }
+};
+static const uc_interval_t script_old_permic_intervals[] =
+{
+  { 0x10350, 1, 0 }, { 0x1037A, 0, 1 }
+};
+static const uc_interval_t script_psalter_pahlavi_intervals[] =
+{
+  { 0x10B80, 1, 0 }, { 0x10B91, 0, 1 },
+  { 0x10B99, 1, 0 }, { 0x10B9C, 0, 1 },
+  { 0x10BA9, 1, 0 }, { 0x10BAF, 0, 1 }
+};
+static const uc_interval_t script_siddham_intervals[] =
+{
+  { 0x11580, 1, 0 }, { 0x115B5, 0, 1 },
+  { 0x115B8, 1, 0 }, { 0x115C9, 0, 1 }
+};
+static const uc_interval_t script_khudawadi_intervals[] =
+{
+  { 0x112B0, 1, 0 }, { 0x112EA, 0, 1 },
+  { 0x112F0, 1, 0 }, { 0x112F9, 0, 1 }
+};
+static const uc_interval_t script_tirhuta_intervals[] =
+{
+  { 0x11480, 1, 0 }, { 0x114C7, 0, 1 },
+  { 0x114D0, 1, 0 }, { 0x114D9, 0, 1 }
+};
+static const uc_interval_t script_warang_citi_intervals[] =
+{
+  { 0x118A0, 1, 0 }, { 0x118F2, 0, 1 },
+  { 0x118FF, 1, 1 }
+};
+static const uc_script_t scripts[125] =
 {
   {
     sizeof (script_common_intervals) / sizeof (uc_interval_t),
@@ -1546,6 +1693,121 @@
     sizeof (script_takri_intervals) / sizeof (uc_interval_t),
     script_takri_intervals,
     "Takri"
+  },
+  {
+    sizeof (script_caucasian_albanian_intervals) / sizeof (uc_interval_t),
+    script_caucasian_albanian_intervals,
+    "Caucasian_Albanian"
+  },
+  {
+    sizeof (script_bassa_vah_intervals) / sizeof (uc_interval_t),
+    script_bassa_vah_intervals,
+    "Bassa_Vah"
+  },
+  {
+    sizeof (script_duployan_intervals) / sizeof (uc_interval_t),
+    script_duployan_intervals,
+    "Duployan"
+  },
+  {
+    sizeof (script_elbasan_intervals) / sizeof (uc_interval_t),
+    script_elbasan_intervals,
+    "Elbasan"
+  },
+  {
+    sizeof (script_grantha_intervals) / sizeof (uc_interval_t),
+    script_grantha_intervals,
+    "Grantha"
+  },
+  {
+    sizeof (script_pahawh_hmong_intervals) / sizeof (uc_interval_t),
+    script_pahawh_hmong_intervals,
+    "Pahawh_Hmong"
+  },
+  {
+    sizeof (script_khojki_intervals) / sizeof (uc_interval_t),
+    script_khojki_intervals,
+    "Khojki"
+  },
+  {
+    sizeof (script_linear_a_intervals) / sizeof (uc_interval_t),
+    script_linear_a_intervals,
+    "Linear_A"
+  },
+  {
+    sizeof (script_mahajani_intervals) / sizeof (uc_interval_t),
+    script_mahajani_intervals,
+    "Mahajani"
+  },
+  {
+    sizeof (script_manichaean_intervals) / sizeof (uc_interval_t),
+    script_manichaean_intervals,
+    "Manichaean"
+  },
+  {
+    sizeof (script_mende_kikakui_intervals) / sizeof (uc_interval_t),
+    script_mende_kikakui_intervals,
+    "Mende_Kikakui"
+  },
+  {
+    sizeof (script_modi_intervals) / sizeof (uc_interval_t),
+    script_modi_intervals,
+    "Modi"
+  },
+  {
+    sizeof (script_mro_intervals) / sizeof (uc_interval_t),
+    script_mro_intervals,
+    "Mro"
+  },
+  {
+    sizeof (script_old_north_arabian_intervals) / sizeof (uc_interval_t),
+    script_old_north_arabian_intervals,
+    "Old_North_Arabian"
+  },
+  {
+    sizeof (script_nabataean_intervals) / sizeof (uc_interval_t),
+    script_nabataean_intervals,
+    "Nabataean"
+  },
+  {
+    sizeof (script_palmyrene_intervals) / sizeof (uc_interval_t),
+    script_palmyrene_intervals,
+    "Palmyrene"
+  },
+  {
+    sizeof (script_pau_cin_hau_intervals) / sizeof (uc_interval_t),
+    script_pau_cin_hau_intervals,
+    "Pau_Cin_Hau"
+  },
+  {
+    sizeof (script_old_permic_intervals) / sizeof (uc_interval_t),
+    script_old_permic_intervals,
+    "Old_Permic"
+  },
+  {
+    sizeof (script_psalter_pahlavi_intervals) / sizeof (uc_interval_t),
+    script_psalter_pahlavi_intervals,
+    "Psalter_Pahlavi"
+  },
+  {
+    sizeof (script_siddham_intervals) / sizeof (uc_interval_t),
+    script_siddham_intervals,
+    "Siddham"
+  },
+  {
+    sizeof (script_khudawadi_intervals) / sizeof (uc_interval_t),
+    script_khudawadi_intervals,
+    "Khudawadi"
+  },
+  {
+    sizeof (script_tirhuta_intervals) / sizeof (uc_interval_t),
+    script_tirhuta_intervals,
+    "Tirhuta"
+  },
+  {
+    sizeof (script_warang_citi_intervals) / sizeof (uc_interval_t),
+    script_warang_citi_intervals,
+    "Warang_Citi"
   }
 };
 #define script_header_0 16
@@ -1558,7 +1820,7 @@
   {
     int level1[15];
     short level2[4 << 9];
-    unsigned char level3[171 << 7];
+    unsigned char level3[195 << 7];
   }
 u_script =
 {
@@ -1576,8 +1838,8 @@
      5248,  5376,  5504,  5632,  5760,  5888,  6016,  6144,
      6272,  6400,  6528,  6656,   256,   256,  6784,  6912,
      7040,  7168,  7296,  7424,  7552,  7552,  7552,  7680,
-     7808,  7552,  7552,  7552,  7552,  7552,  7936,  7552,
-     8064,  8064,  7552,  7552,  7552,  7552,  8192,    -1,
+     7808,  7552,  7552,  7552,  7552,  7552,  7552,  7552,
+     7936,  7936,  7552,  7552,  7552,  7552,  8064,  8192,
      8320,  8448,  8576,  8704,  8832,  8960,  9088,  9216,
      9344,  9472,  9600,  9728,  9856,  9984, 10112,  7552,
      9088,  9088,  9088,  9088,  9088,  9088,  9088,  9088,
@@ -1632,19 +1894,19 @@
        -1,    -1,  9088,  9088, 12544, 12672, 12800, 12928,
     13056, 13056, 13184, 13312, 13440, 13568, 13696, 13824,
     13952, 14080, 14208, 14336,    -1, 14464, 14592, 14720,
-    14848, 14976,    -1,    -1,    -1,    -1,    -1,    -1,
-    15104,    -1, 15232, 15360, 15488,    -1, 15616,    -1,
-    15744,    -1,    -1,    -1, 15872,    -1,    -1,    -1,
-    16000, 16128, 16256, 16384,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1, 16512,    -1,    -1,
+    14848, 14976, 15104,    -1, 15232, 15232, 15360,    -1,
+    15488, 15616, 15744, 15872, 16000, 16128, 16256, 16384,
+    16512,    -1,    -1,    -1, 16640,    -1,    -1,    -1,
+    16768, 16896, 17024, 17152, 17280, 17408, 17536,    -1,
+       -1, 17664,    -1, 17792, 17920, 18048,    -1,    -1,
+       -1, 18176,    -1,    -1,    -1, 18304,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    18432, 18432, 18432, 18432, 18432, 18432, 18432, 18560,
+    18688,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    16640, 16640, 16640, 16640, 16640, 16640, 16768,    -1,
-    16896,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    17024, 17024, 17024, 17024, 17024, 17024, 17024, 17024,
-    17152,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    18816, 18816, 18816, 18816, 18816, 18816, 18816, 18816,
+    18944,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -1657,8 +1919,8 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    17280, 17280, 17280, 17280, 17408,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1, 17536, 17664,
+    19072, 19072, 19072, 19072, 19200, 19328, 19456, 19584,
+       -1,    -1,    -1,    -1,    -1,    -1, 19712, 19840,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -1675,25 +1937,25 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    17792,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    19968,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    20096, 20224,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     7552, 17920, 18048, 18176, 18304,    -1, 18432,    -1,
-    18560, 18688, 18816,  7552,  7552, 18944,  7552, 19072,
+     7552, 20352, 20480, 20608, 20736,    -1, 20864,    -1,
+    20992, 21120, 21248,  7552,  7552, 21376,  7552, 21504,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1, 19200, 19328,    -1,    -1,
-    19456, 19584, 19712, 19840, 19968,    -1, 20096, 20224,
-    20352, 20480, 20608, 20736, 20864, 20992,  7680,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    21632, 21760,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1, 21888, 22016,    -1,    -1,
+    22144, 22272, 22400, 22528, 22656,    -1, 22784, 22912,
+     7552, 23040, 23168, 23296, 23424, 23552, 23680, 23808,
+    23936, 24064,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
      9088,  9088,  9088,  9088,  9088,  9088,  9088,  9088,
      9088,  9088,  9088,  9088,  9088,  9088,  9088,  9088,
@@ -1736,12 +1998,12 @@
      9088,  9088,  9088,  9088,  9088,  9088,  9088,  9088,
      9088,  9088,  9088,  9088,  9088,  9088,  9088,  9088,
      9088,  9088,  9088,  9088,  9088,  9088,  9088,  9088,
-     9088,  9088,  9088,  9088,  9088, 21120,  9088,  9088,
+     9088,  9088,  9088,  9088,  9088, 24192,  9088,  9088,
      9088,  9088,  9088,  9088,  9088,  9088,  9088,  9088,
      9088,  9088,  9088,  9088,  9088,  9088,  9088,  9088,
      9088,  9088,  9088,  9088,  9088,  9088,  9088,  9088,
-     9088,  9088,  9088,  9088,  9088,  9088, 21248,  9088,
-    21376,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     9088,  9088,  9088,  9088,  9088,  9088, 24320,  9088,
+    24448,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -1757,9 +2019,9 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     9088,  9088,  9088,  9088, 21376,    -1,    -1,    -1,
+     9088,  9088,  9088,  9088, 24448,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    21504,    -1, 21632, 21760,    -1,    -1,    -1,    -1,
+    24576,    -1, 24704, 24832,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -1904,7 +2166,7 @@
      40,  40,  40,  40,  40,  40,  40,  40,
      40,  40,  40,  40,  40,  40,  40,  40,
       2,   2,   2,   2,   0,   2,   2,   2,
-    255, 255,   2,   2,   2,   2,   0, 255,
+    255, 255,   2,   2,   2,   2,   0,   2,
     255, 255, 255, 255,   2,   0,   2,   0,
       2,   2,   2, 255,   2, 255,   2,   2,
       2,   2,   2,   2,   2,   2,   2,   2,
@@ -1958,7 +2220,7 @@
       3,   3,   3,   3,   3,   3,   3,   3,
       3,   3,   3,   3,   3,   3,   3,   3,
       3,   3,   3,   3,   3,   3,   3,   3,
-    255, 255, 255, 255, 255, 255, 255, 255,
+      3,   3,   3,   3,   3,   3,   3,   3,
     255,   4,   4,   4,   4,   4,   4,   4,
       4,   4,   4,   4,   4,   4,   4,   4,
       4,   4,   4,   4,   4,   4,   4,   4,
@@ -1970,7 +2232,7 @@
       4,   4,   4,   4,   4,   4,   4,   4,
       4,   4,   4,   4,   4,   4,   4,   4,
       4,   4,   4,   4,   4,   4,   4,   4,
-    255,   0,   4, 255, 255, 255, 255,   4,
+    255,   0,   4, 255, 255,   4,   4,   4,
     255,   5,   5,   5,   5,   5,   5,   5,
       5,   5,   5,   5,   5,   5,   5,   5,
       5,   5,   5,   5,   5,   5,   5,   5,
@@ -1985,10 +2247,10 @@
       5,   5,   5, 255, 255, 255, 255, 255,
       5,   5,   5,   5,   5, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
-      6,   6,   6,   6,   6, 255,   6,   6,
+      6,   6,   6,   6,   6,   0,   6,   6,
       6,   6,   6,   6,   0,   6,   6,   6,
       6,   6,   6,   6,   6,   6,   6,   6,
-      6,   6,   6,   0,   6, 255,   6,   0,
+      6,   6,   6,   0,   0, 255,   6,   0,
       6,   6,   6,   6,   6,   6,   6,   6,
       6,   6,   6,   6,   6,   6,   6,   6,
       6,   6,   6,   6,   6,   6,   6,   6,
@@ -2069,9 +2331,9 @@
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
-      6, 255,   6,   6,   6,   6,   6,   6,
-      6,   6,   6,   6,   6, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
+      6,   6,   6,   6,   6,   6,   6,   6,
+      6,   6,   6,   6,   6,   6,   6,   6,
+      6,   6,   6, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
@@ -2080,7 +2342,7 @@
     255, 255, 255, 255,   6,   6,   6,   6,
       6,   6,   6,   6,   6,   6,   6,   6,
       6,   6,   6,   6,   6,   6,   6,   6,
-      6,   6,   6,   6,   6,   6,   6, 255,
+      6,   6,   6,   6,   6,   6,   6,   6,
       9,   9,   9,   9,   9,   9,   9,   9,
       9,   9,   9,   9,   9,   9,   9,   9,
       9,   9,   9,   9,   9,   9,   9,   9,
@@ -2096,8 +2358,8 @@
       9,   9,   9,   9,   0,   0,   9,   9,
       9,   9,   9,   9,   9,   9,   9,   9,
       9,   9,   9,   9,   9,   9,   9,   9,
-    255,   9,   9,   9,   9,   9,   9,   9,
-    255,  10,  10,  10, 255,  10,  10,  10,
+      9,   9,   9,   9,   9,   9,   9,   9,
+     10,  10,  10,  10, 255,  10,  10,  10,
      10,  10,  10,  10,  10, 255, 255,  10,
      10, 255, 255,  10,  10,  10,  10,  10,
      10,  10,  10,  10,  10,  10,  10,  10,
@@ -2177,13 +2439,13 @@
      14,  14,  14,  14,  14,  14,  14,  14,
      14,  14,  14,  14,  14,  14,  14,  14,
      14,  14,  14, 255, 255, 255, 255, 255,
-    255,  15,  15,  15, 255,  15,  15,  15,
+     15,  15,  15,  15, 255,  15,  15,  15,
      15,  15,  15,  15,  15, 255,  15,  15,
      15, 255,  15,  15,  15,  15,  15,  15,
      15,  15,  15,  15,  15,  15,  15,  15,
      15,  15,  15,  15,  15,  15,  15,  15,
      15, 255,  15,  15,  15,  15,  15,  15,
-     15,  15,  15,  15, 255,  15,  15,  15,
+     15,  15,  15,  15,  15,  15,  15,  15,
      15,  15, 255, 255, 255,  15,  15,  15,
      15,  15,  15,  15,  15, 255,  15,  15,
      15, 255,  15,  15,  15,  15, 255, 255,
@@ -2193,7 +2455,7 @@
      15,  15,  15,  15,  15,  15,  15,  15,
     255, 255, 255, 255, 255, 255, 255, 255,
      15,  15,  15,  15,  15,  15,  15,  15,
-    255, 255,  16,  16, 255,  16,  16,  16,
+    255,  16,  16,  16, 255,  16,  16,  16,
      16,  16,  16,  16,  16, 255,  16,  16,
      16, 255,  16,  16,  16,  16,  16,  16,
      16,  16,  16,  16,  16,  16,  16,  16,
@@ -2209,7 +2471,7 @@
      16,  16,  16,  16,  16,  16,  16,  16,
     255,  16,  16, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255,  17,  17, 255,  17,  17,  17,
+    255,  17,  17,  17, 255,  17,  17,  17,
      17,  17,  17,  17,  17, 255,  17,  17,
      17, 255,  17,  17,  17,  17,  17,  17,
      17,  17,  17,  17,  17,  17,  17,  17,
@@ -2237,8 +2499,8 @@
     255, 255,  18, 255, 255, 255, 255,  18,
      18,  18,  18,  18,  18, 255,  18, 255,
      18,  18,  18,  18,  18,  18,  18,  18,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255,  18,  18,
+     18,  18,  18,  18,  18,  18,  18,  18,
     255, 255,  18,  18,  18, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255,  19,  19,  19,  19,  19,  19,  19,
@@ -2447,8 +2709,8 @@
      29,  29,  29,  29,  29,  29,  29,  29,
      29,  29,  29,  29,  29,  29,  29,  29,
      29,  29,  29,   0,   0,   0,  29,  29,
+     29,  29,  29,  29,  29,  29,  29,  29,
      29, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
      41,  41,  41,  41,  41,  41,  41,  41,
      41,  41,  41,  41,  41, 255,  41,  41,
      41,  41,  41,  41,  41, 255, 255, 255,
@@ -2516,7 +2778,7 @@
      45,  45,  45,  45,  45,  45,  45,  45,
      45,  45,  45,  45,  45,  45,  45,  45,
      45,  45,  45,  45,  45,  45,  45,  45,
-     45,  45,  45,  45,  45, 255, 255, 255,
+     45,  45,  45,  45,  45,  45,  45, 255,
      45,  45,  45,  45,  45,  45,  45,  45,
      45,  45,  45,  45, 255, 255, 255, 255,
      45,  45,  45,  45,  45,  45,  45,  45,
@@ -2567,8 +2829,8 @@
      77,  77, 255, 255, 255, 255, 255, 255,
      77,  77,  77,  77,  77,  77,  77,  77,
      77,  77,  77,  77,  77,  77, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
+     40,  40,  40,  40,  40,  40,  40,  40,
+     40,  40,  40,  40,  40,  40,  40, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
@@ -2640,7 +2902,7 @@
      40,   0,  40,  40,  40,  40,  40,  40,
      40,   0,   0,   0,   0,  40,   0,   0,
       0,   0,   0,   0,  40,   0,   0, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
+     40,  40, 255, 255, 255, 255, 255, 255,
       1,   1,   1,   1,   1,   1,   1,   1,
       1,   1,   1,   1,   1,   1,   1,   1,
       1,   1,   1,   1,   1,   1,   1,   1,
@@ -2669,9 +2931,9 @@
      40,  40,  40,  40,  40,  40,  40,  40,
      40,  40,  40,  40,  40,  40,  40,  40,
      40,  40,  40,  40,  40,  40,  40,  40,
-     40,  40,  40,  40,  40,  40,  40, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
+     40,  40,  40,  40,  40,  40,  40,  40,
+     40,  40,  40,  40,  40,  40,  40,  40,
+     40,  40,  40,  40,  40,  40, 255, 255,
     255, 255, 255, 255,  40,  40,  40,  40,
       2,   2,   2,   2,   2,   2,   2,   2,
       2,   2,   2,   2,   2,   2,   2,   2,
@@ -2728,7 +2990,7 @@
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0, 255, 255, 255, 255, 255,
+      0,   0,   0,   0,   0,   0, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
      40,  40,  40,  40,  40,  40,  40,  40,
@@ -2799,8 +3061,8 @@
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0, 255, 255, 255, 255, 255,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
@@ -2817,22 +3079,6 @@
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
-    255,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
      52,  52,  52,  52,  52,  52,  52,  52,
      52,  52,  52,  52,  52,  52,  52,  52,
      52,  52,  52,  52,  52,  52,  52,  52,
@@ -2858,13 +3104,29 @@
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0, 255, 255, 255,
-      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0, 255, 255,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0, 255, 255,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0, 255, 255, 255,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0, 255,   0,   0,   0,   0,   0,   0,
       0,   0, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
      56,  56,  56,  56,  56,  56,  56,  56,
      56,  56,  56,  56,  56,  56,  56,  56,
      56,  56,  56,  56,  56,  56,  56,  56,
@@ -2936,8 +3198,8 @@
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
@@ -3204,7 +3466,7 @@
       3,   3,   3,   3,   3,   3,   3,   3,
       3,   3,   3,   3,   3,   3,   3,   3,
       3,   3,   3,   3,   3,   3,   3,   3,
-    255, 255, 255, 255, 255, 255, 255,   3,
+      3,   3,   3,   3,   3,   3, 255,   3,
      83,  83,  83,  83,  83,  83,  83,  83,
      83,  83,  83,  83,  83,  83,  83,  83,
      83,  83,  83,  83,  83,  83,  83,  83,
@@ -3235,19 +3497,19 @@
       1,   1,   1,   1,   1,   1,   1,   1,
       1,   1,   1,   1,   1,   1,   1,   1,
       0,   0,   0,   1,   1,   1,   1, 255,
-      1,   1,   1,   1, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
+      1,   1,   1,   1,   1,   1,   1,   1,
+      1,   1,   1,   1,   1,   1,   1,   1,
       1,   1,   1,   1,   1,   1,   1,   1,
-      1,   1,   1, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
+      1,   1,   1,   1,   1,   1, 255, 255,
+      1,   1, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255,   1,
       1,   1,   1,   1,   1,   1,   1,   1,
      58,  58,  58,  58,  58,  58,  58,  58,
      58,  58,  58,  58,  58,  58,  58,  58,
@@ -3286,7 +3548,7 @@
      71,  71,  71,  71,  71,  71,  71,  71,
      71,  71,  71,  71,  71,  71,  71,  71,
      71,  71,  71,  71,  71,  71,  71,  71,
-     71,  71,  71,  71,  71,  71,  71,  71,
+     71,  71,  71,  71,  71,  71,   0,  71,
      72,  72,  72,  72,  72,  72,  72,  72,
      72,  72,  72,  72,  72,  72,  72,  72,
      72,  72,  72,  72,  72,  72,  72,  72,
@@ -3309,10 +3571,10 @@
      84,  84,  84,  84,  84,  84, 255,   0,
      84,  84,  84,  84,  84,  84,  84,  84,
      84,  84, 255, 255, 255, 255,  84,  84,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
+     22,  22,  22,  22,  22,  22,  22,  22,
+     22,  22,  22,  22,  22,  22,  22,  22,
+     22,  22,  22,  22,  22,  22,  22,  22,
+     22,  22,  22,  22,  22,  22,  22, 255,
      76,  76,  76,  76,  76,  76,  76,  76,
      76,  76,  76,  76,  76,  76,  76,  76,
      76,  76,  76,  76,  76,  76,  76,  76,
@@ -3328,7 +3590,7 @@
      22,  22,  22,  22,  22,  22,  22,  22,
      22,  22,  22,  22,  22,  22,  22,  22,
      22,  22,  22,  22,  22,  22,  22,  22,
-     22,  22,  22,  22, 255, 255, 255, 255,
+     22,  22,  22,  22,  22,  22,  22,  22,
      78,  78,  78,  78,  78,  78,  78,  78,
      78,  78,  78,  78,  78,  78,  78,  78,
      78,  78,  78,  78,  78,  78,  78,  78,
@@ -3351,13 +3613,13 @@
     255, 255, 255, 255, 255, 255, 255, 255,
      25,  25,  25,  25,  25,  25,  25, 255,
      25,  25,  25,  25,  25,  25,  25, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
+      1,   1,   1,   1,   1,   1,   1,   1,
+      1,   1,   1,   1,   1,   1,   1,   1,
+      1,   1,   1,   1,   1,   1,   1,   1,
+      1,   1,   1,   1,   1,   1,   1,   1,
+      1,   1,   1,   1,   1,   1,   1,   1,
+      1,   1,   1,   0,   1,   1,   1,   1,
+    255, 255, 255, 255,   1,   2, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
@@ -3504,13 +3766,13 @@
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
       6,   6,   6,   6,   6,   6,   6,   6,
-      6,   6,   6,   6,   6,   0, 255, 255,
+      6,   6,   6,   6,   6,   6, 255, 255,
      40,  40,  40,  40,  40,  40,  40,  40,
      40,  40,  40,  40,  40,  40,  40,  40,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0, 255, 255, 255, 255, 255, 255,
-     40,  40,  40,  40,  40,  40,  40, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
+     40,  40,  40,  40,  40,  40,  40,  40,
+     40,  40,  40,  40,  40,  40, 255, 255,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
@@ -3618,10 +3880,10 @@
       2,   2,   2,   2,   2,   2,   2,   2,
       2,   2,   2,   2,   2,   2,   2,   2,
       2,   2,   2,   2,   2,   2,   2,   2,
-      2,   2,   2, 255, 255, 255, 255, 255,
+      2,   2,   2,   2,   2, 255, 255, 255,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
+      2, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
@@ -3645,26 +3907,26 @@
      74,  74,  74,  74,  74,  74,  74,  74,
      74, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
+     40,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0, 255, 255, 255, 255,
      37,  37,  37,  37,  37,  37,  37,  37,
      37,  37,  37,  37,  37,  37,  37,  37,
      37,  37,  37,  37,  37,  37,  37,  37,
-     37,  37,  37,  37,  37,  37,  37, 255,
+     37,  37,  37,  37,  37,  37,  37,  37,
      37,  37,  37,  37, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
      38,  38,  38,  38,  38,  38,  38,  38,
      38,  38,  38,  38,  38,  38,  38,  38,
      38,  38,  38,  38,  38,  38,  38,  38,
      38,  38,  38, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
+    119, 119, 119, 119, 119, 119, 119, 119,
+    119, 119, 119, 119, 119, 119, 119, 119,
+    119, 119, 119, 119, 119, 119, 119, 119,
+    119, 119, 119, 119, 119, 119, 119, 119,
+    119, 119, 119, 119, 119, 119, 119, 119,
+    119, 119, 119, 255, 255, 255, 255, 255,
      48,  48,  48,  48,  48,  48,  48,  48,
      48,  48,  48,  48,  48,  48,  48,  48,
      48,  48,  48,  48,  48,  48,  48,  48,
@@ -3713,6 +3975,54 @@
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
+    105, 105, 105, 105, 105, 105, 105, 105,
+    105, 105, 105, 105, 105, 105, 105, 105,
+    105, 105, 105, 105, 105, 105, 105, 105,
+    105, 105, 105, 105, 105, 105, 105, 105,
+    105, 105, 105, 105, 105, 105, 105, 105,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    102, 102, 102, 102, 102, 102, 102, 102,
+    102, 102, 102, 102, 102, 102, 102, 102,
+    102, 102, 102, 102, 102, 102, 102, 102,
+    102, 102, 102, 102, 102, 102, 102, 102,
+    102, 102, 102, 102, 102, 102, 102, 102,
+    102, 102, 102, 102, 102, 102, 102, 102,
+    102, 102, 102, 102, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 102,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 109, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    109, 109, 109, 109, 109, 109, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    109, 109, 109, 109, 109, 109, 109, 109,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
      51,  51,  51,  51,  51,  51, 255, 255,
      51, 255,  51,  51,  51,  51,  51,  51,
      51,  51,  51,  51,  51,  51,  51,  51,
@@ -3725,6 +4035,22 @@
      86,  86,  86,  86,  86,  86,  86,  86,
      86,  86,  86,  86,  86,  86, 255,  86,
      86,  86,  86,  86,  86,  86,  86,  86,
+    117, 117, 117, 117, 117, 117, 117, 117,
+    117, 117, 117, 117, 117, 117, 117, 117,
+    117, 117, 117, 117, 117, 117, 117, 117,
+    117, 117, 117, 117, 117, 117, 117, 117,
+    116, 116, 116, 116, 116, 116, 116, 116,
+    116, 116, 116, 116, 116, 116, 116, 116,
+    116, 116, 116, 116, 116, 116, 116, 116,
+    116, 116, 116, 116, 116, 116, 116, 255,
+    255, 255, 255, 255, 255, 255, 255, 116,
+    116, 116, 116, 116, 116, 116, 116, 116,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
@@ -3777,6 +4103,22 @@
      87,  87,  87,  87,  87,  87,  87,  87,
      87,  87,  87,  87,  87,  87,  87,  87,
      87,  87,  87,  87,  87,  87,  87,  87,
+    115, 115, 115, 115, 115, 115, 115, 115,
+    115, 115, 115, 115, 115, 115, 115, 115,
+    115, 115, 115, 115, 115, 115, 115, 115,
+    115, 115, 115, 115, 115, 115, 115, 115,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    111, 111, 111, 111, 111, 111, 111, 111,
+    111, 111, 111, 111, 111, 111, 111, 111,
+    111, 111, 111, 111, 111, 111, 111, 111,
+    111, 111, 111, 111, 111, 111, 111, 111,
+    111, 111, 111, 111, 111, 111, 111, 255,
+    255, 255, 255, 111, 111, 111, 111, 111,
+    111, 111, 111, 111, 111, 111, 111, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
      79,  79,  79,  79,  79,  79,  79,  79,
      79,  79,  79,  79,  79,  79,  79,  79,
      79,  79,  79,  79,  79,  79,  79,  79,
@@ -3793,6 +4135,22 @@
      89,  89,  89,  89,  89,  89,  89,  89,
      89,  89,  89, 255, 255, 255, 255, 255,
      89,  89,  89,  89,  89,  89,  89,  89,
+    120, 120, 120, 120, 120, 120, 120, 120,
+    120, 120, 120, 120, 120, 120, 120, 120,
+    120, 120, 255, 255, 255, 255, 255, 255,
+    255, 120, 120, 120, 120, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 120, 120, 120, 120, 120, 120, 120,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
      90,  90,  90,  90,  90,  90,  90,  90,
      90,  90,  90,  90,  90,  90,  90,  90,
      90,  90,  90,  90,  90,  90,  90,  90,
@@ -3840,7 +4198,7 @@
      93,  93,  93,  93,  93,  93,  93,  93,
      93,  93,  93,  93,  93,  93,  93,  93,
     255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255,  93,
      91,  91,  91,  91,  91,  91,  91,  91,
      91,  91,  91,  91,  91,  91,  91,  91,
      91,  91,  91,  91,  91,  91,  91,  91,
@@ -3867,11 +4225,11 @@
      95,  95,  95,  95,  95,  95,  95,  95,
      95,  95,  95,  95, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
+    110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 110,
+    110, 110, 110, 110, 110, 110, 110, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
      99,  99,  99,  99,  99,  99,  99,  99,
      99,  99,  99,  99,  99,  99,  99,  99,
@@ -3882,9 +4240,105 @@
      99,  99,  99,  99,  99,  99,  99,  99,
      99,  99,  99,  99,  99,  99,  99,  99,
      99,  99,  99,  99,  99,  99,  99,  99,
-     99, 255, 255, 255, 255, 255, 255, 255,
+     99, 255, 255, 255, 255,  99, 255, 255,
      99,  99,  99,  99,  99,  99,  99,  99,
-     99,  99, 255, 255, 255, 255, 255, 255,
+     99,  99,  99, 255, 255, 255, 255, 255,
+    255,  18,  18,  18,  18,  18,  18,  18,
+     18,  18,  18,  18,  18,  18,  18,  18,
+     18,  18,  18,  18,  18, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    108, 108, 108, 108, 108, 108, 108, 108,
+    108, 108, 108, 108, 108, 108, 108, 108,
+    108, 108, 255, 108, 108, 108, 108, 108,
+    108, 108, 108, 108, 108, 108, 108, 108,
+    108, 108, 108, 108, 108, 108, 108, 108,
+    108, 108, 108, 108, 108, 108, 108, 108,
+    108, 108, 108, 108, 108, 108, 108, 108,
+    108, 108, 108, 108, 108, 108, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    122, 122, 122, 122, 122, 122, 122, 122,
+    122, 122, 122, 122, 122, 122, 122, 122,
+    122, 122, 122, 122, 122, 122, 122, 122,
+    122, 122, 122, 122, 122, 122, 122, 122,
+    122, 122, 122, 122, 122, 122, 122, 122,
+    122, 122, 122, 122, 122, 122, 122, 122,
+    122, 122, 122, 122, 122, 122, 122, 122,
+    122, 122, 122, 255, 255, 255, 255, 255,
+    122, 122, 122, 122, 122, 122, 122, 122,
+    122, 122, 255, 255, 255, 255, 255, 255,
+    255, 106, 106, 106, 255, 106, 106, 106,
+    106, 106, 106, 106, 106, 255, 255, 106,
+    106, 255, 255, 106, 106, 106, 106, 106,
+    106, 106, 106, 106, 106, 106, 106, 106,
+    106, 106, 106, 106, 106, 106, 106, 106,
+    106, 255, 106, 106, 106, 106, 106, 106,
+    106, 255, 106, 106, 255, 106, 106, 106,
+    106, 106, 255, 255, 106, 106, 106, 106,
+    106, 106, 106, 106, 106, 255, 255, 106,
+    106, 255, 255, 106, 106, 106, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 106,
+    255, 255, 255, 255, 255, 106, 106, 106,
+    106, 106, 106, 106, 255, 255, 106, 106,
+    106, 106, 106, 106, 106, 255, 255, 255,
+    106, 106, 106, 106, 106, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    123, 123, 123, 123, 123, 123, 123, 123,
+    123, 123, 123, 123, 123, 123, 123, 123,
+    123, 123, 123, 123, 123, 123, 123, 123,
+    123, 123, 123, 123, 123, 123, 123, 123,
+    123, 123, 123, 123, 123, 123, 123, 123,
+    123, 123, 123, 123, 123, 123, 123, 123,
+    123, 123, 123, 123, 123, 123, 123, 123,
+    123, 123, 123, 123, 123, 123, 123, 123,
+    123, 123, 123, 123, 123, 123, 123, 123,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    123, 123, 123, 123, 123, 123, 123, 123,
+    123, 123, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 255, 255,
+    121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 121, 121, 121, 121, 121, 121,
+    121, 121, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    113, 113, 113, 113, 113, 113, 113, 113,
+    113, 113, 113, 113, 113, 113, 113, 113,
+    113, 113, 113, 113, 113, 113, 113, 113,
+    113, 113, 113, 113, 113, 113, 113, 113,
+    113, 113, 113, 113, 113, 113, 113, 113,
+    113, 113, 113, 113, 113, 113, 113, 113,
+    113, 113, 113, 113, 113, 113, 113, 113,
+    113, 113, 113, 113, 113, 113, 113, 113,
+    113, 113, 113, 113, 113, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    113, 113, 113, 113, 113, 113, 113, 113,
+    113, 113, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
@@ -3905,6 +4359,70 @@
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    124, 124, 124, 124, 124, 124, 124, 124,
+    124, 124, 124, 124, 124, 124, 124, 124,
+    124, 124, 124, 124, 124, 124, 124, 124,
+    124, 124, 124, 124, 124, 124, 124, 124,
+    124, 124, 124, 124, 124, 124, 124, 124,
+    124, 124, 124, 124, 124, 124, 124, 124,
+    124, 124, 124, 124, 124, 124, 124, 124,
+    124, 124, 124, 124, 124, 124, 124, 124,
+    124, 124, 124, 124, 124, 124, 124, 124,
+    124, 124, 124, 124, 124, 124, 124, 124,
+    124, 124, 124, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 124,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    118, 118, 118, 118, 118, 118, 118, 118,
+    118, 118, 118, 118, 118, 118, 118, 118,
+    118, 118, 118, 118, 118, 118, 118, 118,
+    118, 118, 118, 118, 118, 118, 118, 118,
+    118, 118, 118, 118, 118, 118, 118, 118,
+    118, 118, 118, 118, 118, 118, 118, 118,
+    118, 118, 118, 118, 118, 118, 118, 118,
+    118, 255, 255, 255, 255, 255, 255, 255,
+     62,  62,  62,  62,  62,  62,  62,  62,
+     62,  62,  62,  62,  62,  62,  62,  62,
+     62,  62,  62,  62,  62,  62,  62,  62,
+     62,  62,  62,  62,  62,  62,  62,  62,
+     62,  62,  62,  62,  62,  62,  62,  62,
+     62,  62,  62,  62,  62,  62,  62,  62,
+     62,  62,  62,  62,  62,  62,  62,  62,
+     62,  62,  62,  62,  62,  62,  62,  62,
+     62,  62,  62,  62,  62,  62,  62,  62,
+     62,  62,  62,  62,  62,  62,  62,  62,
+     62,  62,  62,  62,  62,  62,  62,  62,
+     62,  62,  62,  62,  62,  62,  62,  62,
+     62,  62,  62,  62,  62,  62,  62,  62,
+     62,  62,  62,  62,  62,  62,  62,  62,
+     62,  62,  62,  62,  62,  62,  62,  62,
+     62,  62,  62,  62,  62,  62,  62,  62,
+     62,  62,  62,  62,  62,  62,  62,  62,
+     62,  62,  62,  62,  62,  62,  62,  62,
+     62,  62,  62,  62,  62,  62,  62,  62,
+     62, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
      62,  62,  62,  62,  62,  62,  62,  62,
      62,  62,  62,  62,  62,  62,  62,  62,
      62,  62,  62,  62,  62,  62,  62,  62,
@@ -3918,40 +4436,8 @@
      62,  62,  62,  62,  62,  62,  62,  62,
      62,  62,  62,  62,  62,  62,  62,  62,
      62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
      62,  62,  62,  62,  62,  62,  62, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62,  62,  62,  62,  62,  62,
-     62,  62,  62, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-     62,  62,  62,  62, 255, 255, 255, 255,
+     62,  62,  62,  62,  62, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
      80,  80,  80,  80,  80,  80,  80,  80,
      80,  80,  80,  80,  80,  80,  80,  80,
@@ -4009,6 +4495,54 @@
      83,  83,  83,  83,  83,  83,  83,  83,
      83,  83,  83,  83,  83,  83,  83,  83,
      83, 255, 255, 255, 255, 255, 255, 255,
+    114, 114, 114, 114, 114, 114, 114, 114,
+    114, 114, 114, 114, 114, 114, 114, 114,
+    114, 114, 114, 114, 114, 114, 114, 114,
+    114, 114, 114, 114, 114, 114, 114, 255,
+    114, 114, 114, 114, 114, 114, 114, 114,
+    114, 114, 255, 255, 255, 255, 114, 114,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    103, 103, 103, 103, 103, 103, 103, 103,
+    103, 103, 103, 103, 103, 103, 103, 103,
+    103, 103, 103, 103, 103, 103, 103, 103,
+    103, 103, 103, 103, 103, 103, 255, 255,
+    103, 103, 103, 103, 103, 103, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    107, 107, 107, 107, 107, 107, 107, 107,
+    107, 107, 107, 107, 107, 107, 107, 107,
+    107, 107, 107, 107, 107, 107, 107, 107,
+    107, 107, 107, 107, 107, 107, 107, 107,
+    107, 107, 107, 107, 107, 107, 107, 107,
+    107, 107, 107, 107, 107, 107, 107, 107,
+    107, 107, 107, 107, 107, 107, 107, 107,
+    107, 107, 107, 107, 107, 107, 107, 107,
+    107, 107, 107, 107, 107, 107, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    107, 107, 107, 107, 107, 107, 107, 107,
+    107, 107, 255, 107, 107, 107, 107, 107,
+    107, 107, 255, 107, 107, 107, 107, 107,
+    107, 107, 107, 107, 107, 107, 107, 107,
+    107, 107, 107, 107, 107, 107, 107, 107,
+    255, 255, 255, 255, 255, 107, 107, 107,
+    107, 107, 107, 107, 107, 107, 107, 107,
+    107, 107, 107, 107, 107, 107, 107, 107,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
@@ -4065,6 +4599,38 @@
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
+    104, 104, 104, 104, 104, 104, 104, 104,
+    104, 104, 104, 104, 104, 104, 104, 104,
+    104, 104, 104, 104, 104, 104, 104, 104,
+    104, 104, 104, 104, 104, 104, 104, 104,
+    104, 104, 104, 104, 104, 104, 104, 104,
+    104, 104, 104, 104, 104, 104, 104, 104,
+    104, 104, 104, 104, 104, 104, 104, 104,
+    104, 104, 104, 104, 104, 104, 104, 104,
+    104, 104, 104, 104, 104, 104, 104, 104,
+    104, 104, 104, 104, 104, 104, 104, 104,
+    104, 104, 104, 104, 104, 104, 104, 104,
+    104, 104, 104, 104, 104, 104, 104, 104,
+    104, 104, 104, 104, 104, 104, 104, 104,
+    104, 104, 104, 255, 255, 255, 255, 255,
+    104, 104, 104, 104, 104, 104, 104, 104,
+    104, 104, 104, 104, 104, 255, 255, 255,
+    104, 104, 104, 104, 104, 104, 104, 104,
+    104, 255, 255, 255, 255, 255, 255, 255,
+    104, 104, 104, 104, 104, 104, 104, 104,
+    104, 104, 255, 255, 104, 104, 104, 104,
+      0,   0,   0,   0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
@@ -4225,6 +4791,38 @@
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 255, 255, 112,
+    112, 112, 112, 112, 112, 112, 112, 112,
+    112, 112, 112, 112, 112, 112, 112, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
       6,   6,   6,   6, 255,   6,   6,   6,
       6,   6,   6,   6,   6,   6,   6,   6,
       6,   6,   6,   6,   6,   6,   6,   6,
@@ -4280,17 +4878,17 @@
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0, 255,
     255,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0, 255,
+      0,   0,   0,   0,   0,   0,   0,   0,
     255,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
     255,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0, 255, 255, 255, 255, 255,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0, 255, 255, 255,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
@@ -4341,9 +4939,132 @@
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
-      0, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-      0,   0,   0,   0,   0,   0, 255,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0, 255, 255, 255,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0, 255, 255,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0, 255,
+    255, 255, 255, 255,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+    255, 255, 255, 255, 255, 255, 255, 255,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0, 255,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0, 255, 255, 255, 255, 255,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0, 255,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0, 255,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0, 255, 255,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0, 255, 255, 255,
+      0,   0,   0,   0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
@@ -4353,111 +5074,36 @@
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0, 255, 255, 255,
-      0,   0,   0,   0,   0,   0,   0,   0,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0, 255,   0,   0,
-      0,   0,   0, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0, 255,
-      0, 255,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-    255,   0,   0,   0,   0, 255, 255, 255,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+    255, 255, 255, 255, 255, 255, 255, 255,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0, 255, 255, 255, 255, 255, 255,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+    255, 255, 255, 255, 255, 255, 255, 255,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0, 255, 255,
-      0,   0,   0,   0, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0, 255, 255, 255, 255,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
--- a/lib/unictype/scripts_byname.gperf
+++ b/lib/unictype/scripts_byname.gperf
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Unicode scripts.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 struct named_script { int name; unsigned int index; };
 %struct-type
 %language=ANSI-C
@@ -114,3 +114,26 @@
 Sharada, 99
 Sora_Sompeng, 100
 Takri, 101
+Caucasian_Albanian, 102
+Bassa_Vah, 103
+Duployan, 104
+Elbasan, 105
+Grantha, 106
+Pahawh_Hmong, 107
+Khojki, 108
+Linear_A, 109
+Mahajani, 110
+Manichaean, 111
+Mende_Kikakui, 112
+Modi, 113
+Mro, 114
+Old_North_Arabian, 115
+Nabataean, 116
+Palmyrene, 117
+Pau_Cin_Hau, 118
+Old_Permic, 119
+Psalter_Pahlavi, 120
+Siddham, 121
+Khudawadi, 122
+Tirhuta, 123
+Warang_Citi, 124
--- a/lib/unictype/sy_c_ident.h
+++ b/lib/unictype/sy_c_ident.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Language syntax properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define identsyntax_header_0 12
 #define identsyntax_header_1 14
 #define identsyntax_header_2 7
--- a/lib/unictype/sy_c_whitespace.h
+++ b/lib/unictype/sy_c_whitespace.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Language syntax properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unictype/sy_java_ident.h
+++ b/lib/unictype/sy_java_ident.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Language syntax properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define identsyntax_header_0 12
 #define identsyntax_header_1 225
 #define identsyntax_header_2 7
@@ -11,7 +11,7 @@
   {
     int level1[225];
     short level2[22 << 5];
-    unsigned short level3[135 * 16];
+    unsigned short level3[154 * 16];
   }
 u_java_ident =
 {
@@ -88,50 +88,50 @@
        -1,    -1,   256,   256, 10496, 10624, 10752, 10880,
       256,   256, 11008, 11136, 11264, 11392, 11520, 11648,
     11776, 11904, 12032, 12160,    -1, 12288, 12416, 12544,
-      256, 12672,    -1,    -1,    -1,    -1,    -1,    -1,
-    12800,    -1, 12928, 13056, 13184,    -1, 13312,    -1,
-    13440,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    13568, 13696, 13824, 13952,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1, 14080,    -1,    -1,
+      256, 12672, 12800,    -1,   256,   256, 12928,    -1,
+    13056, 13184, 13312, 13440, 13568, 13696, 13824, 13952,
+    14080,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    14208, 14336, 14464, 14592, 14720, 14848, 14976,    -1,
+       -1, 15104,    -1, 15232, 15360, 15488,    -1,    -1,
+       -1, 15616,    -1,    -1,    -1, 15744,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      256,   256,   256,   256,   256,   256, 14208,    -1,
-    14336,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      256,   256,   256,   256,   256,   256,   256, 15872,
+    16000,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       256,   256,   256,   256,   256,   256,   256,   256,
-    14464,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    16128,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      256,   256,   256,   256, 14592,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1, 14720, 14848,
-    14976,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      256,   256,   256,   256, 16256, 16384, 16512, 16640,
+       -1,    -1,    -1,    -1,    -1,    -1, 16768, 16896,
+    17024,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1, 15104, 15232, 15360,    -1,    -1,    -1,
-    15488, 15616, 15744,   256,   256, 15872, 16000, 16128,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    17152, 17280,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1, 17408, 17536, 17664,    -1,    -1,    -1,
+    17792, 17920, 18048,   256,   256, 18176, 18304, 18432,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1, 16256, 16384,    -1,    -1,
+      256, 18560,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1, 18688, 18816,    -1,    -1,
       256,   256,   256,   256,   256,   256,   256,   256,
-      256,   256,   256,   256,   256, 16512,   256,   256,
+      256,   256,   256,   256,   256, 18944,   256,   256,
       256,   256,   256,   256,   256,   256,   256,   256,
       256,   256,   256,   256,   256,   256,   256,   256,
       256,   256,   256,   256,   256,   256,   256,   256,
-      256,   256,   256,   256,   256,   256, 16640,   256,
-    16768,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      256,   256,   256,   256,   256,   256, 19072,   256,
+    19200,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      256,   256,   256,   256, 16768,    -1,    -1,    -1,
+      256,   256,   256,   256, 19200,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    16896,    -1, 17024, 17152,    -1,    -1,    -1,    -1,
+    19328,    -1, 19456, 19584,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1
@@ -146,16 +146,16 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0aa0, 0x0000, 0xaaa0, 0xaaaa, 0xa800, 0x88aa, 0xaaaa, 0xaaaa,
     0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555,
-    0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x0800, 0xa00a,
+    0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x0800, 0x200a,
     0x8aaa, 0x0880, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2000, 0x0000,
     0x5560, 0x000a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaaaa, 0x0002, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0002, 0x0000,
     0x0000, 0x0000, 0x8000, 0xaaa2, 0x0002, 0x0000, 0x0000, 0x0000,
     0x0000, 0x2aaa, 0x5556, 0x5555, 0x5555, 0x5555, 0x5555, 0x6555,
     0x6596, 0xaaaa, 0x0000, 0x0000, 0x0000, 0xaa80, 0xaa80, 0xaaaa,
-    0xabff, 0xaa2a, 0x5555, 0xab95, 0x0000, 0x0000, 0x0000, 0x0000,
+    0xafff, 0xaa2a, 0x5555, 0xab95, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x5540, 0x5555, 0x5555, 0x5555, 0x0aa5, 0x0001, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x5200, 0x6d55, 0x4155, 0x0559, 0x5555, 0x2805,
@@ -165,11 +165,11 @@
     0x5555, 0x0005, 0x0000, 0x0000, 0x0000, 0x5540, 0xa055, 0xaa8a,
     0x0000, 0x0000, 0x5000, 0x5545, 0x5455, 0xa554, 0xaaaa, 0xaaaa,
     0x0000, 0x0000, 0x0000, 0xaa54, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
-    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x0008, 0xa800, 0xaaaa, 0xaaaa,
-    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x55aa, 0x5555, 0x5555, 0x9555,
+    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x0000, 0x0000, 0xaa80, 0xaaaa,
+    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x55aa, 0x5555, 0x5555, 0x5555,
     0x0055, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5150,
-    0x5555, 0x5555, 0x5554, 0x0000, 0x5a50, 0x5555, 0x0002, 0x0002,
-    0x0256, 0x2800, 0x0028, 0x0000, 0x0000, 0x0008, 0x0a88, 0x51a0,
+    0x5555, 0x5555, 0x5554, 0x0000, 0x5a50, 0x5555, 0x0002, 0x0000,
+    0x0254, 0x2800, 0x0028, 0x0000, 0x0000, 0x0008, 0x0a88, 0x51a0,
     0x6955, 0x8569, 0x6aaa, 0x20aa, 0x5a50, 0x5555, 0xaa00, 0xaa2a,
     0x0256, 0x2a80, 0x0028, 0x0000, 0x0000, 0x0008, 0x8208, 0x59a0,
     0x6a95, 0xa569, 0xaaa6, 0x8802, 0x5aaa, 0x5555, 0xa405, 0xaaaa,
@@ -179,14 +179,14 @@
     0x6955, 0xa569, 0x5aaa, 0x20aa, 0x5a50, 0x5555, 0xaaa2, 0xaaaa,
     0x021a, 0x0a80, 0xa008, 0x0882, 0xa82a, 0x0a80, 0x0000, 0x5aa0,
     0x5a95, 0xa559, 0x6aa8, 0xaaaa, 0x5aaa, 0x5555, 0xaaaa, 0xaaa2,
-    0x0256, 0x0800, 0x0008, 0x0000, 0x0000, 0x0008, 0x0200, 0x52a0,
+    0x0255, 0x0800, 0x0008, 0x0000, 0x0000, 0x0008, 0x0000, 0x52a0,
     0x5955, 0xa559, 0x96aa, 0xaaa0, 0x5a50, 0x5555, 0xaaaa, 0xaaaa,
-    0x025a, 0x0800, 0x0008, 0x0000, 0x0000, 0x0008, 0x0200, 0x51a0,
+    0x0256, 0x0800, 0x0008, 0x0000, 0x0000, 0x0008, 0x0200, 0x51a0,
     0x5955, 0xa559, 0x96aa, 0x8aaa, 0x5a50, 0x5555, 0xaa82, 0xaaaa,
-    0x025a, 0x0800, 0x0008, 0x0000, 0x0000, 0x0000, 0x0000, 0x5280,
+    0x0256, 0x0800, 0x0008, 0x0000, 0x0000, 0x0000, 0x0000, 0x5280,
     0x5955, 0x8559, 0x6aaa, 0xaaaa, 0x5a50, 0x5555, 0xaaaa, 0x000a,
     0x025a, 0x0000, 0x8000, 0x000a, 0x0000, 0x0000, 0x0020, 0xa200,
-    0x8000, 0x6a9a, 0x9955, 0x5555, 0xaaaa, 0xaaaa, 0xaa5a, 0xaaaa,
+    0x8000, 0x6a9a, 0x9955, 0x5555, 0x5aaa, 0x5555, 0xaa5a, 0xaaaa,
     0x0002, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5504, 0x2a95,
     0x4000, 0x9555, 0x5555, 0xaaa5, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0x2882, 0xa288, 0x00aa, 0x0002, 0x2202, 0x020a, 0x5504, 0xa165,
@@ -212,7 +212,7 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2800, 0x0000, 0x0000,
     0x0002, 0x0000, 0x0000, 0xaa80, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0a80, 0xaaa8, 0xaaaa,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0a80, 0x0000, 0xaaa8,
     0x0000, 0x0800, 0xa950, 0xaaaa, 0x0000, 0x0000, 0xa950, 0xaaaa,
     0x0000, 0x0000, 0xaa50, 0xaaaa, 0x0000, 0x0800, 0xaa58, 0xaaaa,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5500, 0x5555,
@@ -221,13 +221,13 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaaaa,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaa84, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa000, 0xaaaa,
-    0x0000, 0x0000, 0x0000, 0xa800, 0x5555, 0xaa55, 0x5555, 0xaa55,
+    0x0000, 0x0000, 0x0000, 0x8000, 0x5555, 0xaa55, 0x5555, 0xaa55,
     0x5aaa, 0x5555, 0x0000, 0x0000, 0x0000, 0xa000, 0xa800, 0xaaaa,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaa00, 0x5555, 0x5555,
     0x0001, 0xaaa5, 0x5555, 0xaaa5, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0x0000, 0x0000, 0x4000, 0xaa55, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x5400, 0x9555, 0x5555, 0x5555, 0x5555, 0x6955,
-    0x5555, 0xaaa5, 0x5555, 0xaaa5, 0x2aaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0x5555, 0xaaa5, 0x5555, 0xaaa5, 0x2aaa, 0xaaaa, 0x5555, 0xa555,
     0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0x0155, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5500, 0x5555,
     0x0155, 0xaa00, 0x5555, 0xaaa5, 0xaaaa, 0x556a, 0xaa55, 0xaaaa,
@@ -236,16 +236,16 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x5500, 0x5555, 0x5555, 0xaaaa,
     0x5555, 0x02a5, 0x5555, 0x0005, 0x0000, 0x0000, 0x0000, 0xa000,
     0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
-    0xaaaa, 0xaaaa, 0x5595, 0x5555, 0x5555, 0x0401, 0x8150, 0xaaaa,
+    0xaaaa, 0xaaaa, 0x5595, 0x5555, 0x5555, 0x0401, 0x8150, 0xaaa5,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x5555, 0x5555, 0x5555, 0x5555, 0x9555, 0xaaaa, 0xaaaa, 0x55aa,
+    0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0xa555, 0x55aa,
     0x0000, 0x0000, 0xa000, 0xa000, 0x0000, 0x0000, 0x0000, 0x0000,
     0xa000, 0xa000, 0x0000, 0x2222, 0x0000, 0x0000, 0x0000, 0xa000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0800, 0x8800,
     0x080a, 0xa800, 0x0a00, 0xaa00, 0x0000, 0xa800, 0x080a, 0xa800,
     0xaaaa, 0xffea, 0xaaaa, 0xaaaa, 0xaaaa, 0xbffa, 0xaaaa, 0x2aaa,
     0xaaa8, 0xaaaa, 0xa8aa, 0xaaaa, 0xfbff, 0xffff, 0xaaa2, 0x2aaa,
-    0xaaaa, 0xaaaa, 0x0000, 0xa800, 0x0000, 0x0000, 0x0000, 0xaa80,
+    0xaaaa, 0xaaaa, 0x0000, 0xa800, 0x0000, 0x0000, 0x0000, 0xa000,
     0xaaaa, 0xaaaa, 0x5555, 0xa955, 0x56a6, 0x5555, 0xaaa9, 0xaaaa,
     0x2a8a, 0x000a, 0xa200, 0xa002, 0x88aa, 0x2008, 0x0000, 0x00a0,
     0x02aa, 0x8aa0, 0xaaaa, 0xaaaa, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -277,12 +277,12 @@
     0xaaaa, 0xaaaa, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa000,
     0x0000, 0xa800, 0x0000, 0x0000, 0x5555, 0xaa05, 0xaaaa, 0xaaaa,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4000, 0x55aa, 0x2555,
-    0x0000, 0x0000, 0x0000, 0x6aaa, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x6000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaaa5, 0xaaaa,
     0xaaaa, 0xaaaa, 0x2aaa, 0x0000, 0x000a, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x8028, 0xaa00, 0xaaaa, 0x0000, 0xaa80, 0xaaaa, 0xaaaa,
-    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x0000,
+    0x0000, 0x8028, 0x0000, 0x0000, 0x0000, 0xa000, 0xaaa0, 0xaaaa,
+    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x2aaa, 0x0000,
     0x1010, 0x0040, 0x0000, 0x0000, 0x5540, 0xaaaa, 0xaaaa, 0xaaa8,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaa00, 0xaaaa,
     0x0005, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5500, 0x5555,
@@ -290,13 +290,13 @@
     0x5555, 0x0005, 0x0000, 0x0000, 0x5000, 0xa555, 0x0000, 0x0000,
     0x4000, 0x5555, 0xaa55, 0xaaaa, 0x0000, 0x0000, 0x0000, 0xa800,
     0x0055, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5540, 0x5555,
-    0xaaa9, 0x2aaa, 0x5555, 0xaaa5, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0xaaa9, 0x2aaa, 0x5555, 0xaaa5, 0x0400, 0x0000, 0x5555, 0x8005,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5554, 0x9555, 0xaaaa,
-    0x0040, 0xa500, 0x5555, 0xaaa5, 0x0000, 0x0000, 0x8000, 0xaa4a,
+    0x0040, 0xa500, 0x5555, 0xaaa5, 0x0000, 0x0000, 0x8000, 0x054a,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4151, 0x5001,
     0xaa84, 0xaaaa, 0xaaaa, 0xa02a, 0x0000, 0x5540, 0x940a, 0xaaaa,
-    0x8002, 0x8002, 0x8002, 0xaaaa, 0x8000, 0x8000, 0xaaaa, 0xaaaa,
-    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0x8002, 0x8002, 0x8002, 0xaaaa, 0x8000, 0x8000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0080, 0xa0aa, 0xaaaa, 0xaaaa, 0xaaaa,
     0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0x0000, 0x0000, 0x0000, 0x0000, 0x5540, 0xa595, 0x5555, 0xaaa5,
     0x0000, 0x0000, 0x0000, 0x0000, 0xaa00, 0xaaaa, 0x0000, 0x0000,
@@ -313,7 +313,7 @@
     0xaaaa, 0xaaaa, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x000a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x0000, 0xa800,
-    0x5555, 0x5555, 0xaaaa, 0xaaaa, 0x9555, 0xaaaa, 0xa82a, 0xaaaa,
+    0x5555, 0x5555, 0xaaaa, 0xaaaa, 0x5555, 0xa555, 0xa82a, 0xaaaa,
     0xaaaa, 0x02aa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaa2, 0x0800, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xe800,
@@ -330,42 +330,74 @@
     0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xa6aa,
     0x0000, 0x0000, 0x0000, 0xa800, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0xaaa8, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
-    0x0000, 0x0000, 0x0000, 0x8000, 0xaaaa, 0xaaaa, 0x0000, 0x0000,
-    0x0000, 0xaa80, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0x0000, 0x0000, 0xaaa8, 0xaaaa, 0xaaa9, 0xaaaa, 0xaaaa, 0xaaaa,
+    0x0000, 0x0000, 0x0000, 0x0000, 0xaaaa, 0xaaaa, 0x0000, 0x0000,
+    0x0000, 0xaa80, 0x0000, 0x0000, 0x0000, 0x0000, 0x5000, 0xaa95,
     0x0000, 0x0000, 0x0000, 0xa000, 0x0000, 0x0000, 0x0000, 0x0000,
     0xaa00, 0x0000, 0xa002, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0x0000, 0x0000, 0x0000, 0xa000, 0x5555, 0xaaa5, 0xaaaa, 0xaaaa,
     0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaaaa, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0xaa00, 0xaaaa, 0xaaaa, 0xaaaa,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8000, 0xaaaa,
+    0x0000, 0x0000, 0xa000, 0xaaaa, 0x0000, 0xaaaa, 0xaaaa, 0xaaaa,
     0xa000, 0x0008, 0x0000, 0x0000, 0x0000, 0x0000, 0x2000, 0x28a8,
-    0x0000, 0x0000, 0xa000, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0x0000, 0x0000, 0xa000, 0xaaaa, 0x0000, 0x0000, 0x8000, 0xaaaa,
+    0x0000, 0x0000, 0x0000, 0x8000, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0x0000, 0x0000, 0xa000, 0xaaaa, 0x0000, 0x0000, 0x0000, 0xaaa0,
     0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0aaa,
     0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0x9654, 0x55aa, 0x0200, 0x0002, 0x0000, 0x0000, 0xaa00, 0x6a95,
     0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x0000, 0x0000, 0x0000, 0xa800,
+    0x0000, 0x0000, 0x0000, 0xa800, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0x0000, 0x0002, 0x0000, 0x0000, 0x9400, 0xaaaa, 0xaaaa, 0xaaaa,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa000, 0xaaaa,
     0x0000, 0x0000, 0xa000, 0xaaaa, 0x0000, 0x0000, 0xaa80, 0xaaaa,
+    0x0000, 0x0000, 0xaaa0, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0xaaa8, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0x0015, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5555,
-    0x9555, 0xaaaa, 0xaaaa, 0xaaaa, 0x5aaa, 0x5555, 0xaaaa, 0xaaaa,
+    0x9555, 0xaaaa, 0xaaaa, 0xaaaa, 0x5aaa, 0x5555, 0xaaaa, 0x6aaa,
     0x0015, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5555, 0xae95,
     0xaaaa, 0xaaaa, 0x0000, 0x0000, 0x0000, 0xaaa8, 0x5555, 0xaaa5,
     0x0015, 0x0000, 0x0000, 0x0000, 0x4000, 0x5555, 0x5955, 0x5555,
-    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0xaaaa, 0xaaaa, 0x0000, 0x0000, 0x0000, 0x0000, 0x8a40, 0xaaaa,
     0x0015, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5540, 0x5555,
-    0xa801, 0xaaaa, 0x5555, 0xaaa5, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0xa801, 0xaaaa, 0x5555, 0xaa85, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x5500, 0x5555, 0xaaaa,
+    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x4000, 0x5555, 0xaa95, 0x5555, 0xaaa5,
+    0x0256, 0x2800, 0x0028, 0x0000, 0x0000, 0x0008, 0x0208, 0x51a0,
+    0x6955, 0xa569, 0x6aaa, 0x02aa, 0x5a50, 0xa955, 0xa955, 0xaaaa,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5555, 0x5555,
+    0x2055, 0xaaaa, 0x5555, 0xaaa5, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4000, 0xa555, 0x5555,
+    0xaaa9, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5555, 0x5555,
+    0xa8a9, 0xaaaa, 0x5555, 0xaaa5, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5540, 0x5555, 0xaaaa,
     0x5555, 0xaaa5, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x5555, 0xaaa5, 0xaaaa, 0x2aaa,
+    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaaa8,
+    0x0000, 0x0000, 0x0000, 0xaaa8, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8000, 0xaaaa, 0xaaaa,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0xaa80, 0xaaaa, 0xaaaa, 0xaaaa,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8000, 0xaaaa, 0xaaaa,
     0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaaa8,
+    0x0000, 0x0000, 0x0000, 0x8000, 0x5555, 0xaaa5, 0xaaaa, 0xaaaa,
+    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0xaaaa, 0xaaaa, 0x0000, 0x0000, 0x0000, 0xa000, 0xa955, 0xaaaa,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x9555, 0xaaaa,
+    0xaa00, 0xaaaa, 0x5555, 0xaaa5, 0x002a, 0x0000, 0x0000, 0x02aa,
+    0x0000, 0x0000, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0xa800, 0xaaaa, 0x5554, 0x5555, 0x5555, 0x5555, 0x5555, 0x9555,
@@ -373,6 +405,10 @@
     0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0xaaa0, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaa80, 0x0000, 0xa800,
+    0x0000, 0xaaa8, 0x0000, 0x96a0, 0xaaff, 0xaaaa, 0xaaaa, 0xaaaa,
+    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x56aa, 0x56a5, 0xffd5, 0x557f,
     0x5695, 0xaa55, 0xaaaa, 0xaaaa, 0xaaaa, 0xa55a, 0xaaaa, 0xaaaa,
@@ -391,6 +427,8 @@
     0x0000, 0x8000, 0x0000, 0x0000, 0x0000, 0x8000, 0x0000, 0x0000,
     0x0000, 0x0008, 0x0000, 0x0000, 0x0000, 0x0008, 0x0000, 0x0000,
     0x0080, 0x5a00, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0xa800, 0xaaaa, 0x9555, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0x0200, 0x0000, 0x0000, 0x0000, 0x2882, 0x0002, 0x0080, 0xaa22,
     0x2a8a, 0x0222, 0x2882, 0x2222, 0x2882, 0x0080, 0x0080, 0x8802,
     0x0000, 0x0020, 0x0000, 0xaa00, 0x0202, 0x0020, 0x0000, 0xaa00,
--- a/lib/unictype/sy_java_whitespace.h
+++ b/lib/unictype/sy_java_whitespace.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Language syntax properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- a/lib/unigbrk/gbrkprop.h
+++ b/lib/unigbrk/gbrkprop.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Grapheme break property of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 #define gbrkprop_header_0 16
 #define gbrkprop_header_1 15
 #define gbrkprop_header_2 7
@@ -11,7 +11,7 @@
   {
     int level1[15];
     short level2[3 << 9];
-    unsigned char level3[(86 << 7) / 2];
+    unsigned char level3[(100 << 7) / 2];
   }
 unigbrkprop =
 {
@@ -26,13 +26,13 @@
      1088,  1152,  1216,  1280,  1344,  1408,  1472,  1536,
      1600,  1664,  1728,  1792,    -1,    -1,  1856,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,  1920,  1984,
-     2048,  2112,  2176,  2240,  2304,    -1,  2368,  2432,
-     2496,  2560,    -1,  2624,    -1,    -1,    -1,    -1,
-     2688,  2752,    -1,    -1,    -1,    -1,    -1,    -1,
+     2048,  2112,  2176,  2240,  2304,  2368,  2432,  2496,
+     2560,  2624,    -1,  2688,    -1,    -1,    -1,    -1,
+     2752,  2816,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,  2816,  2880,  2944,    -1,    -1,    -1,    -1,
-     3008,  3072,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,  2880,  2944,  3008,    -1,    -1,    -1,    -1,
+     3072,  3136,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -61,35 +61,35 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,  3136,  3200,    -1,    -1,
-     3264,  3328,  3392,  3456,  3520,  3584,    -1,  3648,
-     3712,  3776,  3840,  3904,  3968,  4032,  4096,  3712,
-     3776,  3840,  3904,  3968,  4032,  4096,  3712,  3776,
-     3840,  3904,  3968,  4032,  4096,  3712,  3776,  3840,
-     3904,  3968,  4032,  4096,  3712,  3776,  3840,  3904,
-     3968,  4032,  4096,  3712,  3776,  3840,  3904,  3968,
-     4032,  4096,  3712,  3776,  3840,  3904,  3968,  4032,
-     4096,  3712,  3776,  3840,  3904,  3968,  4032,  4096,
-     3712,  3776,  3840,  3904,  3968,  4032,  4096,  3712,
-     3776,  3840,  3904,  3968,  4032,  4096,  3712,  3776,
-     3840,  3904,  3968,  4032,  4096,  3712,  3776,  3840,
-     3904,  3968,  4032,  4096,  3712,  3776,  3840,  4160,
-     4224,  4224,  4224,  4224,  4224,  4224,  4224,  4224,
-     4224,  4224,  4224,  4224,  4224,  4224,  4224,  4224,
+       -1,    -1,    -1,    -1,  3200,  3264,    -1,    -1,
+     3328,  3392,  3456,  3520,  3584,  3648,    -1,  3712,
+     3776,  3840,  3904,  3968,  4032,  4096,  4160,  3776,
+     3840,  3904,  3968,  4032,  4096,  4160,  3776,  3840,
+     3904,  3968,  4032,  4096,  4160,  3776,  3840,  3904,
+     3968,  4032,  4096,  4160,  3776,  3840,  3904,  3968,
+     4032,  4096,  4160,  3776,  3840,  3904,  3968,  4032,
+     4096,  4160,  3776,  3840,  3904,  3968,  4032,  4096,
+     4160,  3776,  3840,  3904,  3968,  4032,  4096,  4160,
+     3776,  3840,  3904,  3968,  4032,  4096,  4160,  3776,
+     3840,  3904,  3968,  4032,  4096,  4160,  3776,  3840,
+     3904,  3968,  4032,  4096,  4160,  3776,  3840,  3904,
+     3968,  4032,  4096,  4160,  3776,  3840,  3904,  4224,
+     4288,  4288,  4288,  4288,  4288,  4288,  4288,  4288,
+     4288,  4288,  4288,  4288,  4288,  4288,  4288,  4288,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,  4288,    -1,
-       -1,    -1,    -1,    -1,  4352,  4416,    -1,  4480,
-       -1,    -1,    -1,  4544,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,  4352,    -1,
+       -1,    -1,    -1,    -1,  4416,  4480,    -1,  4544,
+       -1,    -1,    -1,  4608,    -1,  4672,  4736,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,  4608,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,  4800,  4864,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     4672,  4736,  4800,  4864,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,  4928,    -1,    -1,
+     4928,  4992,  5056,  5120,  5184,  5248,  5312,    -1,
+       -1,  5376,    -1,  5440,  5504,  5568,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -110,8 +110,8 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,  4992,  5056,
+       -1,    -1,    -1,    -1,    -1,  5632,  5696,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,  5760,  5824,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -131,27 +131,27 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,  5888,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,  5120,  5184,  5248,    -1,    -1,    -1,
+       -1,    -1,  5952,  6016,  6080,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,  6144,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,  5312,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,  6208,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     4224,  4224,  5376,  5440,  4224,  4224,  4224,  4224,
-     4224,  4224,  4224,  4224,  4224,  4224,  4224,  4224,
-     4224,  4224,  4224,  4224,  4224,  4224,  4224,  4224,
-     4224,  4224,  4224,  4224,  4224,  4224,  4224,  4224,
+     4288,  4288,  6272,  6336,  4288,  4288,  4288,  4288,
+     4288,  4288,  4288,  4288,  4288,  4288,  4288,  4288,
+     4288,  4288,  4288,  4288,  4288,  4288,  4288,  4288,
+     4288,  4288,  4288,  4288,  4288,  4288,  4288,  4288,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -254,7 +254,7 @@
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x33, 0x33, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x44, 0x44, 0x44, 0x44, 0x44, 0x04, 0x03, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -301,7 +301,7 @@
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44,
-    0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x04,
+    0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44,
     0x44, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -350,7 +350,7 @@
     0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x60, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x64, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44,
@@ -358,7 +358,7 @@
     0x00, 0x00, 0x40, 0x04, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x40, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x46,
@@ -366,7 +366,7 @@
     0x00, 0x00, 0x40, 0x04, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x40, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64,
@@ -510,6 +510,14 @@
     0x00, 0x00, 0x60, 0x64, 0x44, 0x44, 0x44, 0x04,
     0x04, 0x04, 0x40, 0x44, 0x44, 0x44, 0x64, 0x66,
     0x66, 0x46, 0x44, 0x44, 0x44, 0x44, 0x04, 0x40,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x04,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x44, 0x44, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -520,7 +528,7 @@
     0x44, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x44, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x60, 0x44, 0x44, 0x66, 0x44, 0x46, 0x66, 0x00,
+    0x60, 0x44, 0x44, 0x66, 0x44, 0x46, 0x44, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -541,15 +549,15 @@
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x44, 0x04, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44,
     0x64, 0x44, 0x44, 0x44, 0x04, 0x00, 0x40, 0x00,
-    0x00, 0x66, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x66, 0x04, 0x00, 0x44, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44,
     0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44,
-    0x44, 0x44, 0x44, 0x04, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x44,
+    0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44,
+    0x44, 0x44, 0x44, 0x00, 0x00, 0x00, 0x44, 0x44,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x44, 0x33,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x03,
@@ -652,7 +660,7 @@
     0x00, 0x40, 0x66, 0x44, 0x44, 0x66, 0x64, 0x66,
     0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -661,7 +669,7 @@
     0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x64, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -760,7 +768,7 @@
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x44, 0x44, 0x44, 0x04, 0x00, 0x00, 0x00, 0x00,
+    0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -790,6 +798,22 @@
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x44, 0x44, 0x04, 0x00, 0x00,
     0x40, 0x44, 0x40, 0x04, 0x00, 0x00, 0x44, 0x44,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -798,6 +822,14 @@
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x40, 0x04, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x46, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -805,7 +837,7 @@
     0x44, 0x44, 0x44, 0x04, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
     0x44, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -821,7 +853,7 @@
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x44, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -832,6 +864,54 @@
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0x46,
+    0x44, 0x66, 0x64, 0x44, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
+    0x66, 0x46, 0x44, 0x44, 0x44, 0x04, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x40, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x64,
+    0x64, 0x66, 0x06, 0x60, 0x06, 0x60, 0x66, 0x00,
+    0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x66, 0x00, 0x44, 0x44, 0x44, 0x04, 0x00,
+    0x44, 0x44, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x64, 0x46, 0x44, 0x44, 0x64, 0x64, 0x46, 0x46,
+    0x64, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40,
+    0x66, 0x44, 0x44, 0x00, 0x66, 0x66, 0x44, 0x46,
+    0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x66, 0x46, 0x44, 0x44, 0x44, 0x64, 0x46, 0x46,
+    0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x46, 0x66,
     0x44, 0x44, 0x44, 0x46, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -843,6 +923,22 @@
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x44, 0x44, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x44, 0x44, 0x44, 0x04, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x60, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66,
     0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66,
     0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x06,
@@ -855,6 +951,14 @@
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x04,
+    0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -883,6 +987,14 @@
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x44, 0x44, 0x44, 0x04, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc,
     0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc,
--- a/lib/unilbrk/lbrkprop1.h
+++ b/lib/unilbrk/lbrkprop1.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Line breaking properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 
 /* Copyright (C) 2000-2002, 2004, 2008 Free Software Foundation, Inc.
 
@@ -27,7 +27,7 @@
   {
     int level1[15];
     int level2[4 << 9];
-    unsigned char level3[176 << 7];
+    unsigned char level3[198 << 7];
   }
 lbrkprop_t;
 extern const lbrkprop_t unilbrkprop;
--- a/lib/unilbrk/lbrkprop2.h
+++ b/lib/unilbrk/lbrkprop2.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Line breaking properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 
 /* Copyright (C) 2000-2002, 2004, 2008 Free Software Foundation, Inc.
 
@@ -34,50 +34,50 @@
      6272,  6400,   256,  6528,   256,   256,  6656,  6784,
      6912,  7040,  7168,  7296,  7424,  7552,  7680,  7808,
      7936,  8064,  8192,  8320,  8448,  8576,  8704,  8832,
-      256,   256,   256,  8960,   256,   256,  9088,    -1,
-     9216,  9344,  9472,  9600,  9728,  9856,  9984, 10112,
-    10240, 10368, 10496, 10624, 10752, 10880,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984, 11008,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-    11136,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984, 11264,   256,   256, 11392, 11520,   256, 11648,
-    11776, 11904, 12032, 12160, 12288, 12416, 12544, 12672,
-    12800, 12928, 13056, 13184, 13312, 13440, 13568, 12800,
-    12928, 13056, 13184, 13312, 13440, 13568, 12800, 12928,
-    13056, 13184, 13312, 13440, 13568, 12800, 12928, 13056,
-    13184, 13312, 13440, 13568, 12800, 12928, 13056, 13184,
-    13312, 13440, 13568, 12800, 12928, 13056, 13184, 13312,
-    13440, 13568, 12800, 12928, 13056, 13184, 13312, 13440,
-    13568, 12800, 12928, 13056, 13184, 13312, 13440, 13568,
-    12800, 12928, 13056, 13184, 13312, 13440, 13568, 12800,
-    12928, 13056, 13184, 13312, 13440, 13568, 12800, 12928,
-    13056, 13184, 13312, 13440, 13568, 12800, 12928, 13056,
-    13184, 13312, 13440, 13568, 12800, 12928, 13056, 13696,
+      256,   256,   256,  8960,   256,   256,  9088,  9216,
+     9344,  9472,  9600,  9728,  9856,  9984, 10112, 10240,
+    10368, 10496, 10624, 10752, 10880, 11008, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 11136, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    11264, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 11392,   256,   256, 11520, 11648,   256, 11776,
+    11904, 12032, 12160, 12288, 12416, 12544, 12672, 12800,
+    12928, 13056, 13184, 13312, 13440, 13568, 13696, 12928,
+    13056, 13184, 13312, 13440, 13568, 13696, 12928, 13056,
+    13184, 13312, 13440, 13568, 13696, 12928, 13056, 13184,
+    13312, 13440, 13568, 13696, 12928, 13056, 13184, 13312,
+    13440, 13568, 13696, 12928, 13056, 13184, 13312, 13440,
+    13568, 13696, 12928, 13056, 13184, 13312, 13440, 13568,
+    13696, 12928, 13056, 13184, 13312, 13440, 13568, 13696,
+    12928, 13056, 13184, 13312, 13440, 13568, 13696, 12928,
+    13056, 13184, 13312, 13440, 13568, 13696, 12928, 13056,
+    13184, 13312, 13440, 13568, 13696, 12928, 13056, 13184,
+    13312, 13440, 13568, 13696, 12928, 13056, 13184, 13824,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -86,22 +86,22 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,  9984,  9984,  9984,  9984, 13824, 13952,
-      256,   256, 14080, 14208, 14336, 14464, 14592, 14720,
-    14848, 14976, 15104, 15232,    -1, 15360, 15488, 15616,
-      256, 15744,    -1,    -1,    -1,    -1,    -1,    -1,
-    15872,    -1, 16000, 16128, 16256,    -1, 16384,    -1,
-    16512,    -1,    -1,    -1, 16640,    -1,    -1,    -1,
-    16768, 16896, 17024, 17152,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1, 17280,    -1,    -1,
+       -1,    -1, 10112, 10112, 10112, 10112, 13952, 14080,
+      256,   256, 14208, 14336, 14464, 14592, 14720, 14848,
+    14976, 15104, 15232, 15360,    -1, 15488, 15616, 15744,
+      256, 15872, 16000,    -1,   256,   256, 16128,    -1,
+    16256, 16384, 16512, 16640, 16768, 16896, 17024, 17152,
+    17280,    -1,    -1,    -1, 17408,    -1,    -1,    -1,
+    17536, 17664, 17792, 17920, 18048, 18176, 18304,    -1,
+       -1, 18432,    -1, 18560, 18688, 18816,    -1,    -1,
+       -1, 18944,    -1,    -1,    -1, 19072,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      256,   256,   256,   256,   256,   256,   256, 19200,
+    19328,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      256,   256,   256,   256,   256,   256, 17408,    -1,
-    17536,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      256,   256,   256,   256, 17664, 17792, 17920,   256,
-    18048,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      256,   256,   256,   256, 19456, 19584, 19712,   256,
+    19840,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -114,8 +114,8 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      256,   256,   256,   256, 18176,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1, 18304, 18432,
+      256,   256,   256,   256, 19968, 20096, 20224, 20352,
+       -1,    -1,    -1,    -1,    -1,    -1, 20480, 20608,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -132,91 +132,91 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    18560,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    20736,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    20864, 20992,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      256, 18688, 18816, 18944, 19072,    -1, 19200,    -1,
-    19328, 19456, 19584,   256,   256, 19712,   256, 19840,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      256, 21120, 21248, 21376, 21504,    -1, 21632,    -1,
+    21760, 21888, 22016,   256,   256, 22144,   256, 22272,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1, 19968, 20096,    -1,    -1,
-    20224, 20352, 20480, 20608, 20736,    -1, 20864, 20992,
-    21120, 21248, 21376, 21504, 21632, 21760, 21888,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      256, 22400,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1, 22528, 22656,    -1,    -1,
+    22784, 22912, 23040, 23168, 23296,    -1, 23424, 23552,
+    10112, 23680, 23808, 23936, 24064, 24192, 24320, 24448,
+    24576, 24704,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984,  9984,
-     9984,  9984,  9984,  9984,  9984,  9984,  9984, 22016,
-    22144,    -1, 22272, 22400,    -1,    -1,    -1,    -1,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 10112,
+    10112, 10112, 10112, 10112, 10112, 10112, 10112, 24832,
+    24960,    -1, 25088, 25216,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -361,7 +361,7 @@
     LBP_GL, LBP_GL, LBP_GL, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
     LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_XX, LBP_XX, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_IS, LBP_XX,
+    LBP_XX, LBP_XX, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_IS, LBP_AL,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_AL, LBP_XX, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -399,7 +399,7 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_XX, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -411,7 +411,7 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_XX, LBP_IS, LBP_BA, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_PR,
+    LBP_XX, LBP_IS, LBP_BA, LBP_XX, LBP_XX, LBP_AL, LBP_AL, LBP_PR,
     LBP_XX, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
     LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
     LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
@@ -426,7 +426,7 @@
     LBP_HL, LBP_HL, LBP_HL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_HL, LBP_HL, LBP_HL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_PO, LBP_PO, LBP_PO, LBP_IS, LBP_IS, LBP_AL, LBP_AL,
     LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
     LBP_CM, LBP_CM, LBP_CM, LBP_EX, LBP_CM, LBP_XX, LBP_EX, LBP_EX,
@@ -510,9 +510,9 @@
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_AL, LBP_XX, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
@@ -521,7 +521,7 @@
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
     LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
     LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
-    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_XX,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
     LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -537,8 +537,8 @@
     LBP_AL, LBP_AL, LBP_CM, LBP_CM, LBP_BA, LBP_BA, LBP_NU, LBP_NU,
     LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_XX, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_XX, LBP_CM, LBP_CM, LBP_CM, LBP_XX, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_CM, LBP_CM, LBP_CM, LBP_XX, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_AL,
     LBP_AL, LBP_XX, LBP_XX, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -618,13 +618,13 @@
     LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_PR, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_CM, LBP_CM, LBP_CM, LBP_XX, LBP_AL, LBP_AL, LBP_AL,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_XX, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_AL, LBP_AL,
     LBP_AL, LBP_XX, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_XX, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_AL, LBP_CM, LBP_CM,
     LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_XX, LBP_CM, LBP_CM,
     LBP_CM, LBP_XX, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_XX, LBP_XX,
@@ -634,7 +634,7 @@
     LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_XX, LBP_XX, LBP_CM, LBP_CM, LBP_XX, LBP_AL, LBP_AL, LBP_AL,
+    LBP_XX, LBP_CM, LBP_CM, LBP_CM, LBP_XX, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_AL, LBP_AL,
     LBP_AL, LBP_XX, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -650,7 +650,7 @@
     LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU,
     LBP_XX, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_CM, LBP_CM, LBP_XX, LBP_AL, LBP_AL, LBP_AL,
+    LBP_XX, LBP_CM, LBP_CM, LBP_CM, LBP_XX, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_AL, LBP_AL,
     LBP_AL, LBP_XX, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -678,8 +678,8 @@
     LBP_XX, LBP_XX, LBP_CM, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_CM,
     LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_XX, LBP_CM, LBP_XX,
     LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_NU, LBP_NU,
+    LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU,
     LBP_XX, LBP_XX, LBP_CM, LBP_CM, LBP_AL, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA,
@@ -904,8 +904,8 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_BA, LBP_BA, LBP_BA, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_CM, LBP_CM, LBP_CM, LBP_XX, LBP_XX, LBP_XX,
@@ -973,7 +973,7 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX,
     LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
     LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
@@ -1024,8 +1024,8 @@
     LBP_NU, LBP_NU, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA,
     LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
@@ -1097,7 +1097,7 @@
     LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
     LBP_CM, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_CM, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_CM, LBP_CM, LBP_CM, LBP_AL, LBP_AL, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_CM, LBP_CM, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -1110,9 +1110,9 @@
     LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
     LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
     LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
-    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -1169,7 +1169,7 @@
     LBP_PR, LBP_PR, LBP_PR, LBP_PR, LBP_PR, LBP_PR, LBP_PR, LBP_PO,
     LBP_PR, LBP_PR, LBP_PR, LBP_PR, LBP_PR, LBP_PR, LBP_PR, LBP_PR,
     LBP_PR, LBP_PR, LBP_PR, LBP_PR, LBP_PR, LBP_PR, LBP_PO, LBP_PR,
-    LBP_PR, LBP_PR, LBP_PR, LBP_PR, LBP_PR, LBP_PR, LBP_PR, LBP_PR,
+    LBP_PR, LBP_PR, LBP_PR, LBP_PO, LBP_PR, LBP_PR, LBP_PR, LBP_PR,
     LBP_PR, LBP_PR, LBP_PR, LBP_PR, LBP_PR, LBP_PR, LBP_PR, LBP_PR,
     LBP_PR, LBP_PR, LBP_PR, LBP_PR, LBP_PR, LBP_PR, LBP_PR, LBP_PR,
     LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
@@ -1243,7 +1243,7 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_OP, LBP_CL, LBP_OP, LBP_CL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AI, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_ID, LBP_ID, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -1272,8 +1272,8 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -1370,7 +1370,7 @@
     LBP_AI, LBP_AI, LBP_ID, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI,
     LBP_AI, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_AI, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_AI, LBP_AI, LBP_ID, LBP_ID, LBP_ID,
-    LBP_XX, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_AL, LBP_AL, LBP_AL,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_AL, LBP_AL, LBP_AL,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -1381,8 +1381,8 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AI,
-    LBP_AL, LBP_AL, LBP_AL, LBP_QU, LBP_QU, LBP_QU, LBP_QU, LBP_AL,
-    LBP_AL, LBP_AL, LBP_EX, LBP_EX, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_QU, LBP_QU, LBP_QU, LBP_QU, LBP_QU,
+    LBP_QU, LBP_AL, LBP_EX, LBP_EX, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_OP, LBP_CL, LBP_OP, LBP_CL, LBP_OP, LBP_CL, LBP_OP, LBP_CL,
     LBP_OP, LBP_CL, LBP_OP, LBP_CL, LBP_OP, LBP_CL, LBP_AI, LBP_AI,
     LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI,
@@ -1427,9 +1427,25 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AI, LBP_AI, LBP_AI,
-    LBP_AI, LBP_AI, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AI, LBP_AI, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_XX, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
@@ -1505,8 +1521,8 @@
     LBP_QU, LBP_QU, LBP_OP, LBP_CL, LBP_OP, LBP_CL, LBP_OP, LBP_CL,
     LBP_OP, LBP_CL, LBP_BA, LBP_BA, LBP_BA, LBP_BA, LBP_EX, LBP_AL,
     LBP_BA, LBP_BA, LBP_AL, LBP_BA, LBP_BA, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_B2, LBP_B2, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_B2, LBP_B2, LBP_BA, LBP_BA, LBP_BA, LBP_AL,
+    LBP_BA, LBP_BA, LBP_OP, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
@@ -1725,7 +1741,7 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_CM,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_CM,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -1740,19 +1756,19 @@
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_CM, LBP_AL, LBP_AL, LBP_AL, LBP_CM, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_CM, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -1814,10 +1830,10 @@
     LBP_BA, LBP_BA, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_AL,
     LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU,
     LBP_NU, LBP_NU, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_AL, LBP_AL,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA,
+    LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA,
+    LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU,
+    LBP_NU, LBP_NU, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_XX,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -1833,7 +1849,7 @@
     LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA,
     LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA,
     LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA,
-    LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA,
     LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA,
     LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA,
     LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA, LBP_SA,
@@ -1856,13 +1872,13 @@
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_AL, LBP_AL, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
@@ -2049,7 +2065,7 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_OP, LBP_CL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_CL, LBP_OP,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -2078,8 +2094,8 @@
     LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
     LBP_IS, LBP_CL, LBP_CL, LBP_IS, LBP_IS, LBP_EX, LBP_EX, LBP_OP,
     LBP_CL, LBP_IN, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_XX, LBP_XX,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_OP, LBP_CL, LBP_OP,
     LBP_CL, LBP_OP, LBP_CL, LBP_OP, LBP_CL, LBP_OP, LBP_CL, LBP_OP,
     LBP_CL, LBP_OP, LBP_CL, LBP_OP, LBP_CL, LBP_ID, LBP_ID, LBP_OP,
@@ -2187,10 +2203,10 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
@@ -2214,26 +2230,26 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX,
+    LBP_CM, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_CM, LBP_CM,
+    LBP_CM, LBP_CM, LBP_CM, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -2266,6 +2282,38 @@
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_AL,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX,
     LBP_AL, LBP_XX, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -2278,6 +2326,22 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_BA,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
@@ -2334,6 +2398,22 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_CM, LBP_CM, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_BA, LBP_BA, LBP_BA, LBP_BA, LBP_BA, LBP_BA, LBP_IN, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX,
@@ -2348,6 +2428,22 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -2393,7 +2489,7 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_NU, LBP_NU,
     LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_CM,
     LBP_CM, LBP_CM, LBP_CM, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -2420,11 +2516,11 @@
     LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU,
     LBP_BA, LBP_BA, LBP_BA, LBP_BA, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_CM, LBP_AL, LBP_BB, LBP_AL, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_CM, LBP_CM, LBP_CM, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -2435,7 +2531,103 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
     LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
     LBP_CM, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_BA, LBP_BA, LBP_AL,
-    LBP_BA, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_BA, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_AL, LBP_XX, LBP_XX,
+    LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU,
+    LBP_NU, LBP_NU, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_XX, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
+    LBP_BA, LBP_BA, LBP_AL, LBP_BA, LBP_BA, LBP_AL, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_CM,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
+    LBP_CM, LBP_CM, LBP_CM, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU,
+    LBP_NU, LBP_NU, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_CM, LBP_CM, LBP_CM, LBP_XX, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_AL,
+    LBP_AL, LBP_XX, LBP_XX, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_XX, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_XX, LBP_AL, LBP_AL, LBP_XX, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_CM, LBP_AL, LBP_CM, LBP_CM,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_XX, LBP_XX, LBP_CM,
+    LBP_CM, LBP_XX, LBP_XX, LBP_CM, LBP_CM, LBP_CM, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_CM,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_CM, LBP_CM, LBP_XX, LBP_XX, LBP_CM, LBP_CM,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_XX, LBP_XX, LBP_XX,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU,
+    LBP_NU, LBP_NU, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_CM,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_XX, LBP_XX,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
+    LBP_CM, LBP_BB, LBP_BA, LBP_BA, LBP_EX, LBP_EX, LBP_AL, LBP_AL,
+    LBP_AL, LBP_BA, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM,
+    LBP_CM, LBP_BA, LBP_BA, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU,
     LBP_NU, LBP_NU, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
@@ -2458,6 +2650,54 @@
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU,
+    LBP_NU, LBP_NU, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_AL,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -2472,23 +2712,7 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_BA, LBP_BA, LBP_BA, LBP_BA, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_BA, LBP_BA, LBP_BA, LBP_BA, LBP_BA, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -2562,6 +2786,54 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX,
+    LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU,
+    LBP_NU, LBP_NU, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_BA, LBP_BA,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_BA, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_BA,
+    LBP_BA, LBP_BA, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_BA, LBP_AL, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU,
+    LBP_NU, LBP_NU, LBP_XX, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_XX, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
@@ -2631,6 +2903,38 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_AL, LBP_CM, LBP_CM, LBP_BA,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
@@ -2778,6 +3082,22 @@
     LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU,
     LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU,
     LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -2833,17 +3153,17 @@
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_XX,
     LBP_XX, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
-    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_XX,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_XX, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_XX, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI,
-    LBP_AI, LBP_AI, LBP_AI, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_XX, LBP_XX, LBP_XX,
     LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI,
     LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI,
     LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI,
@@ -2894,9 +3214,9 @@
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
-    LBP_ID, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_XX, LBP_ID,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_XX, LBP_XX, LBP_XX,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
@@ -2905,39 +3225,23 @@
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
-    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_XX, LBP_XX, LBP_XX,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_XX, LBP_XX,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
-    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_AL, LBP_AL, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_AL, LBP_AL, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_AL, LBP_ID, LBP_ID, LBP_ID,
-    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_XX, LBP_ID, LBP_ID,
-    LBP_ID, LBP_ID, LBP_ID, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
-    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
-    LBP_ID, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
-    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
-    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
-    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
-    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_XX,
-    LBP_ID, LBP_XX, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
-    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
-    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
-    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
-    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
-    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
-    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
-    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
@@ -2953,7 +3257,7 @@
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
-    LBP_XX, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_XX, LBP_XX, LBP_XX,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_XX,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_AL,
@@ -2961,31 +3265,31 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX,
-    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_ID, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
+    LBP_ID, LBP_ID, LBP_XX, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_XX, LBP_ID, LBP_ID, LBP_ID,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
@@ -2994,14 +3298,14 @@
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
-    LBP_ID, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_ID, LBP_ID, LBP_ID,
+    LBP_ID, LBP_ID, LBP_ID, LBP_XX, LBP_XX, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_QU, LBP_QU,
+    LBP_QU, LBP_NS, LBP_NS, LBP_NS, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
@@ -3010,13 +3314,13 @@
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
-    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_XX, LBP_XX, LBP_XX,
+    LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -3034,6 +3338,54 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
--- a/lib/uninorm/composition-table.gperf
+++ b/lib/uninorm/composition-table.gperf
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Canonical composition of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 
 /* Copyright (C) 2009 Free Software Foundation, Inc.
 
@@ -961,3 +961,10 @@
 "\x01\x10\xa5\x01\x10\xba", 0x110ab
 "\x01\x11\x31\x01\x11\x27", 0x1112e
 "\x01\x11\x32\x01\x11\x27", 0x1112f
+"\x01\x13\x47\x01\x13\x3e", 0x1134b
+"\x01\x13\x47\x01\x13\x57", 0x1134c
+"\x01\x14\xb9\x01\x14\xba", 0x114bb
+"\x01\x14\xb9\x01\x14\xb0", 0x114bc
+"\x01\x14\xb9\x01\x14\xbd", 0x114be
+"\x01\x15\xb8\x01\x15\xaf", 0x115ba
+"\x01\x15\xb9\x01\x15\xaf", 0x115bb
--- a/lib/uninorm/decomposition-table1.h
+++ b/lib/uninorm/decomposition-table1.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Decomposition of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 
 extern const unsigned char gl_uninorm_decomp_chars_table[];
 
@@ -13,8 +13,8 @@
 typedef struct
   {
     int level1[191];
-    int level2[21 << 5];
-    unsigned short level3[272 << 5];
+    int level2[23 << 5];
+    unsigned short level3[277 << 5];
   }
 decomp_index_table_t;
 extern const decomp_index_table_t gl_uninorm_decomp_index_table;
--- a/lib/uninorm/decomposition-table2.h
+++ b/lib/uninorm/decomposition-table2.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Decomposition of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 
 const unsigned char gl_uninorm_decomp_chars_table[] =
 {
@@ -1081,571 +1081,576 @@
   0x80, 0x00, 0x38, 0x00, 0x65, 0xE5, 0xC0, 0x00, 0x32, 0x80, 0x00, 0x39,
   0x00, 0x65, 0xE5, 0xC0, 0x00, 0x33, 0x80, 0x00, 0x30, 0x00, 0x65, 0xE5,
   0xC0, 0x00, 0x33, 0x80, 0x00, 0x31, 0x00, 0x65, 0xE5, 0xB8, 0x00, 0x67,
-  0x80, 0x00, 0x61, 0x00, 0x00, 0x6C, 0x20, 0xA7, 0x6F, 0x20, 0x01, 0x26,
-  0x20, 0x01, 0x53, 0x00, 0x8C, 0x48, 0x00, 0x66, 0xF4, 0x00, 0x8E, 0xCA,
-  0x00, 0x8C, 0xC8, 0x00, 0x6E, 0xD1, 0x00, 0x4E, 0x32, 0x00, 0x53, 0xE5,
-  0x00, 0x9F, 0x9C, 0x00, 0x9F, 0x9C, 0x00, 0x59, 0x51, 0x00, 0x91, 0xD1,
-  0x00, 0x55, 0x87, 0x00, 0x59, 0x48, 0x00, 0x61, 0xF6, 0x00, 0x76, 0x69,
-  0x00, 0x7F, 0x85, 0x00, 0x86, 0x3F, 0x00, 0x87, 0xBA, 0x00, 0x88, 0xF8,
-  0x00, 0x90, 0x8F, 0x00, 0x6A, 0x02, 0x00, 0x6D, 0x1B, 0x00, 0x70, 0xD9,
-  0x00, 0x73, 0xDE, 0x00, 0x84, 0x3D, 0x00, 0x91, 0x6A, 0x00, 0x99, 0xF1,
-  0x00, 0x4E, 0x82, 0x00, 0x53, 0x75, 0x00, 0x6B, 0x04, 0x00, 0x72, 0x1B,
-  0x00, 0x86, 0x2D, 0x00, 0x9E, 0x1E, 0x00, 0x5D, 0x50, 0x00, 0x6F, 0xEB,
-  0x00, 0x85, 0xCD, 0x00, 0x89, 0x64, 0x00, 0x62, 0xC9, 0x00, 0x81, 0xD8,
-  0x00, 0x88, 0x1F, 0x00, 0x5E, 0xCA, 0x00, 0x67, 0x17, 0x00, 0x6D, 0x6A,
-  0x00, 0x72, 0xFC, 0x00, 0x90, 0xCE, 0x00, 0x4F, 0x86, 0x00, 0x51, 0xB7,
-  0x00, 0x52, 0xDE, 0x00, 0x64, 0xC4, 0x00, 0x6A, 0xD3, 0x00, 0x72, 0x10,
-  0x00, 0x76, 0xE7, 0x00, 0x80, 0x01, 0x00, 0x86, 0x06, 0x00, 0x86, 0x5C,
-  0x00, 0x8D, 0xEF, 0x00, 0x97, 0x32, 0x00, 0x9B, 0x6F, 0x00, 0x9D, 0xFA,
-  0x00, 0x78, 0x8C, 0x00, 0x79, 0x7F, 0x00, 0x7D, 0xA0, 0x00, 0x83, 0xC9,
-  0x00, 0x93, 0x04, 0x00, 0x9E, 0x7F, 0x00, 0x8A, 0xD6, 0x00, 0x58, 0xDF,
-  0x00, 0x5F, 0x04, 0x00, 0x7C, 0x60, 0x00, 0x80, 0x7E, 0x00, 0x72, 0x62,
-  0x00, 0x78, 0xCA, 0x00, 0x8C, 0xC2, 0x00, 0x96, 0xF7, 0x00, 0x58, 0xD8,
-  0x00, 0x5C, 0x62, 0x00, 0x6A, 0x13, 0x00, 0x6D, 0xDA, 0x00, 0x6F, 0x0F,
-  0x00, 0x7D, 0x2F, 0x00, 0x7E, 0x37, 0x00, 0x96, 0x4B, 0x00, 0x52, 0xD2,
-  0x00, 0x80, 0x8B, 0x00, 0x51, 0xDC, 0x00, 0x51, 0xCC, 0x00, 0x7A, 0x1C,
-  0x00, 0x7D, 0xBE, 0x00, 0x83, 0xF1, 0x00, 0x96, 0x75, 0x00, 0x8B, 0x80,
-  0x00, 0x62, 0xCF, 0x00, 0x6A, 0x02, 0x00, 0x8A, 0xFE, 0x00, 0x4E, 0x39,
-  0x00, 0x5B, 0xE7, 0x00, 0x60, 0x12, 0x00, 0x73, 0x87, 0x00, 0x75, 0x70,
-  0x00, 0x53, 0x17, 0x00, 0x78, 0xFB, 0x00, 0x4F, 0xBF, 0x00, 0x5F, 0xA9,
-  0x00, 0x4E, 0x0D, 0x00, 0x6C, 0xCC, 0x00, 0x65, 0x78, 0x00, 0x7D, 0x22,
-  0x00, 0x53, 0xC3, 0x00, 0x58, 0x5E, 0x00, 0x77, 0x01, 0x00, 0x84, 0x49,
-  0x00, 0x8A, 0xAA, 0x00, 0x6B, 0xBA, 0x00, 0x8F, 0xB0, 0x00, 0x6C, 0x88,
-  0x00, 0x62, 0xFE, 0x00, 0x82, 0xE5, 0x00, 0x63, 0xA0, 0x00, 0x75, 0x65,
-  0x00, 0x4E, 0xAE, 0x00, 0x51, 0x69, 0x00, 0x51, 0xC9, 0x00, 0x68, 0x81,
-  0x00, 0x7C, 0xE7, 0x00, 0x82, 0x6F, 0x00, 0x8A, 0xD2, 0x00, 0x91, 0xCF,
-  0x00, 0x52, 0xF5, 0x00, 0x54, 0x42, 0x00, 0x59, 0x73, 0x00, 0x5E, 0xEC,
-  0x00, 0x65, 0xC5, 0x00, 0x6F, 0xFE, 0x00, 0x79, 0x2A, 0x00, 0x95, 0xAD,
-  0x00, 0x9A, 0x6A, 0x00, 0x9E, 0x97, 0x00, 0x9E, 0xCE, 0x00, 0x52, 0x9B,
-  0x00, 0x66, 0xC6, 0x00, 0x6B, 0x77, 0x00, 0x8F, 0x62, 0x00, 0x5E, 0x74,
-  0x00, 0x61, 0x90, 0x00, 0x62, 0x00, 0x00, 0x64, 0x9A, 0x00, 0x6F, 0x23,
-  0x00, 0x71, 0x49, 0x00, 0x74, 0x89, 0x00, 0x79, 0xCA, 0x00, 0x7D, 0xF4,
-  0x00, 0x80, 0x6F, 0x00, 0x8F, 0x26, 0x00, 0x84, 0xEE, 0x00, 0x90, 0x23,
-  0x00, 0x93, 0x4A, 0x00, 0x52, 0x17, 0x00, 0x52, 0xA3, 0x00, 0x54, 0xBD,
-  0x00, 0x70, 0xC8, 0x00, 0x88, 0xC2, 0x00, 0x8A, 0xAA, 0x00, 0x5E, 0xC9,
-  0x00, 0x5F, 0xF5, 0x00, 0x63, 0x7B, 0x00, 0x6B, 0xAE, 0x00, 0x7C, 0x3E,
-  0x00, 0x73, 0x75, 0x00, 0x4E, 0xE4, 0x00, 0x56, 0xF9, 0x00, 0x5B, 0xE7,
-  0x00, 0x5D, 0xBA, 0x00, 0x60, 0x1C, 0x00, 0x73, 0xB2, 0x00, 0x74, 0x69,
-  0x00, 0x7F, 0x9A, 0x00, 0x80, 0x46, 0x00, 0x92, 0x34, 0x00, 0x96, 0xF6,
-  0x00, 0x97, 0x48, 0x00, 0x98, 0x18, 0x00, 0x4F, 0x8B, 0x00, 0x79, 0xAE,
-  0x00, 0x91, 0xB4, 0x00, 0x96, 0xB8, 0x00, 0x60, 0xE1, 0x00, 0x4E, 0x86,
-  0x00, 0x50, 0xDA, 0x00, 0x5B, 0xEE, 0x00, 0x5C, 0x3F, 0x00, 0x65, 0x99,
-  0x00, 0x6A, 0x02, 0x00, 0x71, 0xCE, 0x00, 0x76, 0x42, 0x00, 0x84, 0xFC,
-  0x00, 0x90, 0x7C, 0x00, 0x9F, 0x8D, 0x00, 0x66, 0x88, 0x00, 0x96, 0x2E,
-  0x00, 0x52, 0x89, 0x00, 0x67, 0x7B, 0x00, 0x67, 0xF3, 0x00, 0x6D, 0x41,
-  0x00, 0x6E, 0x9C, 0x00, 0x74, 0x09, 0x00, 0x75, 0x59, 0x00, 0x78, 0x6B,
-  0x00, 0x7D, 0x10, 0x00, 0x98, 0x5E, 0x00, 0x51, 0x6D, 0x00, 0x62, 0x2E,
-  0x00, 0x96, 0x78, 0x00, 0x50, 0x2B, 0x00, 0x5D, 0x19, 0x00, 0x6D, 0xEA,
-  0x00, 0x8F, 0x2A, 0x00, 0x5F, 0x8B, 0x00, 0x61, 0x44, 0x00, 0x68, 0x17,
-  0x00, 0x73, 0x87, 0x00, 0x96, 0x86, 0x00, 0x52, 0x29, 0x00, 0x54, 0x0F,
-  0x00, 0x5C, 0x65, 0x00, 0x66, 0x13, 0x00, 0x67, 0x4E, 0x00, 0x68, 0xA8,
-  0x00, 0x6C, 0xE5, 0x00, 0x74, 0x06, 0x00, 0x75, 0xE2, 0x00, 0x7F, 0x79,
-  0x00, 0x88, 0xCF, 0x00, 0x88, 0xE1, 0x00, 0x91, 0xCC, 0x00, 0x96, 0xE2,
-  0x00, 0x53, 0x3F, 0x00, 0x6E, 0xBA, 0x00, 0x54, 0x1D, 0x00, 0x71, 0xD0,
-  0x00, 0x74, 0x98, 0x00, 0x85, 0xFA, 0x00, 0x96, 0xA3, 0x00, 0x9C, 0x57,
-  0x00, 0x9E, 0x9F, 0x00, 0x67, 0x97, 0x00, 0x6D, 0xCB, 0x00, 0x81, 0xE8,
-  0x00, 0x7A, 0xCB, 0x00, 0x7B, 0x20, 0x00, 0x7C, 0x92, 0x00, 0x72, 0xC0,
-  0x00, 0x70, 0x99, 0x00, 0x8B, 0x58, 0x00, 0x4E, 0xC0, 0x00, 0x83, 0x36,
-  0x00, 0x52, 0x3A, 0x00, 0x52, 0x07, 0x00, 0x5E, 0xA6, 0x00, 0x62, 0xD3,
-  0x00, 0x7C, 0xD6, 0x00, 0x5B, 0x85, 0x00, 0x6D, 0x1E, 0x00, 0x66, 0xB4,
-  0x00, 0x8F, 0x3B, 0x00, 0x88, 0x4C, 0x00, 0x96, 0x4D, 0x00, 0x89, 0x8B,
-  0x00, 0x5E, 0xD3, 0x00, 0x51, 0x40, 0x00, 0x55, 0xC0, 0x00, 0x58, 0x5A,
-  0x00, 0x66, 0x74, 0x00, 0x51, 0xDE, 0x00, 0x73, 0x2A, 0x00, 0x76, 0xCA,
-  0x00, 0x79, 0x3C, 0x00, 0x79, 0x5E, 0x00, 0x79, 0x65, 0x00, 0x79, 0x8F,
-  0x00, 0x97, 0x56, 0x00, 0x7C, 0xBE, 0x00, 0x7F, 0xBD, 0x00, 0x86, 0x12,
-  0x00, 0x8A, 0xF8, 0x00, 0x90, 0x38, 0x00, 0x90, 0xFD, 0x00, 0x98, 0xEF,
-  0x00, 0x98, 0xFC, 0x00, 0x99, 0x28, 0x00, 0x9D, 0xB4, 0x00, 0x90, 0xDE,
-  0x00, 0x96, 0xB7, 0x00, 0x4F, 0xAE, 0x00, 0x50, 0xE7, 0x00, 0x51, 0x4D,
-  0x00, 0x52, 0xC9, 0x00, 0x52, 0xE4, 0x00, 0x53, 0x51, 0x00, 0x55, 0x9D,
-  0x00, 0x56, 0x06, 0x00, 0x56, 0x68, 0x00, 0x58, 0x40, 0x00, 0x58, 0xA8,
-  0x00, 0x5C, 0x64, 0x00, 0x5C, 0x6E, 0x00, 0x60, 0x94, 0x00, 0x61, 0x68,
-  0x00, 0x61, 0x8E, 0x00, 0x61, 0xF2, 0x00, 0x65, 0x4F, 0x00, 0x65, 0xE2,
-  0x00, 0x66, 0x91, 0x00, 0x68, 0x85, 0x00, 0x6D, 0x77, 0x00, 0x6E, 0x1A,
-  0x00, 0x6F, 0x22, 0x00, 0x71, 0x6E, 0x00, 0x72, 0x2B, 0x00, 0x74, 0x22,
-  0x00, 0x78, 0x91, 0x00, 0x79, 0x3E, 0x00, 0x79, 0x49, 0x00, 0x79, 0x48,
-  0x00, 0x79, 0x50, 0x00, 0x79, 0x56, 0x00, 0x79, 0x5D, 0x00, 0x79, 0x8D,
-  0x00, 0x79, 0x8E, 0x00, 0x7A, 0x40, 0x00, 0x7A, 0x81, 0x00, 0x7B, 0xC0,
-  0x00, 0x7D, 0xF4, 0x00, 0x7E, 0x09, 0x00, 0x7E, 0x41, 0x00, 0x7F, 0x72,
-  0x00, 0x80, 0x05, 0x00, 0x81, 0xED, 0x00, 0x82, 0x79, 0x00, 0x82, 0x79,
-  0x00, 0x84, 0x57, 0x00, 0x89, 0x10, 0x00, 0x89, 0x96, 0x00, 0x8B, 0x01,
-  0x00, 0x8B, 0x39, 0x00, 0x8C, 0xD3, 0x00, 0x8D, 0x08, 0x00, 0x8F, 0xB6,
-  0x00, 0x90, 0x38, 0x00, 0x96, 0xE3, 0x00, 0x97, 0xFF, 0x00, 0x98, 0x3B,
-  0x00, 0x60, 0x75, 0x02, 0x42, 0xEE, 0x00, 0x82, 0x18, 0x00, 0x4E, 0x26,
-  0x00, 0x51, 0xB5, 0x00, 0x51, 0x68, 0x00, 0x4F, 0x80, 0x00, 0x51, 0x45,
-  0x00, 0x51, 0x80, 0x00, 0x52, 0xC7, 0x00, 0x52, 0xFA, 0x00, 0x55, 0x9D,
-  0x00, 0x55, 0x55, 0x00, 0x55, 0x99, 0x00, 0x55, 0xE2, 0x00, 0x58, 0x5A,
-  0x00, 0x58, 0xB3, 0x00, 0x59, 0x44, 0x00, 0x59, 0x54, 0x00, 0x5A, 0x62,
-  0x00, 0x5B, 0x28, 0x00, 0x5E, 0xD2, 0x00, 0x5E, 0xD9, 0x00, 0x5F, 0x69,
-  0x00, 0x5F, 0xAD, 0x00, 0x60, 0xD8, 0x00, 0x61, 0x4E, 0x00, 0x61, 0x08,
-  0x00, 0x61, 0x8E, 0x00, 0x61, 0x60, 0x00, 0x61, 0xF2, 0x00, 0x62, 0x34,
-  0x00, 0x63, 0xC4, 0x00, 0x64, 0x1C, 0x00, 0x64, 0x52, 0x00, 0x65, 0x56,
-  0x00, 0x66, 0x74, 0x00, 0x67, 0x17, 0x00, 0x67, 0x1B, 0x00, 0x67, 0x56,
-  0x00, 0x6B, 0x79, 0x00, 0x6B, 0xBA, 0x00, 0x6D, 0x41, 0x00, 0x6E, 0xDB,
-  0x00, 0x6E, 0xCB, 0x00, 0x6F, 0x22, 0x00, 0x70, 0x1E, 0x00, 0x71, 0x6E,
-  0x00, 0x77, 0xA7, 0x00, 0x72, 0x35, 0x00, 0x72, 0xAF, 0x00, 0x73, 0x2A,
-  0x00, 0x74, 0x71, 0x00, 0x75, 0x06, 0x00, 0x75, 0x3B, 0x00, 0x76, 0x1D,
-  0x00, 0x76, 0x1F, 0x00, 0x76, 0xCA, 0x00, 0x76, 0xDB, 0x00, 0x76, 0xF4,
-  0x00, 0x77, 0x4A, 0x00, 0x77, 0x40, 0x00, 0x78, 0xCC, 0x00, 0x7A, 0xB1,
-  0x00, 0x7B, 0xC0, 0x00, 0x7C, 0x7B, 0x00, 0x7D, 0x5B, 0x00, 0x7D, 0xF4,
-  0x00, 0x7F, 0x3E, 0x00, 0x80, 0x05, 0x00, 0x83, 0x52, 0x00, 0x83, 0xEF,
-  0x00, 0x87, 0x79, 0x00, 0x89, 0x41, 0x00, 0x89, 0x86, 0x00, 0x89, 0x96,
-  0x00, 0x8A, 0xBF, 0x00, 0x8A, 0xF8, 0x00, 0x8A, 0xCB, 0x00, 0x8B, 0x01,
-  0x00, 0x8A, 0xFE, 0x00, 0x8A, 0xED, 0x00, 0x8B, 0x39, 0x00, 0x8B, 0x8A,
-  0x00, 0x8D, 0x08, 0x00, 0x8F, 0x38, 0x00, 0x90, 0x72, 0x00, 0x91, 0x99,
-  0x00, 0x92, 0x76, 0x00, 0x96, 0x7C, 0x00, 0x96, 0xE3, 0x00, 0x97, 0x56,
-  0x00, 0x97, 0xDB, 0x00, 0x97, 0xFF, 0x00, 0x98, 0x0B, 0x00, 0x98, 0x3B,
-  0x00, 0x9B, 0x12, 0x00, 0x9F, 0x9C, 0x02, 0x28, 0x4A, 0x02, 0x28, 0x44,
-  0x02, 0x33, 0xD5, 0x00, 0x3B, 0x9D, 0x00, 0x40, 0x18, 0x00, 0x40, 0x39,
-  0x02, 0x52, 0x49, 0x02, 0x5C, 0xD0, 0x02, 0x7E, 0xD3, 0x00, 0x9F, 0x43,
-  0x00, 0x9F, 0x8E, 0xC0, 0x00, 0x66, 0x00, 0x00, 0x66, 0xC0, 0x00, 0x66,
-  0x00, 0x00, 0x69, 0xC0, 0x00, 0x66, 0x00, 0x00, 0x6C, 0xC0, 0x00, 0x66,
-  0x80, 0x00, 0x66, 0x00, 0x00, 0x69, 0xC0, 0x00, 0x66, 0x80, 0x00, 0x66,
-  0x00, 0x00, 0x6C, 0xC0, 0x01, 0x7F, 0x00, 0x00, 0x74, 0xC0, 0x00, 0x73,
-  0x00, 0x00, 0x74, 0xC0, 0x05, 0x74, 0x00, 0x05, 0x76, 0xC0, 0x05, 0x74,
-  0x00, 0x05, 0x65, 0xC0, 0x05, 0x74, 0x00, 0x05, 0x6B, 0xC0, 0x05, 0x7E,
-  0x00, 0x05, 0x76, 0xC0, 0x05, 0x74, 0x00, 0x05, 0x6D, 0x80, 0x05, 0xD9,
-  0x00, 0x05, 0xB4, 0x80, 0x05, 0xF2, 0x00, 0x05, 0xB7, 0x04, 0x05, 0xE2,
-  0x04, 0x05, 0xD0, 0x04, 0x05, 0xD3, 0x04, 0x05, 0xD4, 0x04, 0x05, 0xDB,
-  0x04, 0x05, 0xDC, 0x04, 0x05, 0xDD, 0x04, 0x05, 0xE8, 0x04, 0x05, 0xEA,
-  0x04, 0x00, 0x2B, 0x80, 0x05, 0xE9, 0x00, 0x05, 0xC1, 0x80, 0x05, 0xE9,
-  0x00, 0x05, 0xC2, 0x80, 0xFB, 0x49, 0x00, 0x05, 0xC1, 0x80, 0xFB, 0x49,
-  0x00, 0x05, 0xC2, 0x80, 0x05, 0xD0, 0x00, 0x05, 0xB7, 0x80, 0x05, 0xD0,
-  0x00, 0x05, 0xB8, 0x80, 0x05, 0xD0, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xD1,
-  0x00, 0x05, 0xBC, 0x80, 0x05, 0xD2, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xD3,
-  0x00, 0x05, 0xBC, 0x80, 0x05, 0xD4, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xD5,
-  0x00, 0x05, 0xBC, 0x80, 0x05, 0xD6, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xD8,
-  0x00, 0x05, 0xBC, 0x80, 0x05, 0xD9, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xDA,
-  0x00, 0x05, 0xBC, 0x80, 0x05, 0xDB, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xDC,
-  0x00, 0x05, 0xBC, 0x80, 0x05, 0xDE, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xE0,
-  0x00, 0x05, 0xBC, 0x80, 0x05, 0xE1, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xE3,
-  0x00, 0x05, 0xBC, 0x80, 0x05, 0xE4, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xE6,
-  0x00, 0x05, 0xBC, 0x80, 0x05, 0xE7, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xE8,
-  0x00, 0x05, 0xBC, 0x80, 0x05, 0xE9, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xEA,
-  0x00, 0x05, 0xBC, 0x80, 0x05, 0xD5, 0x00, 0x05, 0xB9, 0x80, 0x05, 0xD1,
-  0x00, 0x05, 0xBF, 0x80, 0x05, 0xDB, 0x00, 0x05, 0xBF, 0x80, 0x05, 0xE4,
-  0x00, 0x05, 0xBF, 0xC0, 0x05, 0xD0, 0x00, 0x05, 0xDC, 0x18, 0x06, 0x71,
-  0x14, 0x06, 0x71, 0x18, 0x06, 0x7B, 0x14, 0x06, 0x7B, 0x0C, 0x06, 0x7B,
-  0x10, 0x06, 0x7B, 0x18, 0x06, 0x7E, 0x14, 0x06, 0x7E, 0x0C, 0x06, 0x7E,
-  0x10, 0x06, 0x7E, 0x18, 0x06, 0x80, 0x14, 0x06, 0x80, 0x0C, 0x06, 0x80,
-  0x10, 0x06, 0x80, 0x18, 0x06, 0x7A, 0x14, 0x06, 0x7A, 0x0C, 0x06, 0x7A,
-  0x10, 0x06, 0x7A, 0x18, 0x06, 0x7F, 0x14, 0x06, 0x7F, 0x0C, 0x06, 0x7F,
-  0x10, 0x06, 0x7F, 0x18, 0x06, 0x79, 0x14, 0x06, 0x79, 0x0C, 0x06, 0x79,
-  0x10, 0x06, 0x79, 0x18, 0x06, 0xA4, 0x14, 0x06, 0xA4, 0x0C, 0x06, 0xA4,
-  0x10, 0x06, 0xA4, 0x18, 0x06, 0xA6, 0x14, 0x06, 0xA6, 0x0C, 0x06, 0xA6,
-  0x10, 0x06, 0xA6, 0x18, 0x06, 0x84, 0x14, 0x06, 0x84, 0x0C, 0x06, 0x84,
-  0x10, 0x06, 0x84, 0x18, 0x06, 0x83, 0x14, 0x06, 0x83, 0x0C, 0x06, 0x83,
-  0x10, 0x06, 0x83, 0x18, 0x06, 0x86, 0x14, 0x06, 0x86, 0x0C, 0x06, 0x86,
-  0x10, 0x06, 0x86, 0x18, 0x06, 0x87, 0x14, 0x06, 0x87, 0x0C, 0x06, 0x87,
-  0x10, 0x06, 0x87, 0x18, 0x06, 0x8D, 0x14, 0x06, 0x8D, 0x18, 0x06, 0x8C,
-  0x14, 0x06, 0x8C, 0x18, 0x06, 0x8E, 0x14, 0x06, 0x8E, 0x18, 0x06, 0x88,
-  0x14, 0x06, 0x88, 0x18, 0x06, 0x98, 0x14, 0x06, 0x98, 0x18, 0x06, 0x91,
-  0x14, 0x06, 0x91, 0x18, 0x06, 0xA9, 0x14, 0x06, 0xA9, 0x0C, 0x06, 0xA9,
-  0x10, 0x06, 0xA9, 0x18, 0x06, 0xAF, 0x14, 0x06, 0xAF, 0x0C, 0x06, 0xAF,
-  0x10, 0x06, 0xAF, 0x18, 0x06, 0xB3, 0x14, 0x06, 0xB3, 0x0C, 0x06, 0xB3,
-  0x10, 0x06, 0xB3, 0x18, 0x06, 0xB1, 0x14, 0x06, 0xB1, 0x0C, 0x06, 0xB1,
-  0x10, 0x06, 0xB1, 0x18, 0x06, 0xBA, 0x14, 0x06, 0xBA, 0x18, 0x06, 0xBB,
-  0x14, 0x06, 0xBB, 0x0C, 0x06, 0xBB, 0x10, 0x06, 0xBB, 0x18, 0x06, 0xC0,
-  0x14, 0x06, 0xC0, 0x18, 0x06, 0xC1, 0x14, 0x06, 0xC1, 0x0C, 0x06, 0xC1,
-  0x10, 0x06, 0xC1, 0x18, 0x06, 0xBE, 0x14, 0x06, 0xBE, 0x0C, 0x06, 0xBE,
-  0x10, 0x06, 0xBE, 0x18, 0x06, 0xD2, 0x14, 0x06, 0xD2, 0x18, 0x06, 0xD3,
-  0x14, 0x06, 0xD3, 0x18, 0x06, 0xAD, 0x14, 0x06, 0xAD, 0x0C, 0x06, 0xAD,
-  0x10, 0x06, 0xAD, 0x18, 0x06, 0xC7, 0x14, 0x06, 0xC7, 0x18, 0x06, 0xC6,
-  0x14, 0x06, 0xC6, 0x18, 0x06, 0xC8, 0x14, 0x06, 0xC8, 0x18, 0x06, 0x77,
-  0x18, 0x06, 0xCB, 0x14, 0x06, 0xCB, 0x18, 0x06, 0xC5, 0x14, 0x06, 0xC5,
-  0x18, 0x06, 0xC9, 0x14, 0x06, 0xC9, 0x18, 0x06, 0xD0, 0x14, 0x06, 0xD0,
-  0x0C, 0x06, 0xD0, 0x10, 0x06, 0xD0, 0x0C, 0x06, 0x49, 0x10, 0x06, 0x49,
-  0x98, 0x06, 0x26, 0x00, 0x06, 0x27, 0x94, 0x06, 0x26, 0x00, 0x06, 0x27,
-  0x98, 0x06, 0x26, 0x00, 0x06, 0xD5, 0x94, 0x06, 0x26, 0x00, 0x06, 0xD5,
-  0x98, 0x06, 0x26, 0x00, 0x06, 0x48, 0x94, 0x06, 0x26, 0x00, 0x06, 0x48,
-  0x98, 0x06, 0x26, 0x00, 0x06, 0xC7, 0x94, 0x06, 0x26, 0x00, 0x06, 0xC7,
-  0x98, 0x06, 0x26, 0x00, 0x06, 0xC6, 0x94, 0x06, 0x26, 0x00, 0x06, 0xC6,
-  0x98, 0x06, 0x26, 0x00, 0x06, 0xC8, 0x94, 0x06, 0x26, 0x00, 0x06, 0xC8,
-  0x98, 0x06, 0x26, 0x00, 0x06, 0xD0, 0x94, 0x06, 0x26, 0x00, 0x06, 0xD0,
-  0x8C, 0x06, 0x26, 0x00, 0x06, 0xD0, 0x98, 0x06, 0x26, 0x00, 0x06, 0x49,
-  0x94, 0x06, 0x26, 0x00, 0x06, 0x49, 0x8C, 0x06, 0x26, 0x00, 0x06, 0x49,
-  0x18, 0x06, 0xCC, 0x14, 0x06, 0xCC, 0x0C, 0x06, 0xCC, 0x10, 0x06, 0xCC,
-  0x98, 0x06, 0x26, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x26, 0x00, 0x06, 0x2D,
-  0x98, 0x06, 0x26, 0x00, 0x06, 0x45, 0x98, 0x06, 0x26, 0x00, 0x06, 0x49,
-  0x98, 0x06, 0x26, 0x00, 0x06, 0x4A, 0x98, 0x06, 0x28, 0x00, 0x06, 0x2C,
-  0x98, 0x06, 0x28, 0x00, 0x06, 0x2D, 0x98, 0x06, 0x28, 0x00, 0x06, 0x2E,
-  0x98, 0x06, 0x28, 0x00, 0x06, 0x45, 0x98, 0x06, 0x28, 0x00, 0x06, 0x49,
-  0x98, 0x06, 0x28, 0x00, 0x06, 0x4A, 0x98, 0x06, 0x2A, 0x00, 0x06, 0x2C,
-  0x98, 0x06, 0x2A, 0x00, 0x06, 0x2D, 0x98, 0x06, 0x2A, 0x00, 0x06, 0x2E,
-  0x98, 0x06, 0x2A, 0x00, 0x06, 0x45, 0x98, 0x06, 0x2A, 0x00, 0x06, 0x49,
-  0x98, 0x06, 0x2A, 0x00, 0x06, 0x4A, 0x98, 0x06, 0x2B, 0x00, 0x06, 0x2C,
-  0x98, 0x06, 0x2B, 0x00, 0x06, 0x45, 0x98, 0x06, 0x2B, 0x00, 0x06, 0x49,
-  0x98, 0x06, 0x2B, 0x00, 0x06, 0x4A, 0x98, 0x06, 0x2C, 0x00, 0x06, 0x2D,
-  0x98, 0x06, 0x2C, 0x00, 0x06, 0x45, 0x98, 0x06, 0x2D, 0x00, 0x06, 0x2C,
-  0x98, 0x06, 0x2D, 0x00, 0x06, 0x45, 0x98, 0x06, 0x2E, 0x00, 0x06, 0x2C,
-  0x98, 0x06, 0x2E, 0x00, 0x06, 0x2D, 0x98, 0x06, 0x2E, 0x00, 0x06, 0x45,
-  0x98, 0x06, 0x33, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x33, 0x00, 0x06, 0x2D,
-  0x98, 0x06, 0x33, 0x00, 0x06, 0x2E, 0x98, 0x06, 0x33, 0x00, 0x06, 0x45,
-  0x98, 0x06, 0x35, 0x00, 0x06, 0x2D, 0x98, 0x06, 0x35, 0x00, 0x06, 0x45,
-  0x98, 0x06, 0x36, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x36, 0x00, 0x06, 0x2D,
-  0x98, 0x06, 0x36, 0x00, 0x06, 0x2E, 0x98, 0x06, 0x36, 0x00, 0x06, 0x45,
-  0x98, 0x06, 0x37, 0x00, 0x06, 0x2D, 0x98, 0x06, 0x37, 0x00, 0x06, 0x45,
-  0x98, 0x06, 0x38, 0x00, 0x06, 0x45, 0x98, 0x06, 0x39, 0x00, 0x06, 0x2C,
-  0x98, 0x06, 0x39, 0x00, 0x06, 0x45, 0x98, 0x06, 0x3A, 0x00, 0x06, 0x2C,
-  0x98, 0x06, 0x3A, 0x00, 0x06, 0x45, 0x98, 0x06, 0x41, 0x00, 0x06, 0x2C,
-  0x98, 0x06, 0x41, 0x00, 0x06, 0x2D, 0x98, 0x06, 0x41, 0x00, 0x06, 0x2E,
-  0x98, 0x06, 0x41, 0x00, 0x06, 0x45, 0x98, 0x06, 0x41, 0x00, 0x06, 0x49,
-  0x98, 0x06, 0x41, 0x00, 0x06, 0x4A, 0x98, 0x06, 0x42, 0x00, 0x06, 0x2D,
-  0x98, 0x06, 0x42, 0x00, 0x06, 0x45, 0x98, 0x06, 0x42, 0x00, 0x06, 0x49,
-  0x98, 0x06, 0x42, 0x00, 0x06, 0x4A, 0x98, 0x06, 0x43, 0x00, 0x06, 0x27,
-  0x98, 0x06, 0x43, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x43, 0x00, 0x06, 0x2D,
-  0x98, 0x06, 0x43, 0x00, 0x06, 0x2E, 0x98, 0x06, 0x43, 0x00, 0x06, 0x44,
-  0x98, 0x06, 0x43, 0x00, 0x06, 0x45, 0x98, 0x06, 0x43, 0x00, 0x06, 0x49,
-  0x98, 0x06, 0x43, 0x00, 0x06, 0x4A, 0x98, 0x06, 0x44, 0x00, 0x06, 0x2C,
-  0x98, 0x06, 0x44, 0x00, 0x06, 0x2D, 0x98, 0x06, 0x44, 0x00, 0x06, 0x2E,
-  0x98, 0x06, 0x44, 0x00, 0x06, 0x45, 0x98, 0x06, 0x44, 0x00, 0x06, 0x49,
-  0x98, 0x06, 0x44, 0x00, 0x06, 0x4A, 0x98, 0x06, 0x45, 0x00, 0x06, 0x2C,
-  0x98, 0x06, 0x45, 0x00, 0x06, 0x2D, 0x98, 0x06, 0x45, 0x00, 0x06, 0x2E,
-  0x98, 0x06, 0x45, 0x00, 0x06, 0x45, 0x98, 0x06, 0x45, 0x00, 0x06, 0x49,
-  0x98, 0x06, 0x45, 0x00, 0x06, 0x4A, 0x98, 0x06, 0x46, 0x00, 0x06, 0x2C,
-  0x98, 0x06, 0x46, 0x00, 0x06, 0x2D, 0x98, 0x06, 0x46, 0x00, 0x06, 0x2E,
-  0x98, 0x06, 0x46, 0x00, 0x06, 0x45, 0x98, 0x06, 0x46, 0x00, 0x06, 0x49,
-  0x98, 0x06, 0x46, 0x00, 0x06, 0x4A, 0x98, 0x06, 0x47, 0x00, 0x06, 0x2C,
-  0x98, 0x06, 0x47, 0x00, 0x06, 0x45, 0x98, 0x06, 0x47, 0x00, 0x06, 0x49,
-  0x98, 0x06, 0x47, 0x00, 0x06, 0x4A, 0x98, 0x06, 0x4A, 0x00, 0x06, 0x2C,
-  0x98, 0x06, 0x4A, 0x00, 0x06, 0x2D, 0x98, 0x06, 0x4A, 0x00, 0x06, 0x2E,
-  0x98, 0x06, 0x4A, 0x00, 0x06, 0x45, 0x98, 0x06, 0x4A, 0x00, 0x06, 0x49,
-  0x98, 0x06, 0x4A, 0x00, 0x06, 0x4A, 0x98, 0x06, 0x30, 0x00, 0x06, 0x70,
-  0x98, 0x06, 0x31, 0x00, 0x06, 0x70, 0x98, 0x06, 0x49, 0x00, 0x06, 0x70,
-  0x98, 0x00, 0x20, 0x80, 0x06, 0x4C, 0x00, 0x06, 0x51, 0x98, 0x00, 0x20,
-  0x80, 0x06, 0x4D, 0x00, 0x06, 0x51, 0x98, 0x00, 0x20, 0x80, 0x06, 0x4E,
-  0x00, 0x06, 0x51, 0x98, 0x00, 0x20, 0x80, 0x06, 0x4F, 0x00, 0x06, 0x51,
-  0x98, 0x00, 0x20, 0x80, 0x06, 0x50, 0x00, 0x06, 0x51, 0x98, 0x00, 0x20,
-  0x80, 0x06, 0x51, 0x00, 0x06, 0x70, 0x94, 0x06, 0x26, 0x00, 0x06, 0x31,
-  0x94, 0x06, 0x26, 0x00, 0x06, 0x32, 0x94, 0x06, 0x26, 0x00, 0x06, 0x45,
-  0x94, 0x06, 0x26, 0x00, 0x06, 0x46, 0x94, 0x06, 0x26, 0x00, 0x06, 0x49,
-  0x94, 0x06, 0x26, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x28, 0x00, 0x06, 0x31,
-  0x94, 0x06, 0x28, 0x00, 0x06, 0x32, 0x94, 0x06, 0x28, 0x00, 0x06, 0x45,
-  0x94, 0x06, 0x28, 0x00, 0x06, 0x46, 0x94, 0x06, 0x28, 0x00, 0x06, 0x49,
-  0x94, 0x06, 0x28, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x2A, 0x00, 0x06, 0x31,
-  0x94, 0x06, 0x2A, 0x00, 0x06, 0x32, 0x94, 0x06, 0x2A, 0x00, 0x06, 0x45,
-  0x94, 0x06, 0x2A, 0x00, 0x06, 0x46, 0x94, 0x06, 0x2A, 0x00, 0x06, 0x49,
-  0x94, 0x06, 0x2A, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x2B, 0x00, 0x06, 0x31,
-  0x94, 0x06, 0x2B, 0x00, 0x06, 0x32, 0x94, 0x06, 0x2B, 0x00, 0x06, 0x45,
-  0x94, 0x06, 0x2B, 0x00, 0x06, 0x46, 0x94, 0x06, 0x2B, 0x00, 0x06, 0x49,
-  0x94, 0x06, 0x2B, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x41, 0x00, 0x06, 0x49,
-  0x94, 0x06, 0x41, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x42, 0x00, 0x06, 0x49,
-  0x94, 0x06, 0x42, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x43, 0x00, 0x06, 0x27,
-  0x94, 0x06, 0x43, 0x00, 0x06, 0x44, 0x94, 0x06, 0x43, 0x00, 0x06, 0x45,
-  0x94, 0x06, 0x43, 0x00, 0x06, 0x49, 0x94, 0x06, 0x43, 0x00, 0x06, 0x4A,
-  0x94, 0x06, 0x44, 0x00, 0x06, 0x45, 0x94, 0x06, 0x44, 0x00, 0x06, 0x49,
-  0x94, 0x06, 0x44, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x45, 0x00, 0x06, 0x27,
-  0x94, 0x06, 0x45, 0x00, 0x06, 0x45, 0x94, 0x06, 0x46, 0x00, 0x06, 0x31,
-  0x94, 0x06, 0x46, 0x00, 0x06, 0x32, 0x94, 0x06, 0x46, 0x00, 0x06, 0x45,
-  0x94, 0x06, 0x46, 0x00, 0x06, 0x46, 0x94, 0x06, 0x46, 0x00, 0x06, 0x49,
-  0x94, 0x06, 0x46, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x49, 0x00, 0x06, 0x70,
-  0x94, 0x06, 0x4A, 0x00, 0x06, 0x31, 0x94, 0x06, 0x4A, 0x00, 0x06, 0x32,
-  0x94, 0x06, 0x4A, 0x00, 0x06, 0x45, 0x94, 0x06, 0x4A, 0x00, 0x06, 0x46,
-  0x94, 0x06, 0x4A, 0x00, 0x06, 0x49, 0x94, 0x06, 0x4A, 0x00, 0x06, 0x4A,
-  0x8C, 0x06, 0x26, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x26, 0x00, 0x06, 0x2D,
-  0x8C, 0x06, 0x26, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x26, 0x00, 0x06, 0x45,
-  0x8C, 0x06, 0x26, 0x00, 0x06, 0x47, 0x8C, 0x06, 0x28, 0x00, 0x06, 0x2C,
-  0x8C, 0x06, 0x28, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x28, 0x00, 0x06, 0x2E,
-  0x8C, 0x06, 0x28, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x28, 0x00, 0x06, 0x47,
-  0x8C, 0x06, 0x2A, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x2A, 0x00, 0x06, 0x2D,
-  0x8C, 0x06, 0x2A, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x2A, 0x00, 0x06, 0x45,
-  0x8C, 0x06, 0x2A, 0x00, 0x06, 0x47, 0x8C, 0x06, 0x2B, 0x00, 0x06, 0x45,
-  0x8C, 0x06, 0x2C, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x2C, 0x00, 0x06, 0x45,
-  0x8C, 0x06, 0x2D, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x2D, 0x00, 0x06, 0x45,
-  0x8C, 0x06, 0x2E, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x2E, 0x00, 0x06, 0x45,
-  0x8C, 0x06, 0x33, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x33, 0x00, 0x06, 0x2D,
-  0x8C, 0x06, 0x33, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x33, 0x00, 0x06, 0x45,
-  0x8C, 0x06, 0x35, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x35, 0x00, 0x06, 0x2E,
-  0x8C, 0x06, 0x35, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x36, 0x00, 0x06, 0x2C,
-  0x8C, 0x06, 0x36, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x36, 0x00, 0x06, 0x2E,
-  0x8C, 0x06, 0x36, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x37, 0x00, 0x06, 0x2D,
-  0x8C, 0x06, 0x38, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x39, 0x00, 0x06, 0x2C,
-  0x8C, 0x06, 0x39, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x3A, 0x00, 0x06, 0x2C,
-  0x8C, 0x06, 0x3A, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x41, 0x00, 0x06, 0x2C,
-  0x8C, 0x06, 0x41, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x41, 0x00, 0x06, 0x2E,
-  0x8C, 0x06, 0x41, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x42, 0x00, 0x06, 0x2D,
-  0x8C, 0x06, 0x42, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x43, 0x00, 0x06, 0x2C,
-  0x8C, 0x06, 0x43, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x43, 0x00, 0x06, 0x2E,
-  0x8C, 0x06, 0x43, 0x00, 0x06, 0x44, 0x8C, 0x06, 0x43, 0x00, 0x06, 0x45,
-  0x8C, 0x06, 0x44, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x44, 0x00, 0x06, 0x2D,
-  0x8C, 0x06, 0x44, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x44, 0x00, 0x06, 0x45,
-  0x8C, 0x06, 0x44, 0x00, 0x06, 0x47, 0x8C, 0x06, 0x45, 0x00, 0x06, 0x2C,
-  0x8C, 0x06, 0x45, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x45, 0x00, 0x06, 0x2E,
-  0x8C, 0x06, 0x45, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x46, 0x00, 0x06, 0x2C,
-  0x8C, 0x06, 0x46, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x46, 0x00, 0x06, 0x2E,
-  0x8C, 0x06, 0x46, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x46, 0x00, 0x06, 0x47,
-  0x8C, 0x06, 0x47, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x47, 0x00, 0x06, 0x45,
-  0x8C, 0x06, 0x47, 0x00, 0x06, 0x70, 0x8C, 0x06, 0x4A, 0x00, 0x06, 0x2C,
-  0x8C, 0x06, 0x4A, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x4A, 0x00, 0x06, 0x2E,
-  0x8C, 0x06, 0x4A, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x4A, 0x00, 0x06, 0x47,
-  0x90, 0x06, 0x26, 0x00, 0x06, 0x45, 0x90, 0x06, 0x26, 0x00, 0x06, 0x47,
-  0x90, 0x06, 0x28, 0x00, 0x06, 0x45, 0x90, 0x06, 0x28, 0x00, 0x06, 0x47,
-  0x90, 0x06, 0x2A, 0x00, 0x06, 0x45, 0x90, 0x06, 0x2A, 0x00, 0x06, 0x47,
-  0x90, 0x06, 0x2B, 0x00, 0x06, 0x45, 0x90, 0x06, 0x2B, 0x00, 0x06, 0x47,
-  0x90, 0x06, 0x33, 0x00, 0x06, 0x45, 0x90, 0x06, 0x33, 0x00, 0x06, 0x47,
-  0x90, 0x06, 0x34, 0x00, 0x06, 0x45, 0x90, 0x06, 0x34, 0x00, 0x06, 0x47,
-  0x90, 0x06, 0x43, 0x00, 0x06, 0x44, 0x90, 0x06, 0x43, 0x00, 0x06, 0x45,
-  0x90, 0x06, 0x44, 0x00, 0x06, 0x45, 0x90, 0x06, 0x46, 0x00, 0x06, 0x45,
-  0x90, 0x06, 0x46, 0x00, 0x06, 0x47, 0x90, 0x06, 0x4A, 0x00, 0x06, 0x45,
-  0x90, 0x06, 0x4A, 0x00, 0x06, 0x47, 0x90, 0x06, 0x40, 0x80, 0x06, 0x4E,
-  0x00, 0x06, 0x51, 0x90, 0x06, 0x40, 0x80, 0x06, 0x4F, 0x00, 0x06, 0x51,
-  0x90, 0x06, 0x40, 0x80, 0x06, 0x50, 0x00, 0x06, 0x51, 0x98, 0x06, 0x37,
-  0x00, 0x06, 0x49, 0x98, 0x06, 0x37, 0x00, 0x06, 0x4A, 0x98, 0x06, 0x39,
-  0x00, 0x06, 0x49, 0x98, 0x06, 0x39, 0x00, 0x06, 0x4A, 0x98, 0x06, 0x3A,
-  0x00, 0x06, 0x49, 0x98, 0x06, 0x3A, 0x00, 0x06, 0x4A, 0x98, 0x06, 0x33,
-  0x00, 0x06, 0x49, 0x98, 0x06, 0x33, 0x00, 0x06, 0x4A, 0x98, 0x06, 0x34,
-  0x00, 0x06, 0x49, 0x98, 0x06, 0x34, 0x00, 0x06, 0x4A, 0x98, 0x06, 0x2D,
-  0x00, 0x06, 0x49, 0x98, 0x06, 0x2D, 0x00, 0x06, 0x4A, 0x98, 0x06, 0x2C,
-  0x00, 0x06, 0x49, 0x98, 0x06, 0x2C, 0x00, 0x06, 0x4A, 0x98, 0x06, 0x2E,
-  0x00, 0x06, 0x49, 0x98, 0x06, 0x2E, 0x00, 0x06, 0x4A, 0x98, 0x06, 0x35,
-  0x00, 0x06, 0x49, 0x98, 0x06, 0x35, 0x00, 0x06, 0x4A, 0x98, 0x06, 0x36,
-  0x00, 0x06, 0x49, 0x98, 0x06, 0x36, 0x00, 0x06, 0x4A, 0x98, 0x06, 0x34,
-  0x00, 0x06, 0x2C, 0x98, 0x06, 0x34, 0x00, 0x06, 0x2D, 0x98, 0x06, 0x34,
-  0x00, 0x06, 0x2E, 0x98, 0x06, 0x34, 0x00, 0x06, 0x45, 0x98, 0x06, 0x34,
-  0x00, 0x06, 0x31, 0x98, 0x06, 0x33, 0x00, 0x06, 0x31, 0x98, 0x06, 0x35,
-  0x00, 0x06, 0x31, 0x98, 0x06, 0x36, 0x00, 0x06, 0x31, 0x94, 0x06, 0x37,
-  0x00, 0x06, 0x49, 0x94, 0x06, 0x37, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x39,
-  0x00, 0x06, 0x49, 0x94, 0x06, 0x39, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x3A,
-  0x00, 0x06, 0x49, 0x94, 0x06, 0x3A, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x33,
-  0x00, 0x06, 0x49, 0x94, 0x06, 0x33, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x34,
-  0x00, 0x06, 0x49, 0x94, 0x06, 0x34, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x2D,
-  0x00, 0x06, 0x49, 0x94, 0x06, 0x2D, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x2C,
-  0x00, 0x06, 0x49, 0x94, 0x06, 0x2C, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x2E,
-  0x00, 0x06, 0x49, 0x94, 0x06, 0x2E, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x35,
-  0x00, 0x06, 0x49, 0x94, 0x06, 0x35, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x36,
-  0x00, 0x06, 0x49, 0x94, 0x06, 0x36, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x34,
-  0x00, 0x06, 0x2C, 0x94, 0x06, 0x34, 0x00, 0x06, 0x2D, 0x94, 0x06, 0x34,
-  0x00, 0x06, 0x2E, 0x94, 0x06, 0x34, 0x00, 0x06, 0x45, 0x94, 0x06, 0x34,
-  0x00, 0x06, 0x31, 0x94, 0x06, 0x33, 0x00, 0x06, 0x31, 0x94, 0x06, 0x35,
-  0x00, 0x06, 0x31, 0x94, 0x06, 0x36, 0x00, 0x06, 0x31, 0x8C, 0x06, 0x34,
-  0x00, 0x06, 0x2C, 0x8C, 0x06, 0x34, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x34,
-  0x00, 0x06, 0x2E, 0x8C, 0x06, 0x34, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x33,
-  0x00, 0x06, 0x47, 0x8C, 0x06, 0x34, 0x00, 0x06, 0x47, 0x8C, 0x06, 0x37,
-  0x00, 0x06, 0x45, 0x90, 0x06, 0x33, 0x00, 0x06, 0x2C, 0x90, 0x06, 0x33,
-  0x00, 0x06, 0x2D, 0x90, 0x06, 0x33, 0x00, 0x06, 0x2E, 0x90, 0x06, 0x34,
-  0x00, 0x06, 0x2C, 0x90, 0x06, 0x34, 0x00, 0x06, 0x2D, 0x90, 0x06, 0x34,
-  0x00, 0x06, 0x2E, 0x90, 0x06, 0x37, 0x00, 0x06, 0x45, 0x90, 0x06, 0x38,
-  0x00, 0x06, 0x45, 0x94, 0x06, 0x27, 0x00, 0x06, 0x4B, 0x98, 0x06, 0x27,
-  0x00, 0x06, 0x4B, 0x8C, 0x06, 0x2A, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x45,
-  0x94, 0x06, 0x2A, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x2A,
-  0x80, 0x06, 0x2D, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x2A, 0x80, 0x06, 0x2D,
-  0x00, 0x06, 0x45, 0x8C, 0x06, 0x2A, 0x80, 0x06, 0x2E, 0x00, 0x06, 0x45,
-  0x8C, 0x06, 0x2A, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x2A,
-  0x80, 0x06, 0x45, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x2A, 0x80, 0x06, 0x45,
-  0x00, 0x06, 0x2E, 0x94, 0x06, 0x2C, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2D,
-  0x8C, 0x06, 0x2C, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2D, 0x94, 0x06, 0x2D,
-  0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x2D, 0x80, 0x06, 0x45,
-  0x00, 0x06, 0x49, 0x8C, 0x06, 0x33, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x2C,
-  0x8C, 0x06, 0x33, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x2D, 0x94, 0x06, 0x33,
-  0x80, 0x06, 0x2C, 0x00, 0x06, 0x49, 0x94, 0x06, 0x33, 0x80, 0x06, 0x45,
-  0x00, 0x06, 0x2D, 0x8C, 0x06, 0x33, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2D,
-  0x8C, 0x06, 0x33, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2C, 0x94, 0x06, 0x33,
-  0x80, 0x06, 0x45, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x33, 0x80, 0x06, 0x45,
-  0x00, 0x06, 0x45, 0x94, 0x06, 0x35, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x2D,
-  0x8C, 0x06, 0x35, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x2D, 0x94, 0x06, 0x35,
-  0x80, 0x06, 0x45, 0x00, 0x06, 0x45, 0x94, 0x06, 0x34, 0x80, 0x06, 0x2D,
-  0x00, 0x06, 0x45, 0x8C, 0x06, 0x34, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x45,
-  0x94, 0x06, 0x34, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x34,
-  0x80, 0x06, 0x45, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x34, 0x80, 0x06, 0x45,
-  0x00, 0x06, 0x2E, 0x94, 0x06, 0x34, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45,
-  0x8C, 0x06, 0x34, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45, 0x94, 0x06, 0x36,
-  0x80, 0x06, 0x2D, 0x00, 0x06, 0x49, 0x94, 0x06, 0x36, 0x80, 0x06, 0x2E,
-  0x00, 0x06, 0x45, 0x8C, 0x06, 0x36, 0x80, 0x06, 0x2E, 0x00, 0x06, 0x45,
-  0x94, 0x06, 0x37, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x37,
-  0x80, 0x06, 0x45, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x37, 0x80, 0x06, 0x45,
-  0x00, 0x06, 0x45, 0x94, 0x06, 0x37, 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A,
-  0x94, 0x06, 0x39, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x45, 0x94, 0x06, 0x39,
-  0x80, 0x06, 0x45, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x39, 0x80, 0x06, 0x45,
-  0x00, 0x06, 0x45, 0x94, 0x06, 0x39, 0x80, 0x06, 0x45, 0x00, 0x06, 0x49,
-  0x94, 0x06, 0x3A, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45, 0x94, 0x06, 0x3A,
-  0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x3A, 0x80, 0x06, 0x45,
-  0x00, 0x06, 0x49, 0x94, 0x06, 0x41, 0x80, 0x06, 0x2E, 0x00, 0x06, 0x45,
-  0x8C, 0x06, 0x41, 0x80, 0x06, 0x2E, 0x00, 0x06, 0x45, 0x94, 0x06, 0x42,
-  0x80, 0x06, 0x45, 0x00, 0x06, 0x2D, 0x94, 0x06, 0x42, 0x80, 0x06, 0x45,
-  0x00, 0x06, 0x45, 0x94, 0x06, 0x44, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x45,
-  0x94, 0x06, 0x44, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x44,
-  0x80, 0x06, 0x2D, 0x00, 0x06, 0x49, 0x8C, 0x06, 0x44, 0x80, 0x06, 0x2C,
-  0x00, 0x06, 0x2C, 0x94, 0x06, 0x44, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x2C,
-  0x94, 0x06, 0x44, 0x80, 0x06, 0x2E, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x44,
-  0x80, 0x06, 0x2E, 0x00, 0x06, 0x45, 0x94, 0x06, 0x44, 0x80, 0x06, 0x45,
-  0x00, 0x06, 0x2D, 0x8C, 0x06, 0x44, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2D,
-  0x8C, 0x06, 0x45, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x45,
-  0x80, 0x06, 0x2D, 0x00, 0x06, 0x45, 0x94, 0x06, 0x45, 0x80, 0x06, 0x2D,
-  0x00, 0x06, 0x4A, 0x8C, 0x06, 0x45, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x2D,
-  0x8C, 0x06, 0x45, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x45,
-  0x80, 0x06, 0x2E, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x45, 0x80, 0x06, 0x2E,
-  0x00, 0x06, 0x45, 0x8C, 0x06, 0x45, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x2E,
-  0x8C, 0x06, 0x47, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x47,
-  0x80, 0x06, 0x45, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x46, 0x80, 0x06, 0x2D,
-  0x00, 0x06, 0x45, 0x94, 0x06, 0x46, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x49,
-  0x94, 0x06, 0x46, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x46,
-  0x80, 0x06, 0x2C, 0x00, 0x06, 0x45, 0x94, 0x06, 0x46, 0x80, 0x06, 0x2C,
-  0x00, 0x06, 0x49, 0x94, 0x06, 0x46, 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A,
-  0x94, 0x06, 0x46, 0x80, 0x06, 0x45, 0x00, 0x06, 0x49, 0x94, 0x06, 0x4A,
-  0x80, 0x06, 0x45, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x4A, 0x80, 0x06, 0x45,
-  0x00, 0x06, 0x45, 0x94, 0x06, 0x28, 0x80, 0x06, 0x2E, 0x00, 0x06, 0x4A,
-  0x94, 0x06, 0x2A, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x2A,
-  0x80, 0x06, 0x2C, 0x00, 0x06, 0x49, 0x94, 0x06, 0x2A, 0x80, 0x06, 0x2E,
-  0x00, 0x06, 0x4A, 0x94, 0x06, 0x2A, 0x80, 0x06, 0x2E, 0x00, 0x06, 0x49,
-  0x94, 0x06, 0x2A, 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x2A,
-  0x80, 0x06, 0x45, 0x00, 0x06, 0x49, 0x94, 0x06, 0x2C, 0x80, 0x06, 0x45,
-  0x00, 0x06, 0x4A, 0x94, 0x06, 0x2C, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x49,
-  0x94, 0x06, 0x2C, 0x80, 0x06, 0x45, 0x00, 0x06, 0x49, 0x94, 0x06, 0x33,
-  0x80, 0x06, 0x2E, 0x00, 0x06, 0x49, 0x94, 0x06, 0x35, 0x80, 0x06, 0x2D,
-  0x00, 0x06, 0x4A, 0x94, 0x06, 0x34, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x4A,
-  0x94, 0x06, 0x36, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x44,
-  0x80, 0x06, 0x2C, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x44, 0x80, 0x06, 0x45,
-  0x00, 0x06, 0x4A, 0x94, 0x06, 0x4A, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x4A,
-  0x94, 0x06, 0x4A, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x4A,
-  0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x45, 0x80, 0x06, 0x45,
-  0x00, 0x06, 0x4A, 0x94, 0x06, 0x42, 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A,
-  0x94, 0x06, 0x46, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x4A, 0x8C, 0x06, 0x42,
-  0x80, 0x06, 0x45, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x44, 0x80, 0x06, 0x2D,
-  0x00, 0x06, 0x45, 0x94, 0x06, 0x39, 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A,
-  0x94, 0x06, 0x43, 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, 0x8C, 0x06, 0x46,
-  0x80, 0x06, 0x2C, 0x00, 0x06, 0x2D, 0x94, 0x06, 0x45, 0x80, 0x06, 0x2E,
-  0x00, 0x06, 0x4A, 0x8C, 0x06, 0x44, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x45,
-  0x94, 0x06, 0x43, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45, 0x94, 0x06, 0x44,
-  0x80, 0x06, 0x2C, 0x00, 0x06, 0x45, 0x94, 0x06, 0x46, 0x80, 0x06, 0x2C,
-  0x00, 0x06, 0x2D, 0x94, 0x06, 0x2C, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x4A,
-  0x94, 0x06, 0x2D, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x45,
-  0x80, 0x06, 0x2C, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x41, 0x80, 0x06, 0x45,
-  0x00, 0x06, 0x4A, 0x94, 0x06, 0x28, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x4A,
-  0x8C, 0x06, 0x43, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x39,
-  0x80, 0x06, 0x2C, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x35, 0x80, 0x06, 0x45,
-  0x00, 0x06, 0x45, 0x94, 0x06, 0x33, 0x80, 0x06, 0x2E, 0x00, 0x06, 0x4A,
-  0x94, 0x06, 0x46, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x4A, 0x98, 0x06, 0x35,
-  0x80, 0x06, 0x44, 0x00, 0x06, 0xD2, 0x98, 0x06, 0x42, 0x80, 0x06, 0x44,
-  0x00, 0x06, 0xD2, 0x98, 0x06, 0x27, 0x80, 0x06, 0x44, 0x80, 0x06, 0x44,
-  0x00, 0x06, 0x47, 0x98, 0x06, 0x27, 0x80, 0x06, 0x43, 0x80, 0x06, 0x28,
-  0x00, 0x06, 0x31, 0x98, 0x06, 0x45, 0x80, 0x06, 0x2D, 0x80, 0x06, 0x45,
-  0x00, 0x06, 0x2F, 0x98, 0x06, 0x35, 0x80, 0x06, 0x44, 0x80, 0x06, 0x39,
-  0x00, 0x06, 0x45, 0x98, 0x06, 0x31, 0x80, 0x06, 0x33, 0x80, 0x06, 0x48,
-  0x00, 0x06, 0x44, 0x98, 0x06, 0x39, 0x80, 0x06, 0x44, 0x80, 0x06, 0x4A,
-  0x00, 0x06, 0x47, 0x98, 0x06, 0x48, 0x80, 0x06, 0x33, 0x80, 0x06, 0x44,
-  0x00, 0x06, 0x45, 0x98, 0x06, 0x35, 0x80, 0x06, 0x44, 0x00, 0x06, 0x49,
-  0x98, 0x06, 0x35, 0x80, 0x06, 0x44, 0x80, 0x06, 0x49, 0x80, 0x00, 0x20,
-  0x80, 0x06, 0x27, 0x80, 0x06, 0x44, 0x80, 0x06, 0x44, 0x80, 0x06, 0x47,
-  0x80, 0x00, 0x20, 0x80, 0x06, 0x39, 0x80, 0x06, 0x44, 0x80, 0x06, 0x4A,
-  0x80, 0x06, 0x47, 0x80, 0x00, 0x20, 0x80, 0x06, 0x48, 0x80, 0x06, 0x33,
-  0x80, 0x06, 0x44, 0x00, 0x06, 0x45, 0x98, 0x06, 0x2C, 0x80, 0x06, 0x44,
-  0x80, 0x00, 0x20, 0x80, 0x06, 0x2C, 0x80, 0x06, 0x44, 0x80, 0x06, 0x27,
-  0x80, 0x06, 0x44, 0x00, 0x06, 0x47, 0x98, 0x06, 0x31, 0x80, 0x06, 0xCC,
-  0x80, 0x06, 0x27, 0x00, 0x06, 0x44, 0x28, 0x00, 0x2C, 0x28, 0x30, 0x01,
-  0x28, 0x30, 0x02, 0x28, 0x00, 0x3A, 0x28, 0x00, 0x3B, 0x28, 0x00, 0x21,
-  0x28, 0x00, 0x3F, 0x28, 0x30, 0x16, 0x28, 0x30, 0x17, 0x28, 0x20, 0x26,
-  0x28, 0x20, 0x25, 0x28, 0x20, 0x14, 0x28, 0x20, 0x13, 0x28, 0x00, 0x5F,
-  0x28, 0x00, 0x5F, 0x28, 0x00, 0x28, 0x28, 0x00, 0x29, 0x28, 0x00, 0x7B,
-  0x28, 0x00, 0x7D, 0x28, 0x30, 0x14, 0x28, 0x30, 0x15, 0x28, 0x30, 0x10,
-  0x28, 0x30, 0x11, 0x28, 0x30, 0x0A, 0x28, 0x30, 0x0B, 0x28, 0x30, 0x08,
-  0x28, 0x30, 0x09, 0x28, 0x30, 0x0C, 0x28, 0x30, 0x0D, 0x28, 0x30, 0x0E,
-  0x28, 0x30, 0x0F, 0x28, 0x00, 0x5B, 0x28, 0x00, 0x5D, 0x40, 0x20, 0x3E,
-  0x40, 0x20, 0x3E, 0x40, 0x20, 0x3E, 0x40, 0x20, 0x3E, 0x40, 0x00, 0x5F,
-  0x40, 0x00, 0x5F, 0x40, 0x00, 0x5F, 0x34, 0x00, 0x2C, 0x34, 0x30, 0x01,
-  0x34, 0x00, 0x2E, 0x34, 0x00, 0x3B, 0x34, 0x00, 0x3A, 0x34, 0x00, 0x3F,
-  0x34, 0x00, 0x21, 0x34, 0x20, 0x14, 0x34, 0x00, 0x28, 0x34, 0x00, 0x29,
-  0x34, 0x00, 0x7B, 0x34, 0x00, 0x7D, 0x34, 0x30, 0x14, 0x34, 0x30, 0x15,
-  0x34, 0x00, 0x23, 0x34, 0x00, 0x26, 0x34, 0x00, 0x2A, 0x34, 0x00, 0x2B,
-  0x34, 0x00, 0x2D, 0x34, 0x00, 0x3C, 0x34, 0x00, 0x3E, 0x34, 0x00, 0x3D,
-  0x34, 0x00, 0x5C, 0x34, 0x00, 0x24, 0x34, 0x00, 0x25, 0x34, 0x00, 0x40,
-  0x98, 0x00, 0x20, 0x00, 0x06, 0x4B, 0x90, 0x06, 0x40, 0x00, 0x06, 0x4B,
-  0x98, 0x00, 0x20, 0x00, 0x06, 0x4C, 0x98, 0x00, 0x20, 0x00, 0x06, 0x4D,
-  0x98, 0x00, 0x20, 0x00, 0x06, 0x4E, 0x90, 0x06, 0x40, 0x00, 0x06, 0x4E,
-  0x98, 0x00, 0x20, 0x00, 0x06, 0x4F, 0x90, 0x06, 0x40, 0x00, 0x06, 0x4F,
-  0x98, 0x00, 0x20, 0x00, 0x06, 0x50, 0x90, 0x06, 0x40, 0x00, 0x06, 0x50,
-  0x98, 0x00, 0x20, 0x00, 0x06, 0x51, 0x90, 0x06, 0x40, 0x00, 0x06, 0x51,
-  0x98, 0x00, 0x20, 0x00, 0x06, 0x52, 0x90, 0x06, 0x40, 0x00, 0x06, 0x52,
-  0x18, 0x06, 0x21, 0x18, 0x06, 0x22, 0x14, 0x06, 0x22, 0x18, 0x06, 0x23,
-  0x14, 0x06, 0x23, 0x18, 0x06, 0x24, 0x14, 0x06, 0x24, 0x18, 0x06, 0x25,
-  0x14, 0x06, 0x25, 0x18, 0x06, 0x26, 0x14, 0x06, 0x26, 0x0C, 0x06, 0x26,
-  0x10, 0x06, 0x26, 0x18, 0x06, 0x27, 0x14, 0x06, 0x27, 0x18, 0x06, 0x28,
-  0x14, 0x06, 0x28, 0x0C, 0x06, 0x28, 0x10, 0x06, 0x28, 0x18, 0x06, 0x29,
-  0x14, 0x06, 0x29, 0x18, 0x06, 0x2A, 0x14, 0x06, 0x2A, 0x0C, 0x06, 0x2A,
-  0x10, 0x06, 0x2A, 0x18, 0x06, 0x2B, 0x14, 0x06, 0x2B, 0x0C, 0x06, 0x2B,
-  0x10, 0x06, 0x2B, 0x18, 0x06, 0x2C, 0x14, 0x06, 0x2C, 0x0C, 0x06, 0x2C,
-  0x10, 0x06, 0x2C, 0x18, 0x06, 0x2D, 0x14, 0x06, 0x2D, 0x0C, 0x06, 0x2D,
-  0x10, 0x06, 0x2D, 0x18, 0x06, 0x2E, 0x14, 0x06, 0x2E, 0x0C, 0x06, 0x2E,
-  0x10, 0x06, 0x2E, 0x18, 0x06, 0x2F, 0x14, 0x06, 0x2F, 0x18, 0x06, 0x30,
-  0x14, 0x06, 0x30, 0x18, 0x06, 0x31, 0x14, 0x06, 0x31, 0x18, 0x06, 0x32,
-  0x14, 0x06, 0x32, 0x18, 0x06, 0x33, 0x14, 0x06, 0x33, 0x0C, 0x06, 0x33,
-  0x10, 0x06, 0x33, 0x18, 0x06, 0x34, 0x14, 0x06, 0x34, 0x0C, 0x06, 0x34,
-  0x10, 0x06, 0x34, 0x18, 0x06, 0x35, 0x14, 0x06, 0x35, 0x0C, 0x06, 0x35,
-  0x10, 0x06, 0x35, 0x18, 0x06, 0x36, 0x14, 0x06, 0x36, 0x0C, 0x06, 0x36,
-  0x10, 0x06, 0x36, 0x18, 0x06, 0x37, 0x14, 0x06, 0x37, 0x0C, 0x06, 0x37,
-  0x10, 0x06, 0x37, 0x18, 0x06, 0x38, 0x14, 0x06, 0x38, 0x0C, 0x06, 0x38,
-  0x10, 0x06, 0x38, 0x18, 0x06, 0x39, 0x14, 0x06, 0x39, 0x0C, 0x06, 0x39,
-  0x10, 0x06, 0x39, 0x18, 0x06, 0x3A, 0x14, 0x06, 0x3A, 0x0C, 0x06, 0x3A,
-  0x10, 0x06, 0x3A, 0x18, 0x06, 0x41, 0x14, 0x06, 0x41, 0x0C, 0x06, 0x41,
-  0x10, 0x06, 0x41, 0x18, 0x06, 0x42, 0x14, 0x06, 0x42, 0x0C, 0x06, 0x42,
-  0x10, 0x06, 0x42, 0x18, 0x06, 0x43, 0x14, 0x06, 0x43, 0x0C, 0x06, 0x43,
-  0x10, 0x06, 0x43, 0x18, 0x06, 0x44, 0x14, 0x06, 0x44, 0x0C, 0x06, 0x44,
-  0x10, 0x06, 0x44, 0x18, 0x06, 0x45, 0x14, 0x06, 0x45, 0x0C, 0x06, 0x45,
-  0x10, 0x06, 0x45, 0x18, 0x06, 0x46, 0x14, 0x06, 0x46, 0x0C, 0x06, 0x46,
-  0x10, 0x06, 0x46, 0x18, 0x06, 0x47, 0x14, 0x06, 0x47, 0x0C, 0x06, 0x47,
-  0x10, 0x06, 0x47, 0x18, 0x06, 0x48, 0x14, 0x06, 0x48, 0x18, 0x06, 0x49,
-  0x14, 0x06, 0x49, 0x18, 0x06, 0x4A, 0x14, 0x06, 0x4A, 0x0C, 0x06, 0x4A,
-  0x10, 0x06, 0x4A, 0x98, 0x06, 0x44, 0x00, 0x06, 0x22, 0x94, 0x06, 0x44,
-  0x00, 0x06, 0x22, 0x98, 0x06, 0x44, 0x00, 0x06, 0x23, 0x94, 0x06, 0x44,
-  0x00, 0x06, 0x23, 0x98, 0x06, 0x44, 0x00, 0x06, 0x25, 0x94, 0x06, 0x44,
-  0x00, 0x06, 0x25, 0x98, 0x06, 0x44, 0x00, 0x06, 0x27, 0x94, 0x06, 0x44,
-  0x00, 0x06, 0x27, 0x2C, 0x00, 0x21, 0x2C, 0x00, 0x22, 0x2C, 0x00, 0x23,
-  0x2C, 0x00, 0x24, 0x2C, 0x00, 0x25, 0x2C, 0x00, 0x26, 0x2C, 0x00, 0x27,
-  0x2C, 0x00, 0x28, 0x2C, 0x00, 0x29, 0x2C, 0x00, 0x2A, 0x2C, 0x00, 0x2B,
-  0x2C, 0x00, 0x2C, 0x2C, 0x00, 0x2D, 0x2C, 0x00, 0x2E, 0x2C, 0x00, 0x2F,
-  0x2C, 0x00, 0x30, 0x2C, 0x00, 0x31, 0x2C, 0x00, 0x32, 0x2C, 0x00, 0x33,
-  0x2C, 0x00, 0x34, 0x2C, 0x00, 0x35, 0x2C, 0x00, 0x36, 0x2C, 0x00, 0x37,
-  0x2C, 0x00, 0x38, 0x2C, 0x00, 0x39, 0x2C, 0x00, 0x3A, 0x2C, 0x00, 0x3B,
-  0x2C, 0x00, 0x3C, 0x2C, 0x00, 0x3D, 0x2C, 0x00, 0x3E, 0x2C, 0x00, 0x3F,
-  0x2C, 0x00, 0x40, 0x2C, 0x00, 0x41, 0x2C, 0x00, 0x42, 0x2C, 0x00, 0x43,
-  0x2C, 0x00, 0x44, 0x2C, 0x00, 0x45, 0x2C, 0x00, 0x46, 0x2C, 0x00, 0x47,
-  0x2C, 0x00, 0x48, 0x2C, 0x00, 0x49, 0x2C, 0x00, 0x4A, 0x2C, 0x00, 0x4B,
-  0x2C, 0x00, 0x4C, 0x2C, 0x00, 0x4D, 0x2C, 0x00, 0x4E, 0x2C, 0x00, 0x4F,
-  0x2C, 0x00, 0x50, 0x2C, 0x00, 0x51, 0x2C, 0x00, 0x52, 0x2C, 0x00, 0x53,
-  0x2C, 0x00, 0x54, 0x2C, 0x00, 0x55, 0x2C, 0x00, 0x56, 0x2C, 0x00, 0x57,
-  0x2C, 0x00, 0x58, 0x2C, 0x00, 0x59, 0x2C, 0x00, 0x5A, 0x2C, 0x00, 0x5B,
-  0x2C, 0x00, 0x5C, 0x2C, 0x00, 0x5D, 0x2C, 0x00, 0x5E, 0x2C, 0x00, 0x5F,
-  0x2C, 0x00, 0x60, 0x2C, 0x00, 0x61, 0x2C, 0x00, 0x62, 0x2C, 0x00, 0x63,
-  0x2C, 0x00, 0x64, 0x2C, 0x00, 0x65, 0x2C, 0x00, 0x66, 0x2C, 0x00, 0x67,
-  0x2C, 0x00, 0x68, 0x2C, 0x00, 0x69, 0x2C, 0x00, 0x6A, 0x2C, 0x00, 0x6B,
-  0x2C, 0x00, 0x6C, 0x2C, 0x00, 0x6D, 0x2C, 0x00, 0x6E, 0x2C, 0x00, 0x6F,
-  0x2C, 0x00, 0x70, 0x2C, 0x00, 0x71, 0x2C, 0x00, 0x72, 0x2C, 0x00, 0x73,
-  0x2C, 0x00, 0x74, 0x2C, 0x00, 0x75, 0x2C, 0x00, 0x76, 0x2C, 0x00, 0x77,
-  0x2C, 0x00, 0x78, 0x2C, 0x00, 0x79, 0x2C, 0x00, 0x7A, 0x2C, 0x00, 0x7B,
-  0x2C, 0x00, 0x7C, 0x2C, 0x00, 0x7D, 0x2C, 0x00, 0x7E, 0x2C, 0x29, 0x85,
-  0x2C, 0x29, 0x86, 0x30, 0x30, 0x02, 0x30, 0x30, 0x0C, 0x30, 0x30, 0x0D,
-  0x30, 0x30, 0x01, 0x30, 0x30, 0xFB, 0x30, 0x30, 0xF2, 0x30, 0x30, 0xA1,
-  0x30, 0x30, 0xA3, 0x30, 0x30, 0xA5, 0x30, 0x30, 0xA7, 0x30, 0x30, 0xA9,
-  0x30, 0x30, 0xE3, 0x30, 0x30, 0xE5, 0x30, 0x30, 0xE7, 0x30, 0x30, 0xC3,
-  0x30, 0x30, 0xFC, 0x30, 0x30, 0xA2, 0x30, 0x30, 0xA4, 0x30, 0x30, 0xA6,
-  0x30, 0x30, 0xA8, 0x30, 0x30, 0xAA, 0x30, 0x30, 0xAB, 0x30, 0x30, 0xAD,
-  0x30, 0x30, 0xAF, 0x30, 0x30, 0xB1, 0x30, 0x30, 0xB3, 0x30, 0x30, 0xB5,
-  0x30, 0x30, 0xB7, 0x30, 0x30, 0xB9, 0x30, 0x30, 0xBB, 0x30, 0x30, 0xBD,
-  0x30, 0x30, 0xBF, 0x30, 0x30, 0xC1, 0x30, 0x30, 0xC4, 0x30, 0x30, 0xC6,
-  0x30, 0x30, 0xC8, 0x30, 0x30, 0xCA, 0x30, 0x30, 0xCB, 0x30, 0x30, 0xCC,
-  0x30, 0x30, 0xCD, 0x30, 0x30, 0xCE, 0x30, 0x30, 0xCF, 0x30, 0x30, 0xD2,
-  0x30, 0x30, 0xD5, 0x30, 0x30, 0xD8, 0x30, 0x30, 0xDB, 0x30, 0x30, 0xDE,
-  0x30, 0x30, 0xDF, 0x30, 0x30, 0xE0, 0x30, 0x30, 0xE1, 0x30, 0x30, 0xE2,
-  0x30, 0x30, 0xE4, 0x30, 0x30, 0xE6, 0x30, 0x30, 0xE8, 0x30, 0x30, 0xE9,
-  0x30, 0x30, 0xEA, 0x30, 0x30, 0xEB, 0x30, 0x30, 0xEC, 0x30, 0x30, 0xED,
-  0x30, 0x30, 0xEF, 0x30, 0x30, 0xF3, 0x30, 0x30, 0x99, 0x30, 0x30, 0x9A,
-  0x30, 0x31, 0x64, 0x30, 0x31, 0x31, 0x30, 0x31, 0x32, 0x30, 0x31, 0x33,
-  0x30, 0x31, 0x34, 0x30, 0x31, 0x35, 0x30, 0x31, 0x36, 0x30, 0x31, 0x37,
-  0x30, 0x31, 0x38, 0x30, 0x31, 0x39, 0x30, 0x31, 0x3A, 0x30, 0x31, 0x3B,
-  0x30, 0x31, 0x3C, 0x30, 0x31, 0x3D, 0x30, 0x31, 0x3E, 0x30, 0x31, 0x3F,
-  0x30, 0x31, 0x40, 0x30, 0x31, 0x41, 0x30, 0x31, 0x42, 0x30, 0x31, 0x43,
-  0x30, 0x31, 0x44, 0x30, 0x31, 0x45, 0x30, 0x31, 0x46, 0x30, 0x31, 0x47,
-  0x30, 0x31, 0x48, 0x30, 0x31, 0x49, 0x30, 0x31, 0x4A, 0x30, 0x31, 0x4B,
-  0x30, 0x31, 0x4C, 0x30, 0x31, 0x4D, 0x30, 0x31, 0x4E, 0x30, 0x31, 0x4F,
-  0x30, 0x31, 0x50, 0x30, 0x31, 0x51, 0x30, 0x31, 0x52, 0x30, 0x31, 0x53,
-  0x30, 0x31, 0x54, 0x30, 0x31, 0x55, 0x30, 0x31, 0x56, 0x30, 0x31, 0x57,
-  0x30, 0x31, 0x58, 0x30, 0x31, 0x59, 0x30, 0x31, 0x5A, 0x30, 0x31, 0x5B,
-  0x30, 0x31, 0x5C, 0x30, 0x31, 0x5D, 0x30, 0x31, 0x5E, 0x30, 0x31, 0x5F,
-  0x30, 0x31, 0x60, 0x30, 0x31, 0x61, 0x30, 0x31, 0x62, 0x30, 0x31, 0x63,
-  0x2C, 0x00, 0xA2, 0x2C, 0x00, 0xA3, 0x2C, 0x00, 0xAC, 0x2C, 0x00, 0xAF,
-  0x2C, 0x00, 0xA6, 0x2C, 0x00, 0xA5, 0x2C, 0x20, 0xA9, 0x30, 0x25, 0x02,
-  0x30, 0x21, 0x90, 0x30, 0x21, 0x91, 0x30, 0x21, 0x92, 0x30, 0x21, 0x93,
-  0x30, 0x25, 0xA0, 0x30, 0x25, 0xCB, 0x81, 0x10, 0x99, 0x01, 0x10, 0xBA,
-  0x81, 0x10, 0x9B, 0x01, 0x10, 0xBA, 0x81, 0x10, 0xA5, 0x01, 0x10, 0xBA,
-  0x81, 0x11, 0x31, 0x01, 0x11, 0x27, 0x81, 0x11, 0x32, 0x01, 0x11, 0x27,
+  0x80, 0x00, 0x61, 0x00, 0x00, 0x6C, 0x20, 0x04, 0x4A, 0x20, 0x04, 0x4C,
+  0x20, 0xA7, 0x6F, 0x20, 0x01, 0x26, 0x20, 0x01, 0x53, 0x20, 0xA7, 0x27,
+  0x20, 0xAB, 0x37, 0x20, 0x02, 0x6B, 0x20, 0xAB, 0x52, 0x00, 0x8C, 0x48,
+  0x00, 0x66, 0xF4, 0x00, 0x8E, 0xCA, 0x00, 0x8C, 0xC8, 0x00, 0x6E, 0xD1,
+  0x00, 0x4E, 0x32, 0x00, 0x53, 0xE5, 0x00, 0x9F, 0x9C, 0x00, 0x9F, 0x9C,
+  0x00, 0x59, 0x51, 0x00, 0x91, 0xD1, 0x00, 0x55, 0x87, 0x00, 0x59, 0x48,
+  0x00, 0x61, 0xF6, 0x00, 0x76, 0x69, 0x00, 0x7F, 0x85, 0x00, 0x86, 0x3F,
+  0x00, 0x87, 0xBA, 0x00, 0x88, 0xF8, 0x00, 0x90, 0x8F, 0x00, 0x6A, 0x02,
+  0x00, 0x6D, 0x1B, 0x00, 0x70, 0xD9, 0x00, 0x73, 0xDE, 0x00, 0x84, 0x3D,
+  0x00, 0x91, 0x6A, 0x00, 0x99, 0xF1, 0x00, 0x4E, 0x82, 0x00, 0x53, 0x75,
+  0x00, 0x6B, 0x04, 0x00, 0x72, 0x1B, 0x00, 0x86, 0x2D, 0x00, 0x9E, 0x1E,
+  0x00, 0x5D, 0x50, 0x00, 0x6F, 0xEB, 0x00, 0x85, 0xCD, 0x00, 0x89, 0x64,
+  0x00, 0x62, 0xC9, 0x00, 0x81, 0xD8, 0x00, 0x88, 0x1F, 0x00, 0x5E, 0xCA,
+  0x00, 0x67, 0x17, 0x00, 0x6D, 0x6A, 0x00, 0x72, 0xFC, 0x00, 0x90, 0xCE,
+  0x00, 0x4F, 0x86, 0x00, 0x51, 0xB7, 0x00, 0x52, 0xDE, 0x00, 0x64, 0xC4,
+  0x00, 0x6A, 0xD3, 0x00, 0x72, 0x10, 0x00, 0x76, 0xE7, 0x00, 0x80, 0x01,
+  0x00, 0x86, 0x06, 0x00, 0x86, 0x5C, 0x00, 0x8D, 0xEF, 0x00, 0x97, 0x32,
+  0x00, 0x9B, 0x6F, 0x00, 0x9D, 0xFA, 0x00, 0x78, 0x8C, 0x00, 0x79, 0x7F,
+  0x00, 0x7D, 0xA0, 0x00, 0x83, 0xC9, 0x00, 0x93, 0x04, 0x00, 0x9E, 0x7F,
+  0x00, 0x8A, 0xD6, 0x00, 0x58, 0xDF, 0x00, 0x5F, 0x04, 0x00, 0x7C, 0x60,
+  0x00, 0x80, 0x7E, 0x00, 0x72, 0x62, 0x00, 0x78, 0xCA, 0x00, 0x8C, 0xC2,
+  0x00, 0x96, 0xF7, 0x00, 0x58, 0xD8, 0x00, 0x5C, 0x62, 0x00, 0x6A, 0x13,
+  0x00, 0x6D, 0xDA, 0x00, 0x6F, 0x0F, 0x00, 0x7D, 0x2F, 0x00, 0x7E, 0x37,
+  0x00, 0x96, 0x4B, 0x00, 0x52, 0xD2, 0x00, 0x80, 0x8B, 0x00, 0x51, 0xDC,
+  0x00, 0x51, 0xCC, 0x00, 0x7A, 0x1C, 0x00, 0x7D, 0xBE, 0x00, 0x83, 0xF1,
+  0x00, 0x96, 0x75, 0x00, 0x8B, 0x80, 0x00, 0x62, 0xCF, 0x00, 0x6A, 0x02,
+  0x00, 0x8A, 0xFE, 0x00, 0x4E, 0x39, 0x00, 0x5B, 0xE7, 0x00, 0x60, 0x12,
+  0x00, 0x73, 0x87, 0x00, 0x75, 0x70, 0x00, 0x53, 0x17, 0x00, 0x78, 0xFB,
+  0x00, 0x4F, 0xBF, 0x00, 0x5F, 0xA9, 0x00, 0x4E, 0x0D, 0x00, 0x6C, 0xCC,
+  0x00, 0x65, 0x78, 0x00, 0x7D, 0x22, 0x00, 0x53, 0xC3, 0x00, 0x58, 0x5E,
+  0x00, 0x77, 0x01, 0x00, 0x84, 0x49, 0x00, 0x8A, 0xAA, 0x00, 0x6B, 0xBA,
+  0x00, 0x8F, 0xB0, 0x00, 0x6C, 0x88, 0x00, 0x62, 0xFE, 0x00, 0x82, 0xE5,
+  0x00, 0x63, 0xA0, 0x00, 0x75, 0x65, 0x00, 0x4E, 0xAE, 0x00, 0x51, 0x69,
+  0x00, 0x51, 0xC9, 0x00, 0x68, 0x81, 0x00, 0x7C, 0xE7, 0x00, 0x82, 0x6F,
+  0x00, 0x8A, 0xD2, 0x00, 0x91, 0xCF, 0x00, 0x52, 0xF5, 0x00, 0x54, 0x42,
+  0x00, 0x59, 0x73, 0x00, 0x5E, 0xEC, 0x00, 0x65, 0xC5, 0x00, 0x6F, 0xFE,
+  0x00, 0x79, 0x2A, 0x00, 0x95, 0xAD, 0x00, 0x9A, 0x6A, 0x00, 0x9E, 0x97,
+  0x00, 0x9E, 0xCE, 0x00, 0x52, 0x9B, 0x00, 0x66, 0xC6, 0x00, 0x6B, 0x77,
+  0x00, 0x8F, 0x62, 0x00, 0x5E, 0x74, 0x00, 0x61, 0x90, 0x00, 0x62, 0x00,
+  0x00, 0x64, 0x9A, 0x00, 0x6F, 0x23, 0x00, 0x71, 0x49, 0x00, 0x74, 0x89,
+  0x00, 0x79, 0xCA, 0x00, 0x7D, 0xF4, 0x00, 0x80, 0x6F, 0x00, 0x8F, 0x26,
+  0x00, 0x84, 0xEE, 0x00, 0x90, 0x23, 0x00, 0x93, 0x4A, 0x00, 0x52, 0x17,
+  0x00, 0x52, 0xA3, 0x00, 0x54, 0xBD, 0x00, 0x70, 0xC8, 0x00, 0x88, 0xC2,
+  0x00, 0x8A, 0xAA, 0x00, 0x5E, 0xC9, 0x00, 0x5F, 0xF5, 0x00, 0x63, 0x7B,
+  0x00, 0x6B, 0xAE, 0x00, 0x7C, 0x3E, 0x00, 0x73, 0x75, 0x00, 0x4E, 0xE4,
+  0x00, 0x56, 0xF9, 0x00, 0x5B, 0xE7, 0x00, 0x5D, 0xBA, 0x00, 0x60, 0x1C,
+  0x00, 0x73, 0xB2, 0x00, 0x74, 0x69, 0x00, 0x7F, 0x9A, 0x00, 0x80, 0x46,
+  0x00, 0x92, 0x34, 0x00, 0x96, 0xF6, 0x00, 0x97, 0x48, 0x00, 0x98, 0x18,
+  0x00, 0x4F, 0x8B, 0x00, 0x79, 0xAE, 0x00, 0x91, 0xB4, 0x00, 0x96, 0xB8,
+  0x00, 0x60, 0xE1, 0x00, 0x4E, 0x86, 0x00, 0x50, 0xDA, 0x00, 0x5B, 0xEE,
+  0x00, 0x5C, 0x3F, 0x00, 0x65, 0x99, 0x00, 0x6A, 0x02, 0x00, 0x71, 0xCE,
+  0x00, 0x76, 0x42, 0x00, 0x84, 0xFC, 0x00, 0x90, 0x7C, 0x00, 0x9F, 0x8D,
+  0x00, 0x66, 0x88, 0x00, 0x96, 0x2E, 0x00, 0x52, 0x89, 0x00, 0x67, 0x7B,
+  0x00, 0x67, 0xF3, 0x00, 0x6D, 0x41, 0x00, 0x6E, 0x9C, 0x00, 0x74, 0x09,
+  0x00, 0x75, 0x59, 0x00, 0x78, 0x6B, 0x00, 0x7D, 0x10, 0x00, 0x98, 0x5E,
+  0x00, 0x51, 0x6D, 0x00, 0x62, 0x2E, 0x00, 0x96, 0x78, 0x00, 0x50, 0x2B,
+  0x00, 0x5D, 0x19, 0x00, 0x6D, 0xEA, 0x00, 0x8F, 0x2A, 0x00, 0x5F, 0x8B,
+  0x00, 0x61, 0x44, 0x00, 0x68, 0x17, 0x00, 0x73, 0x87, 0x00, 0x96, 0x86,
+  0x00, 0x52, 0x29, 0x00, 0x54, 0x0F, 0x00, 0x5C, 0x65, 0x00, 0x66, 0x13,
+  0x00, 0x67, 0x4E, 0x00, 0x68, 0xA8, 0x00, 0x6C, 0xE5, 0x00, 0x74, 0x06,
+  0x00, 0x75, 0xE2, 0x00, 0x7F, 0x79, 0x00, 0x88, 0xCF, 0x00, 0x88, 0xE1,
+  0x00, 0x91, 0xCC, 0x00, 0x96, 0xE2, 0x00, 0x53, 0x3F, 0x00, 0x6E, 0xBA,
+  0x00, 0x54, 0x1D, 0x00, 0x71, 0xD0, 0x00, 0x74, 0x98, 0x00, 0x85, 0xFA,
+  0x00, 0x96, 0xA3, 0x00, 0x9C, 0x57, 0x00, 0x9E, 0x9F, 0x00, 0x67, 0x97,
+  0x00, 0x6D, 0xCB, 0x00, 0x81, 0xE8, 0x00, 0x7A, 0xCB, 0x00, 0x7B, 0x20,
+  0x00, 0x7C, 0x92, 0x00, 0x72, 0xC0, 0x00, 0x70, 0x99, 0x00, 0x8B, 0x58,
+  0x00, 0x4E, 0xC0, 0x00, 0x83, 0x36, 0x00, 0x52, 0x3A, 0x00, 0x52, 0x07,
+  0x00, 0x5E, 0xA6, 0x00, 0x62, 0xD3, 0x00, 0x7C, 0xD6, 0x00, 0x5B, 0x85,
+  0x00, 0x6D, 0x1E, 0x00, 0x66, 0xB4, 0x00, 0x8F, 0x3B, 0x00, 0x88, 0x4C,
+  0x00, 0x96, 0x4D, 0x00, 0x89, 0x8B, 0x00, 0x5E, 0xD3, 0x00, 0x51, 0x40,
+  0x00, 0x55, 0xC0, 0x00, 0x58, 0x5A, 0x00, 0x66, 0x74, 0x00, 0x51, 0xDE,
+  0x00, 0x73, 0x2A, 0x00, 0x76, 0xCA, 0x00, 0x79, 0x3C, 0x00, 0x79, 0x5E,
+  0x00, 0x79, 0x65, 0x00, 0x79, 0x8F, 0x00, 0x97, 0x56, 0x00, 0x7C, 0xBE,
+  0x00, 0x7F, 0xBD, 0x00, 0x86, 0x12, 0x00, 0x8A, 0xF8, 0x00, 0x90, 0x38,
+  0x00, 0x90, 0xFD, 0x00, 0x98, 0xEF, 0x00, 0x98, 0xFC, 0x00, 0x99, 0x28,
+  0x00, 0x9D, 0xB4, 0x00, 0x90, 0xDE, 0x00, 0x96, 0xB7, 0x00, 0x4F, 0xAE,
+  0x00, 0x50, 0xE7, 0x00, 0x51, 0x4D, 0x00, 0x52, 0xC9, 0x00, 0x52, 0xE4,
+  0x00, 0x53, 0x51, 0x00, 0x55, 0x9D, 0x00, 0x56, 0x06, 0x00, 0x56, 0x68,
+  0x00, 0x58, 0x40, 0x00, 0x58, 0xA8, 0x00, 0x5C, 0x64, 0x00, 0x5C, 0x6E,
+  0x00, 0x60, 0x94, 0x00, 0x61, 0x68, 0x00, 0x61, 0x8E, 0x00, 0x61, 0xF2,
+  0x00, 0x65, 0x4F, 0x00, 0x65, 0xE2, 0x00, 0x66, 0x91, 0x00, 0x68, 0x85,
+  0x00, 0x6D, 0x77, 0x00, 0x6E, 0x1A, 0x00, 0x6F, 0x22, 0x00, 0x71, 0x6E,
+  0x00, 0x72, 0x2B, 0x00, 0x74, 0x22, 0x00, 0x78, 0x91, 0x00, 0x79, 0x3E,
+  0x00, 0x79, 0x49, 0x00, 0x79, 0x48, 0x00, 0x79, 0x50, 0x00, 0x79, 0x56,
+  0x00, 0x79, 0x5D, 0x00, 0x79, 0x8D, 0x00, 0x79, 0x8E, 0x00, 0x7A, 0x40,
+  0x00, 0x7A, 0x81, 0x00, 0x7B, 0xC0, 0x00, 0x7D, 0xF4, 0x00, 0x7E, 0x09,
+  0x00, 0x7E, 0x41, 0x00, 0x7F, 0x72, 0x00, 0x80, 0x05, 0x00, 0x81, 0xED,
+  0x00, 0x82, 0x79, 0x00, 0x82, 0x79, 0x00, 0x84, 0x57, 0x00, 0x89, 0x10,
+  0x00, 0x89, 0x96, 0x00, 0x8B, 0x01, 0x00, 0x8B, 0x39, 0x00, 0x8C, 0xD3,
+  0x00, 0x8D, 0x08, 0x00, 0x8F, 0xB6, 0x00, 0x90, 0x38, 0x00, 0x96, 0xE3,
+  0x00, 0x97, 0xFF, 0x00, 0x98, 0x3B, 0x00, 0x60, 0x75, 0x02, 0x42, 0xEE,
+  0x00, 0x82, 0x18, 0x00, 0x4E, 0x26, 0x00, 0x51, 0xB5, 0x00, 0x51, 0x68,
+  0x00, 0x4F, 0x80, 0x00, 0x51, 0x45, 0x00, 0x51, 0x80, 0x00, 0x52, 0xC7,
+  0x00, 0x52, 0xFA, 0x00, 0x55, 0x9D, 0x00, 0x55, 0x55, 0x00, 0x55, 0x99,
+  0x00, 0x55, 0xE2, 0x00, 0x58, 0x5A, 0x00, 0x58, 0xB3, 0x00, 0x59, 0x44,
+  0x00, 0x59, 0x54, 0x00, 0x5A, 0x62, 0x00, 0x5B, 0x28, 0x00, 0x5E, 0xD2,
+  0x00, 0x5E, 0xD9, 0x00, 0x5F, 0x69, 0x00, 0x5F, 0xAD, 0x00, 0x60, 0xD8,
+  0x00, 0x61, 0x4E, 0x00, 0x61, 0x08, 0x00, 0x61, 0x8E, 0x00, 0x61, 0x60,
+  0x00, 0x61, 0xF2, 0x00, 0x62, 0x34, 0x00, 0x63, 0xC4, 0x00, 0x64, 0x1C,
+  0x00, 0x64, 0x52, 0x00, 0x65, 0x56, 0x00, 0x66, 0x74, 0x00, 0x67, 0x17,
+  0x00, 0x67, 0x1B, 0x00, 0x67, 0x56, 0x00, 0x6B, 0x79, 0x00, 0x6B, 0xBA,
+  0x00, 0x6D, 0x41, 0x00, 0x6E, 0xDB, 0x00, 0x6E, 0xCB, 0x00, 0x6F, 0x22,
+  0x00, 0x70, 0x1E, 0x00, 0x71, 0x6E, 0x00, 0x77, 0xA7, 0x00, 0x72, 0x35,
+  0x00, 0x72, 0xAF, 0x00, 0x73, 0x2A, 0x00, 0x74, 0x71, 0x00, 0x75, 0x06,
+  0x00, 0x75, 0x3B, 0x00, 0x76, 0x1D, 0x00, 0x76, 0x1F, 0x00, 0x76, 0xCA,
+  0x00, 0x76, 0xDB, 0x00, 0x76, 0xF4, 0x00, 0x77, 0x4A, 0x00, 0x77, 0x40,
+  0x00, 0x78, 0xCC, 0x00, 0x7A, 0xB1, 0x00, 0x7B, 0xC0, 0x00, 0x7C, 0x7B,
+  0x00, 0x7D, 0x5B, 0x00, 0x7D, 0xF4, 0x00, 0x7F, 0x3E, 0x00, 0x80, 0x05,
+  0x00, 0x83, 0x52, 0x00, 0x83, 0xEF, 0x00, 0x87, 0x79, 0x00, 0x89, 0x41,
+  0x00, 0x89, 0x86, 0x00, 0x89, 0x96, 0x00, 0x8A, 0xBF, 0x00, 0x8A, 0xF8,
+  0x00, 0x8A, 0xCB, 0x00, 0x8B, 0x01, 0x00, 0x8A, 0xFE, 0x00, 0x8A, 0xED,
+  0x00, 0x8B, 0x39, 0x00, 0x8B, 0x8A, 0x00, 0x8D, 0x08, 0x00, 0x8F, 0x38,
+  0x00, 0x90, 0x72, 0x00, 0x91, 0x99, 0x00, 0x92, 0x76, 0x00, 0x96, 0x7C,
+  0x00, 0x96, 0xE3, 0x00, 0x97, 0x56, 0x00, 0x97, 0xDB, 0x00, 0x97, 0xFF,
+  0x00, 0x98, 0x0B, 0x00, 0x98, 0x3B, 0x00, 0x9B, 0x12, 0x00, 0x9F, 0x9C,
+  0x02, 0x28, 0x4A, 0x02, 0x28, 0x44, 0x02, 0x33, 0xD5, 0x00, 0x3B, 0x9D,
+  0x00, 0x40, 0x18, 0x00, 0x40, 0x39, 0x02, 0x52, 0x49, 0x02, 0x5C, 0xD0,
+  0x02, 0x7E, 0xD3, 0x00, 0x9F, 0x43, 0x00, 0x9F, 0x8E, 0xC0, 0x00, 0x66,
+  0x00, 0x00, 0x66, 0xC0, 0x00, 0x66, 0x00, 0x00, 0x69, 0xC0, 0x00, 0x66,
+  0x00, 0x00, 0x6C, 0xC0, 0x00, 0x66, 0x80, 0x00, 0x66, 0x00, 0x00, 0x69,
+  0xC0, 0x00, 0x66, 0x80, 0x00, 0x66, 0x00, 0x00, 0x6C, 0xC0, 0x01, 0x7F,
+  0x00, 0x00, 0x74, 0xC0, 0x00, 0x73, 0x00, 0x00, 0x74, 0xC0, 0x05, 0x74,
+  0x00, 0x05, 0x76, 0xC0, 0x05, 0x74, 0x00, 0x05, 0x65, 0xC0, 0x05, 0x74,
+  0x00, 0x05, 0x6B, 0xC0, 0x05, 0x7E, 0x00, 0x05, 0x76, 0xC0, 0x05, 0x74,
+  0x00, 0x05, 0x6D, 0x80, 0x05, 0xD9, 0x00, 0x05, 0xB4, 0x80, 0x05, 0xF2,
+  0x00, 0x05, 0xB7, 0x04, 0x05, 0xE2, 0x04, 0x05, 0xD0, 0x04, 0x05, 0xD3,
+  0x04, 0x05, 0xD4, 0x04, 0x05, 0xDB, 0x04, 0x05, 0xDC, 0x04, 0x05, 0xDD,
+  0x04, 0x05, 0xE8, 0x04, 0x05, 0xEA, 0x04, 0x00, 0x2B, 0x80, 0x05, 0xE9,
+  0x00, 0x05, 0xC1, 0x80, 0x05, 0xE9, 0x00, 0x05, 0xC2, 0x80, 0xFB, 0x49,
+  0x00, 0x05, 0xC1, 0x80, 0xFB, 0x49, 0x00, 0x05, 0xC2, 0x80, 0x05, 0xD0,
+  0x00, 0x05, 0xB7, 0x80, 0x05, 0xD0, 0x00, 0x05, 0xB8, 0x80, 0x05, 0xD0,
+  0x00, 0x05, 0xBC, 0x80, 0x05, 0xD1, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xD2,
+  0x00, 0x05, 0xBC, 0x80, 0x05, 0xD3, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xD4,
+  0x00, 0x05, 0xBC, 0x80, 0x05, 0xD5, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xD6,
+  0x00, 0x05, 0xBC, 0x80, 0x05, 0xD8, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xD9,
+  0x00, 0x05, 0xBC, 0x80, 0x05, 0xDA, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xDB,
+  0x00, 0x05, 0xBC, 0x80, 0x05, 0xDC, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xDE,
+  0x00, 0x05, 0xBC, 0x80, 0x05, 0xE0, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xE1,
+  0x00, 0x05, 0xBC, 0x80, 0x05, 0xE3, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xE4,
+  0x00, 0x05, 0xBC, 0x80, 0x05, 0xE6, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xE7,
+  0x00, 0x05, 0xBC, 0x80, 0x05, 0xE8, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xE9,
+  0x00, 0x05, 0xBC, 0x80, 0x05, 0xEA, 0x00, 0x05, 0xBC, 0x80, 0x05, 0xD5,
+  0x00, 0x05, 0xB9, 0x80, 0x05, 0xD1, 0x00, 0x05, 0xBF, 0x80, 0x05, 0xDB,
+  0x00, 0x05, 0xBF, 0x80, 0x05, 0xE4, 0x00, 0x05, 0xBF, 0xC0, 0x05, 0xD0,
+  0x00, 0x05, 0xDC, 0x18, 0x06, 0x71, 0x14, 0x06, 0x71, 0x18, 0x06, 0x7B,
+  0x14, 0x06, 0x7B, 0x0C, 0x06, 0x7B, 0x10, 0x06, 0x7B, 0x18, 0x06, 0x7E,
+  0x14, 0x06, 0x7E, 0x0C, 0x06, 0x7E, 0x10, 0x06, 0x7E, 0x18, 0x06, 0x80,
+  0x14, 0x06, 0x80, 0x0C, 0x06, 0x80, 0x10, 0x06, 0x80, 0x18, 0x06, 0x7A,
+  0x14, 0x06, 0x7A, 0x0C, 0x06, 0x7A, 0x10, 0x06, 0x7A, 0x18, 0x06, 0x7F,
+  0x14, 0x06, 0x7F, 0x0C, 0x06, 0x7F, 0x10, 0x06, 0x7F, 0x18, 0x06, 0x79,
+  0x14, 0x06, 0x79, 0x0C, 0x06, 0x79, 0x10, 0x06, 0x79, 0x18, 0x06, 0xA4,
+  0x14, 0x06, 0xA4, 0x0C, 0x06, 0xA4, 0x10, 0x06, 0xA4, 0x18, 0x06, 0xA6,
+  0x14, 0x06, 0xA6, 0x0C, 0x06, 0xA6, 0x10, 0x06, 0xA6, 0x18, 0x06, 0x84,
+  0x14, 0x06, 0x84, 0x0C, 0x06, 0x84, 0x10, 0x06, 0x84, 0x18, 0x06, 0x83,
+  0x14, 0x06, 0x83, 0x0C, 0x06, 0x83, 0x10, 0x06, 0x83, 0x18, 0x06, 0x86,
+  0x14, 0x06, 0x86, 0x0C, 0x06, 0x86, 0x10, 0x06, 0x86, 0x18, 0x06, 0x87,
+  0x14, 0x06, 0x87, 0x0C, 0x06, 0x87, 0x10, 0x06, 0x87, 0x18, 0x06, 0x8D,
+  0x14, 0x06, 0x8D, 0x18, 0x06, 0x8C, 0x14, 0x06, 0x8C, 0x18, 0x06, 0x8E,
+  0x14, 0x06, 0x8E, 0x18, 0x06, 0x88, 0x14, 0x06, 0x88, 0x18, 0x06, 0x98,
+  0x14, 0x06, 0x98, 0x18, 0x06, 0x91, 0x14, 0x06, 0x91, 0x18, 0x06, 0xA9,
+  0x14, 0x06, 0xA9, 0x0C, 0x06, 0xA9, 0x10, 0x06, 0xA9, 0x18, 0x06, 0xAF,
+  0x14, 0x06, 0xAF, 0x0C, 0x06, 0xAF, 0x10, 0x06, 0xAF, 0x18, 0x06, 0xB3,
+  0x14, 0x06, 0xB3, 0x0C, 0x06, 0xB3, 0x10, 0x06, 0xB3, 0x18, 0x06, 0xB1,
+  0x14, 0x06, 0xB1, 0x0C, 0x06, 0xB1, 0x10, 0x06, 0xB1, 0x18, 0x06, 0xBA,
+  0x14, 0x06, 0xBA, 0x18, 0x06, 0xBB, 0x14, 0x06, 0xBB, 0x0C, 0x06, 0xBB,
+  0x10, 0x06, 0xBB, 0x18, 0x06, 0xC0, 0x14, 0x06, 0xC0, 0x18, 0x06, 0xC1,
+  0x14, 0x06, 0xC1, 0x0C, 0x06, 0xC1, 0x10, 0x06, 0xC1, 0x18, 0x06, 0xBE,
+  0x14, 0x06, 0xBE, 0x0C, 0x06, 0xBE, 0x10, 0x06, 0xBE, 0x18, 0x06, 0xD2,
+  0x14, 0x06, 0xD2, 0x18, 0x06, 0xD3, 0x14, 0x06, 0xD3, 0x18, 0x06, 0xAD,
+  0x14, 0x06, 0xAD, 0x0C, 0x06, 0xAD, 0x10, 0x06, 0xAD, 0x18, 0x06, 0xC7,
+  0x14, 0x06, 0xC7, 0x18, 0x06, 0xC6, 0x14, 0x06, 0xC6, 0x18, 0x06, 0xC8,
+  0x14, 0x06, 0xC8, 0x18, 0x06, 0x77, 0x18, 0x06, 0xCB, 0x14, 0x06, 0xCB,
+  0x18, 0x06, 0xC5, 0x14, 0x06, 0xC5, 0x18, 0x06, 0xC9, 0x14, 0x06, 0xC9,
+  0x18, 0x06, 0xD0, 0x14, 0x06, 0xD0, 0x0C, 0x06, 0xD0, 0x10, 0x06, 0xD0,
+  0x0C, 0x06, 0x49, 0x10, 0x06, 0x49, 0x98, 0x06, 0x26, 0x00, 0x06, 0x27,
+  0x94, 0x06, 0x26, 0x00, 0x06, 0x27, 0x98, 0x06, 0x26, 0x00, 0x06, 0xD5,
+  0x94, 0x06, 0x26, 0x00, 0x06, 0xD5, 0x98, 0x06, 0x26, 0x00, 0x06, 0x48,
+  0x94, 0x06, 0x26, 0x00, 0x06, 0x48, 0x98, 0x06, 0x26, 0x00, 0x06, 0xC7,
+  0x94, 0x06, 0x26, 0x00, 0x06, 0xC7, 0x98, 0x06, 0x26, 0x00, 0x06, 0xC6,
+  0x94, 0x06, 0x26, 0x00, 0x06, 0xC6, 0x98, 0x06, 0x26, 0x00, 0x06, 0xC8,
+  0x94, 0x06, 0x26, 0x00, 0x06, 0xC8, 0x98, 0x06, 0x26, 0x00, 0x06, 0xD0,
+  0x94, 0x06, 0x26, 0x00, 0x06, 0xD0, 0x8C, 0x06, 0x26, 0x00, 0x06, 0xD0,
+  0x98, 0x06, 0x26, 0x00, 0x06, 0x49, 0x94, 0x06, 0x26, 0x00, 0x06, 0x49,
+  0x8C, 0x06, 0x26, 0x00, 0x06, 0x49, 0x18, 0x06, 0xCC, 0x14, 0x06, 0xCC,
+  0x0C, 0x06, 0xCC, 0x10, 0x06, 0xCC, 0x98, 0x06, 0x26, 0x00, 0x06, 0x2C,
+  0x98, 0x06, 0x26, 0x00, 0x06, 0x2D, 0x98, 0x06, 0x26, 0x00, 0x06, 0x45,
+  0x98, 0x06, 0x26, 0x00, 0x06, 0x49, 0x98, 0x06, 0x26, 0x00, 0x06, 0x4A,
+  0x98, 0x06, 0x28, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x28, 0x00, 0x06, 0x2D,
+  0x98, 0x06, 0x28, 0x00, 0x06, 0x2E, 0x98, 0x06, 0x28, 0x00, 0x06, 0x45,
+  0x98, 0x06, 0x28, 0x00, 0x06, 0x49, 0x98, 0x06, 0x28, 0x00, 0x06, 0x4A,
+  0x98, 0x06, 0x2A, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x2A, 0x00, 0x06, 0x2D,
+  0x98, 0x06, 0x2A, 0x00, 0x06, 0x2E, 0x98, 0x06, 0x2A, 0x00, 0x06, 0x45,
+  0x98, 0x06, 0x2A, 0x00, 0x06, 0x49, 0x98, 0x06, 0x2A, 0x00, 0x06, 0x4A,
+  0x98, 0x06, 0x2B, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x2B, 0x00, 0x06, 0x45,
+  0x98, 0x06, 0x2B, 0x00, 0x06, 0x49, 0x98, 0x06, 0x2B, 0x00, 0x06, 0x4A,
+  0x98, 0x06, 0x2C, 0x00, 0x06, 0x2D, 0x98, 0x06, 0x2C, 0x00, 0x06, 0x45,
+  0x98, 0x06, 0x2D, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x2D, 0x00, 0x06, 0x45,
+  0x98, 0x06, 0x2E, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x2E, 0x00, 0x06, 0x2D,
+  0x98, 0x06, 0x2E, 0x00, 0x06, 0x45, 0x98, 0x06, 0x33, 0x00, 0x06, 0x2C,
+  0x98, 0x06, 0x33, 0x00, 0x06, 0x2D, 0x98, 0x06, 0x33, 0x00, 0x06, 0x2E,
+  0x98, 0x06, 0x33, 0x00, 0x06, 0x45, 0x98, 0x06, 0x35, 0x00, 0x06, 0x2D,
+  0x98, 0x06, 0x35, 0x00, 0x06, 0x45, 0x98, 0x06, 0x36, 0x00, 0x06, 0x2C,
+  0x98, 0x06, 0x36, 0x00, 0x06, 0x2D, 0x98, 0x06, 0x36, 0x00, 0x06, 0x2E,
+  0x98, 0x06, 0x36, 0x00, 0x06, 0x45, 0x98, 0x06, 0x37, 0x00, 0x06, 0x2D,
+  0x98, 0x06, 0x37, 0x00, 0x06, 0x45, 0x98, 0x06, 0x38, 0x00, 0x06, 0x45,
+  0x98, 0x06, 0x39, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x39, 0x00, 0x06, 0x45,
+  0x98, 0x06, 0x3A, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x3A, 0x00, 0x06, 0x45,
+  0x98, 0x06, 0x41, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x41, 0x00, 0x06, 0x2D,
+  0x98, 0x06, 0x41, 0x00, 0x06, 0x2E, 0x98, 0x06, 0x41, 0x00, 0x06, 0x45,
+  0x98, 0x06, 0x41, 0x00, 0x06, 0x49, 0x98, 0x06, 0x41, 0x00, 0x06, 0x4A,
+  0x98, 0x06, 0x42, 0x00, 0x06, 0x2D, 0x98, 0x06, 0x42, 0x00, 0x06, 0x45,
+  0x98, 0x06, 0x42, 0x00, 0x06, 0x49, 0x98, 0x06, 0x42, 0x00, 0x06, 0x4A,
+  0x98, 0x06, 0x43, 0x00, 0x06, 0x27, 0x98, 0x06, 0x43, 0x00, 0x06, 0x2C,
+  0x98, 0x06, 0x43, 0x00, 0x06, 0x2D, 0x98, 0x06, 0x43, 0x00, 0x06, 0x2E,
+  0x98, 0x06, 0x43, 0x00, 0x06, 0x44, 0x98, 0x06, 0x43, 0x00, 0x06, 0x45,
+  0x98, 0x06, 0x43, 0x00, 0x06, 0x49, 0x98, 0x06, 0x43, 0x00, 0x06, 0x4A,
+  0x98, 0x06, 0x44, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x44, 0x00, 0x06, 0x2D,
+  0x98, 0x06, 0x44, 0x00, 0x06, 0x2E, 0x98, 0x06, 0x44, 0x00, 0x06, 0x45,
+  0x98, 0x06, 0x44, 0x00, 0x06, 0x49, 0x98, 0x06, 0x44, 0x00, 0x06, 0x4A,
+  0x98, 0x06, 0x45, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x45, 0x00, 0x06, 0x2D,
+  0x98, 0x06, 0x45, 0x00, 0x06, 0x2E, 0x98, 0x06, 0x45, 0x00, 0x06, 0x45,
+  0x98, 0x06, 0x45, 0x00, 0x06, 0x49, 0x98, 0x06, 0x45, 0x00, 0x06, 0x4A,
+  0x98, 0x06, 0x46, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x46, 0x00, 0x06, 0x2D,
+  0x98, 0x06, 0x46, 0x00, 0x06, 0x2E, 0x98, 0x06, 0x46, 0x00, 0x06, 0x45,
+  0x98, 0x06, 0x46, 0x00, 0x06, 0x49, 0x98, 0x06, 0x46, 0x00, 0x06, 0x4A,
+  0x98, 0x06, 0x47, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x47, 0x00, 0x06, 0x45,
+  0x98, 0x06, 0x47, 0x00, 0x06, 0x49, 0x98, 0x06, 0x47, 0x00, 0x06, 0x4A,
+  0x98, 0x06, 0x4A, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x4A, 0x00, 0x06, 0x2D,
+  0x98, 0x06, 0x4A, 0x00, 0x06, 0x2E, 0x98, 0x06, 0x4A, 0x00, 0x06, 0x45,
+  0x98, 0x06, 0x4A, 0x00, 0x06, 0x49, 0x98, 0x06, 0x4A, 0x00, 0x06, 0x4A,
+  0x98, 0x06, 0x30, 0x00, 0x06, 0x70, 0x98, 0x06, 0x31, 0x00, 0x06, 0x70,
+  0x98, 0x06, 0x49, 0x00, 0x06, 0x70, 0x98, 0x00, 0x20, 0x80, 0x06, 0x4C,
+  0x00, 0x06, 0x51, 0x98, 0x00, 0x20, 0x80, 0x06, 0x4D, 0x00, 0x06, 0x51,
+  0x98, 0x00, 0x20, 0x80, 0x06, 0x4E, 0x00, 0x06, 0x51, 0x98, 0x00, 0x20,
+  0x80, 0x06, 0x4F, 0x00, 0x06, 0x51, 0x98, 0x00, 0x20, 0x80, 0x06, 0x50,
+  0x00, 0x06, 0x51, 0x98, 0x00, 0x20, 0x80, 0x06, 0x51, 0x00, 0x06, 0x70,
+  0x94, 0x06, 0x26, 0x00, 0x06, 0x31, 0x94, 0x06, 0x26, 0x00, 0x06, 0x32,
+  0x94, 0x06, 0x26, 0x00, 0x06, 0x45, 0x94, 0x06, 0x26, 0x00, 0x06, 0x46,
+  0x94, 0x06, 0x26, 0x00, 0x06, 0x49, 0x94, 0x06, 0x26, 0x00, 0x06, 0x4A,
+  0x94, 0x06, 0x28, 0x00, 0x06, 0x31, 0x94, 0x06, 0x28, 0x00, 0x06, 0x32,
+  0x94, 0x06, 0x28, 0x00, 0x06, 0x45, 0x94, 0x06, 0x28, 0x00, 0x06, 0x46,
+  0x94, 0x06, 0x28, 0x00, 0x06, 0x49, 0x94, 0x06, 0x28, 0x00, 0x06, 0x4A,
+  0x94, 0x06, 0x2A, 0x00, 0x06, 0x31, 0x94, 0x06, 0x2A, 0x00, 0x06, 0x32,
+  0x94, 0x06, 0x2A, 0x00, 0x06, 0x45, 0x94, 0x06, 0x2A, 0x00, 0x06, 0x46,
+  0x94, 0x06, 0x2A, 0x00, 0x06, 0x49, 0x94, 0x06, 0x2A, 0x00, 0x06, 0x4A,
+  0x94, 0x06, 0x2B, 0x00, 0x06, 0x31, 0x94, 0x06, 0x2B, 0x00, 0x06, 0x32,
+  0x94, 0x06, 0x2B, 0x00, 0x06, 0x45, 0x94, 0x06, 0x2B, 0x00, 0x06, 0x46,
+  0x94, 0x06, 0x2B, 0x00, 0x06, 0x49, 0x94, 0x06, 0x2B, 0x00, 0x06, 0x4A,
+  0x94, 0x06, 0x41, 0x00, 0x06, 0x49, 0x94, 0x06, 0x41, 0x00, 0x06, 0x4A,
+  0x94, 0x06, 0x42, 0x00, 0x06, 0x49, 0x94, 0x06, 0x42, 0x00, 0x06, 0x4A,
+  0x94, 0x06, 0x43, 0x00, 0x06, 0x27, 0x94, 0x06, 0x43, 0x00, 0x06, 0x44,
+  0x94, 0x06, 0x43, 0x00, 0x06, 0x45, 0x94, 0x06, 0x43, 0x00, 0x06, 0x49,
+  0x94, 0x06, 0x43, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x44, 0x00, 0x06, 0x45,
+  0x94, 0x06, 0x44, 0x00, 0x06, 0x49, 0x94, 0x06, 0x44, 0x00, 0x06, 0x4A,
+  0x94, 0x06, 0x45, 0x00, 0x06, 0x27, 0x94, 0x06, 0x45, 0x00, 0x06, 0x45,
+  0x94, 0x06, 0x46, 0x00, 0x06, 0x31, 0x94, 0x06, 0x46, 0x00, 0x06, 0x32,
+  0x94, 0x06, 0x46, 0x00, 0x06, 0x45, 0x94, 0x06, 0x46, 0x00, 0x06, 0x46,
+  0x94, 0x06, 0x46, 0x00, 0x06, 0x49, 0x94, 0x06, 0x46, 0x00, 0x06, 0x4A,
+  0x94, 0x06, 0x49, 0x00, 0x06, 0x70, 0x94, 0x06, 0x4A, 0x00, 0x06, 0x31,
+  0x94, 0x06, 0x4A, 0x00, 0x06, 0x32, 0x94, 0x06, 0x4A, 0x00, 0x06, 0x45,
+  0x94, 0x06, 0x4A, 0x00, 0x06, 0x46, 0x94, 0x06, 0x4A, 0x00, 0x06, 0x49,
+  0x94, 0x06, 0x4A, 0x00, 0x06, 0x4A, 0x8C, 0x06, 0x26, 0x00, 0x06, 0x2C,
+  0x8C, 0x06, 0x26, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x26, 0x00, 0x06, 0x2E,
+  0x8C, 0x06, 0x26, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x26, 0x00, 0x06, 0x47,
+  0x8C, 0x06, 0x28, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x28, 0x00, 0x06, 0x2D,
+  0x8C, 0x06, 0x28, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x28, 0x00, 0x06, 0x45,
+  0x8C, 0x06, 0x28, 0x00, 0x06, 0x47, 0x8C, 0x06, 0x2A, 0x00, 0x06, 0x2C,
+  0x8C, 0x06, 0x2A, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x2A, 0x00, 0x06, 0x2E,
+  0x8C, 0x06, 0x2A, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x2A, 0x00, 0x06, 0x47,
+  0x8C, 0x06, 0x2B, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x2C, 0x00, 0x06, 0x2D,
+  0x8C, 0x06, 0x2C, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x2D, 0x00, 0x06, 0x2C,
+  0x8C, 0x06, 0x2D, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x2E, 0x00, 0x06, 0x2C,
+  0x8C, 0x06, 0x2E, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x33, 0x00, 0x06, 0x2C,
+  0x8C, 0x06, 0x33, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x33, 0x00, 0x06, 0x2E,
+  0x8C, 0x06, 0x33, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x35, 0x00, 0x06, 0x2D,
+  0x8C, 0x06, 0x35, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x35, 0x00, 0x06, 0x45,
+  0x8C, 0x06, 0x36, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x36, 0x00, 0x06, 0x2D,
+  0x8C, 0x06, 0x36, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x36, 0x00, 0x06, 0x45,
+  0x8C, 0x06, 0x37, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x38, 0x00, 0x06, 0x45,
+  0x8C, 0x06, 0x39, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x39, 0x00, 0x06, 0x45,
+  0x8C, 0x06, 0x3A, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x3A, 0x00, 0x06, 0x45,
+  0x8C, 0x06, 0x41, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x41, 0x00, 0x06, 0x2D,
+  0x8C, 0x06, 0x41, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x41, 0x00, 0x06, 0x45,
+  0x8C, 0x06, 0x42, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x42, 0x00, 0x06, 0x45,
+  0x8C, 0x06, 0x43, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x43, 0x00, 0x06, 0x2D,
+  0x8C, 0x06, 0x43, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x43, 0x00, 0x06, 0x44,
+  0x8C, 0x06, 0x43, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x44, 0x00, 0x06, 0x2C,
+  0x8C, 0x06, 0x44, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x44, 0x00, 0x06, 0x2E,
+  0x8C, 0x06, 0x44, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x44, 0x00, 0x06, 0x47,
+  0x8C, 0x06, 0x45, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x45, 0x00, 0x06, 0x2D,
+  0x8C, 0x06, 0x45, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x45, 0x00, 0x06, 0x45,
+  0x8C, 0x06, 0x46, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x46, 0x00, 0x06, 0x2D,
+  0x8C, 0x06, 0x46, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x46, 0x00, 0x06, 0x45,
+  0x8C, 0x06, 0x46, 0x00, 0x06, 0x47, 0x8C, 0x06, 0x47, 0x00, 0x06, 0x2C,
+  0x8C, 0x06, 0x47, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x47, 0x00, 0x06, 0x70,
+  0x8C, 0x06, 0x4A, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x4A, 0x00, 0x06, 0x2D,
+  0x8C, 0x06, 0x4A, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x4A, 0x00, 0x06, 0x45,
+  0x8C, 0x06, 0x4A, 0x00, 0x06, 0x47, 0x90, 0x06, 0x26, 0x00, 0x06, 0x45,
+  0x90, 0x06, 0x26, 0x00, 0x06, 0x47, 0x90, 0x06, 0x28, 0x00, 0x06, 0x45,
+  0x90, 0x06, 0x28, 0x00, 0x06, 0x47, 0x90, 0x06, 0x2A, 0x00, 0x06, 0x45,
+  0x90, 0x06, 0x2A, 0x00, 0x06, 0x47, 0x90, 0x06, 0x2B, 0x00, 0x06, 0x45,
+  0x90, 0x06, 0x2B, 0x00, 0x06, 0x47, 0x90, 0x06, 0x33, 0x00, 0x06, 0x45,
+  0x90, 0x06, 0x33, 0x00, 0x06, 0x47, 0x90, 0x06, 0x34, 0x00, 0x06, 0x45,
+  0x90, 0x06, 0x34, 0x00, 0x06, 0x47, 0x90, 0x06, 0x43, 0x00, 0x06, 0x44,
+  0x90, 0x06, 0x43, 0x00, 0x06, 0x45, 0x90, 0x06, 0x44, 0x00, 0x06, 0x45,
+  0x90, 0x06, 0x46, 0x00, 0x06, 0x45, 0x90, 0x06, 0x46, 0x00, 0x06, 0x47,
+  0x90, 0x06, 0x4A, 0x00, 0x06, 0x45, 0x90, 0x06, 0x4A, 0x00, 0x06, 0x47,
+  0x90, 0x06, 0x40, 0x80, 0x06, 0x4E, 0x00, 0x06, 0x51, 0x90, 0x06, 0x40,
+  0x80, 0x06, 0x4F, 0x00, 0x06, 0x51, 0x90, 0x06, 0x40, 0x80, 0x06, 0x50,
+  0x00, 0x06, 0x51, 0x98, 0x06, 0x37, 0x00, 0x06, 0x49, 0x98, 0x06, 0x37,
+  0x00, 0x06, 0x4A, 0x98, 0x06, 0x39, 0x00, 0x06, 0x49, 0x98, 0x06, 0x39,
+  0x00, 0x06, 0x4A, 0x98, 0x06, 0x3A, 0x00, 0x06, 0x49, 0x98, 0x06, 0x3A,
+  0x00, 0x06, 0x4A, 0x98, 0x06, 0x33, 0x00, 0x06, 0x49, 0x98, 0x06, 0x33,
+  0x00, 0x06, 0x4A, 0x98, 0x06, 0x34, 0x00, 0x06, 0x49, 0x98, 0x06, 0x34,
+  0x00, 0x06, 0x4A, 0x98, 0x06, 0x2D, 0x00, 0x06, 0x49, 0x98, 0x06, 0x2D,
+  0x00, 0x06, 0x4A, 0x98, 0x06, 0x2C, 0x00, 0x06, 0x49, 0x98, 0x06, 0x2C,
+  0x00, 0x06, 0x4A, 0x98, 0x06, 0x2E, 0x00, 0x06, 0x49, 0x98, 0x06, 0x2E,
+  0x00, 0x06, 0x4A, 0x98, 0x06, 0x35, 0x00, 0x06, 0x49, 0x98, 0x06, 0x35,
+  0x00, 0x06, 0x4A, 0x98, 0x06, 0x36, 0x00, 0x06, 0x49, 0x98, 0x06, 0x36,
+  0x00, 0x06, 0x4A, 0x98, 0x06, 0x34, 0x00, 0x06, 0x2C, 0x98, 0x06, 0x34,
+  0x00, 0x06, 0x2D, 0x98, 0x06, 0x34, 0x00, 0x06, 0x2E, 0x98, 0x06, 0x34,
+  0x00, 0x06, 0x45, 0x98, 0x06, 0x34, 0x00, 0x06, 0x31, 0x98, 0x06, 0x33,
+  0x00, 0x06, 0x31, 0x98, 0x06, 0x35, 0x00, 0x06, 0x31, 0x98, 0x06, 0x36,
+  0x00, 0x06, 0x31, 0x94, 0x06, 0x37, 0x00, 0x06, 0x49, 0x94, 0x06, 0x37,
+  0x00, 0x06, 0x4A, 0x94, 0x06, 0x39, 0x00, 0x06, 0x49, 0x94, 0x06, 0x39,
+  0x00, 0x06, 0x4A, 0x94, 0x06, 0x3A, 0x00, 0x06, 0x49, 0x94, 0x06, 0x3A,
+  0x00, 0x06, 0x4A, 0x94, 0x06, 0x33, 0x00, 0x06, 0x49, 0x94, 0x06, 0x33,
+  0x00, 0x06, 0x4A, 0x94, 0x06, 0x34, 0x00, 0x06, 0x49, 0x94, 0x06, 0x34,
+  0x00, 0x06, 0x4A, 0x94, 0x06, 0x2D, 0x00, 0x06, 0x49, 0x94, 0x06, 0x2D,
+  0x00, 0x06, 0x4A, 0x94, 0x06, 0x2C, 0x00, 0x06, 0x49, 0x94, 0x06, 0x2C,
+  0x00, 0x06, 0x4A, 0x94, 0x06, 0x2E, 0x00, 0x06, 0x49, 0x94, 0x06, 0x2E,
+  0x00, 0x06, 0x4A, 0x94, 0x06, 0x35, 0x00, 0x06, 0x49, 0x94, 0x06, 0x35,
+  0x00, 0x06, 0x4A, 0x94, 0x06, 0x36, 0x00, 0x06, 0x49, 0x94, 0x06, 0x36,
+  0x00, 0x06, 0x4A, 0x94, 0x06, 0x34, 0x00, 0x06, 0x2C, 0x94, 0x06, 0x34,
+  0x00, 0x06, 0x2D, 0x94, 0x06, 0x34, 0x00, 0x06, 0x2E, 0x94, 0x06, 0x34,
+  0x00, 0x06, 0x45, 0x94, 0x06, 0x34, 0x00, 0x06, 0x31, 0x94, 0x06, 0x33,
+  0x00, 0x06, 0x31, 0x94, 0x06, 0x35, 0x00, 0x06, 0x31, 0x94, 0x06, 0x36,
+  0x00, 0x06, 0x31, 0x8C, 0x06, 0x34, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x34,
+  0x00, 0x06, 0x2D, 0x8C, 0x06, 0x34, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x34,
+  0x00, 0x06, 0x45, 0x8C, 0x06, 0x33, 0x00, 0x06, 0x47, 0x8C, 0x06, 0x34,
+  0x00, 0x06, 0x47, 0x8C, 0x06, 0x37, 0x00, 0x06, 0x45, 0x90, 0x06, 0x33,
+  0x00, 0x06, 0x2C, 0x90, 0x06, 0x33, 0x00, 0x06, 0x2D, 0x90, 0x06, 0x33,
+  0x00, 0x06, 0x2E, 0x90, 0x06, 0x34, 0x00, 0x06, 0x2C, 0x90, 0x06, 0x34,
+  0x00, 0x06, 0x2D, 0x90, 0x06, 0x34, 0x00, 0x06, 0x2E, 0x90, 0x06, 0x37,
+  0x00, 0x06, 0x45, 0x90, 0x06, 0x38, 0x00, 0x06, 0x45, 0x94, 0x06, 0x27,
+  0x00, 0x06, 0x4B, 0x98, 0x06, 0x27, 0x00, 0x06, 0x4B, 0x8C, 0x06, 0x2A,
+  0x80, 0x06, 0x2C, 0x00, 0x06, 0x45, 0x94, 0x06, 0x2A, 0x80, 0x06, 0x2D,
+  0x00, 0x06, 0x2C, 0x8C, 0x06, 0x2A, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x2C,
+  0x8C, 0x06, 0x2A, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x2A,
+  0x80, 0x06, 0x2E, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x2A, 0x80, 0x06, 0x45,
+  0x00, 0x06, 0x2C, 0x8C, 0x06, 0x2A, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2D,
+  0x8C, 0x06, 0x2A, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2E, 0x94, 0x06, 0x2C,
+  0x80, 0x06, 0x45, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x2C, 0x80, 0x06, 0x45,
+  0x00, 0x06, 0x2D, 0x94, 0x06, 0x2D, 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A,
+  0x94, 0x06, 0x2D, 0x80, 0x06, 0x45, 0x00, 0x06, 0x49, 0x8C, 0x06, 0x33,
+  0x80, 0x06, 0x2D, 0x00, 0x06, 0x2C, 0x8C, 0x06, 0x33, 0x80, 0x06, 0x2C,
+  0x00, 0x06, 0x2D, 0x94, 0x06, 0x33, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x49,
+  0x94, 0x06, 0x33, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x33,
+  0x80, 0x06, 0x45, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x33, 0x80, 0x06, 0x45,
+  0x00, 0x06, 0x2C, 0x94, 0x06, 0x33, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45,
+  0x8C, 0x06, 0x33, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45, 0x94, 0x06, 0x35,
+  0x80, 0x06, 0x2D, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x35, 0x80, 0x06, 0x2D,
+  0x00, 0x06, 0x2D, 0x94, 0x06, 0x35, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45,
+  0x94, 0x06, 0x34, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x34,
+  0x80, 0x06, 0x2D, 0x00, 0x06, 0x45, 0x94, 0x06, 0x34, 0x80, 0x06, 0x2C,
+  0x00, 0x06, 0x4A, 0x94, 0x06, 0x34, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2E,
+  0x8C, 0x06, 0x34, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2E, 0x94, 0x06, 0x34,
+  0x80, 0x06, 0x45, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x34, 0x80, 0x06, 0x45,
+  0x00, 0x06, 0x45, 0x94, 0x06, 0x36, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x49,
+  0x94, 0x06, 0x36, 0x80, 0x06, 0x2E, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x36,
+  0x80, 0x06, 0x2E, 0x00, 0x06, 0x45, 0x94, 0x06, 0x37, 0x80, 0x06, 0x45,
+  0x00, 0x06, 0x2D, 0x8C, 0x06, 0x37, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2D,
+  0x8C, 0x06, 0x37, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45, 0x94, 0x06, 0x37,
+  0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x39, 0x80, 0x06, 0x2C,
+  0x00, 0x06, 0x45, 0x94, 0x06, 0x39, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45,
+  0x8C, 0x06, 0x39, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45, 0x94, 0x06, 0x39,
+  0x80, 0x06, 0x45, 0x00, 0x06, 0x49, 0x94, 0x06, 0x3A, 0x80, 0x06, 0x45,
+  0x00, 0x06, 0x45, 0x94, 0x06, 0x3A, 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A,
+  0x94, 0x06, 0x3A, 0x80, 0x06, 0x45, 0x00, 0x06, 0x49, 0x94, 0x06, 0x41,
+  0x80, 0x06, 0x2E, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x41, 0x80, 0x06, 0x2E,
+  0x00, 0x06, 0x45, 0x94, 0x06, 0x42, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2D,
+  0x94, 0x06, 0x42, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45, 0x94, 0x06, 0x44,
+  0x80, 0x06, 0x2D, 0x00, 0x06, 0x45, 0x94, 0x06, 0x44, 0x80, 0x06, 0x2D,
+  0x00, 0x06, 0x4A, 0x94, 0x06, 0x44, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x49,
+  0x8C, 0x06, 0x44, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x2C, 0x94, 0x06, 0x44,
+  0x80, 0x06, 0x2C, 0x00, 0x06, 0x2C, 0x94, 0x06, 0x44, 0x80, 0x06, 0x2E,
+  0x00, 0x06, 0x45, 0x8C, 0x06, 0x44, 0x80, 0x06, 0x2E, 0x00, 0x06, 0x45,
+  0x94, 0x06, 0x44, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x44,
+  0x80, 0x06, 0x45, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x45, 0x80, 0x06, 0x2D,
+  0x00, 0x06, 0x2C, 0x8C, 0x06, 0x45, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x45,
+  0x94, 0x06, 0x45, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x4A, 0x8C, 0x06, 0x45,
+  0x80, 0x06, 0x2C, 0x00, 0x06, 0x2D, 0x8C, 0x06, 0x45, 0x80, 0x06, 0x2C,
+  0x00, 0x06, 0x45, 0x8C, 0x06, 0x45, 0x80, 0x06, 0x2E, 0x00, 0x06, 0x2C,
+  0x8C, 0x06, 0x45, 0x80, 0x06, 0x2E, 0x00, 0x06, 0x45, 0x8C, 0x06, 0x45,
+  0x80, 0x06, 0x2C, 0x00, 0x06, 0x2E, 0x8C, 0x06, 0x47, 0x80, 0x06, 0x45,
+  0x00, 0x06, 0x2C, 0x8C, 0x06, 0x47, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45,
+  0x8C, 0x06, 0x46, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x45, 0x94, 0x06, 0x46,
+  0x80, 0x06, 0x2D, 0x00, 0x06, 0x49, 0x94, 0x06, 0x46, 0x80, 0x06, 0x2C,
+  0x00, 0x06, 0x45, 0x8C, 0x06, 0x46, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x45,
+  0x94, 0x06, 0x46, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x49, 0x94, 0x06, 0x46,
+  0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x46, 0x80, 0x06, 0x45,
+  0x00, 0x06, 0x49, 0x94, 0x06, 0x4A, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45,
+  0x8C, 0x06, 0x4A, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45, 0x94, 0x06, 0x28,
+  0x80, 0x06, 0x2E, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x2A, 0x80, 0x06, 0x2C,
+  0x00, 0x06, 0x4A, 0x94, 0x06, 0x2A, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x49,
+  0x94, 0x06, 0x2A, 0x80, 0x06, 0x2E, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x2A,
+  0x80, 0x06, 0x2E, 0x00, 0x06, 0x49, 0x94, 0x06, 0x2A, 0x80, 0x06, 0x45,
+  0x00, 0x06, 0x4A, 0x94, 0x06, 0x2A, 0x80, 0x06, 0x45, 0x00, 0x06, 0x49,
+  0x94, 0x06, 0x2C, 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x2C,
+  0x80, 0x06, 0x2D, 0x00, 0x06, 0x49, 0x94, 0x06, 0x2C, 0x80, 0x06, 0x45,
+  0x00, 0x06, 0x49, 0x94, 0x06, 0x33, 0x80, 0x06, 0x2E, 0x00, 0x06, 0x49,
+  0x94, 0x06, 0x35, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x34,
+  0x80, 0x06, 0x2D, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x36, 0x80, 0x06, 0x2D,
+  0x00, 0x06, 0x4A, 0x94, 0x06, 0x44, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x4A,
+  0x94, 0x06, 0x44, 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x4A,
+  0x80, 0x06, 0x2D, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x4A, 0x80, 0x06, 0x2C,
+  0x00, 0x06, 0x4A, 0x94, 0x06, 0x4A, 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A,
+  0x94, 0x06, 0x45, 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x42,
+  0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x46, 0x80, 0x06, 0x2D,
+  0x00, 0x06, 0x4A, 0x8C, 0x06, 0x42, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2D,
+  0x8C, 0x06, 0x44, 0x80, 0x06, 0x2D, 0x00, 0x06, 0x45, 0x94, 0x06, 0x39,
+  0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x43, 0x80, 0x06, 0x45,
+  0x00, 0x06, 0x4A, 0x8C, 0x06, 0x46, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x2D,
+  0x94, 0x06, 0x45, 0x80, 0x06, 0x2E, 0x00, 0x06, 0x4A, 0x8C, 0x06, 0x44,
+  0x80, 0x06, 0x2C, 0x00, 0x06, 0x45, 0x94, 0x06, 0x43, 0x80, 0x06, 0x45,
+  0x00, 0x06, 0x45, 0x94, 0x06, 0x44, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x45,
+  0x94, 0x06, 0x46, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x2D, 0x94, 0x06, 0x2C,
+  0x80, 0x06, 0x2D, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x2D, 0x80, 0x06, 0x2C,
+  0x00, 0x06, 0x4A, 0x94, 0x06, 0x45, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x4A,
+  0x94, 0x06, 0x41, 0x80, 0x06, 0x45, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x28,
+  0x80, 0x06, 0x2D, 0x00, 0x06, 0x4A, 0x8C, 0x06, 0x43, 0x80, 0x06, 0x45,
+  0x00, 0x06, 0x45, 0x8C, 0x06, 0x39, 0x80, 0x06, 0x2C, 0x00, 0x06, 0x45,
+  0x8C, 0x06, 0x35, 0x80, 0x06, 0x45, 0x00, 0x06, 0x45, 0x94, 0x06, 0x33,
+  0x80, 0x06, 0x2E, 0x00, 0x06, 0x4A, 0x94, 0x06, 0x46, 0x80, 0x06, 0x2C,
+  0x00, 0x06, 0x4A, 0x98, 0x06, 0x35, 0x80, 0x06, 0x44, 0x00, 0x06, 0xD2,
+  0x98, 0x06, 0x42, 0x80, 0x06, 0x44, 0x00, 0x06, 0xD2, 0x98, 0x06, 0x27,
+  0x80, 0x06, 0x44, 0x80, 0x06, 0x44, 0x00, 0x06, 0x47, 0x98, 0x06, 0x27,
+  0x80, 0x06, 0x43, 0x80, 0x06, 0x28, 0x00, 0x06, 0x31, 0x98, 0x06, 0x45,
+  0x80, 0x06, 0x2D, 0x80, 0x06, 0x45, 0x00, 0x06, 0x2F, 0x98, 0x06, 0x35,
+  0x80, 0x06, 0x44, 0x80, 0x06, 0x39, 0x00, 0x06, 0x45, 0x98, 0x06, 0x31,
+  0x80, 0x06, 0x33, 0x80, 0x06, 0x48, 0x00, 0x06, 0x44, 0x98, 0x06, 0x39,
+  0x80, 0x06, 0x44, 0x80, 0x06, 0x4A, 0x00, 0x06, 0x47, 0x98, 0x06, 0x48,
+  0x80, 0x06, 0x33, 0x80, 0x06, 0x44, 0x00, 0x06, 0x45, 0x98, 0x06, 0x35,
+  0x80, 0x06, 0x44, 0x00, 0x06, 0x49, 0x98, 0x06, 0x35, 0x80, 0x06, 0x44,
+  0x80, 0x06, 0x49, 0x80, 0x00, 0x20, 0x80, 0x06, 0x27, 0x80, 0x06, 0x44,
+  0x80, 0x06, 0x44, 0x80, 0x06, 0x47, 0x80, 0x00, 0x20, 0x80, 0x06, 0x39,
+  0x80, 0x06, 0x44, 0x80, 0x06, 0x4A, 0x80, 0x06, 0x47, 0x80, 0x00, 0x20,
+  0x80, 0x06, 0x48, 0x80, 0x06, 0x33, 0x80, 0x06, 0x44, 0x00, 0x06, 0x45,
+  0x98, 0x06, 0x2C, 0x80, 0x06, 0x44, 0x80, 0x00, 0x20, 0x80, 0x06, 0x2C,
+  0x80, 0x06, 0x44, 0x80, 0x06, 0x27, 0x80, 0x06, 0x44, 0x00, 0x06, 0x47,
+  0x98, 0x06, 0x31, 0x80, 0x06, 0xCC, 0x80, 0x06, 0x27, 0x00, 0x06, 0x44,
+  0x28, 0x00, 0x2C, 0x28, 0x30, 0x01, 0x28, 0x30, 0x02, 0x28, 0x00, 0x3A,
+  0x28, 0x00, 0x3B, 0x28, 0x00, 0x21, 0x28, 0x00, 0x3F, 0x28, 0x30, 0x16,
+  0x28, 0x30, 0x17, 0x28, 0x20, 0x26, 0x28, 0x20, 0x25, 0x28, 0x20, 0x14,
+  0x28, 0x20, 0x13, 0x28, 0x00, 0x5F, 0x28, 0x00, 0x5F, 0x28, 0x00, 0x28,
+  0x28, 0x00, 0x29, 0x28, 0x00, 0x7B, 0x28, 0x00, 0x7D, 0x28, 0x30, 0x14,
+  0x28, 0x30, 0x15, 0x28, 0x30, 0x10, 0x28, 0x30, 0x11, 0x28, 0x30, 0x0A,
+  0x28, 0x30, 0x0B, 0x28, 0x30, 0x08, 0x28, 0x30, 0x09, 0x28, 0x30, 0x0C,
+  0x28, 0x30, 0x0D, 0x28, 0x30, 0x0E, 0x28, 0x30, 0x0F, 0x28, 0x00, 0x5B,
+  0x28, 0x00, 0x5D, 0x40, 0x20, 0x3E, 0x40, 0x20, 0x3E, 0x40, 0x20, 0x3E,
+  0x40, 0x20, 0x3E, 0x40, 0x00, 0x5F, 0x40, 0x00, 0x5F, 0x40, 0x00, 0x5F,
+  0x34, 0x00, 0x2C, 0x34, 0x30, 0x01, 0x34, 0x00, 0x2E, 0x34, 0x00, 0x3B,
+  0x34, 0x00, 0x3A, 0x34, 0x00, 0x3F, 0x34, 0x00, 0x21, 0x34, 0x20, 0x14,
+  0x34, 0x00, 0x28, 0x34, 0x00, 0x29, 0x34, 0x00, 0x7B, 0x34, 0x00, 0x7D,
+  0x34, 0x30, 0x14, 0x34, 0x30, 0x15, 0x34, 0x00, 0x23, 0x34, 0x00, 0x26,
+  0x34, 0x00, 0x2A, 0x34, 0x00, 0x2B, 0x34, 0x00, 0x2D, 0x34, 0x00, 0x3C,
+  0x34, 0x00, 0x3E, 0x34, 0x00, 0x3D, 0x34, 0x00, 0x5C, 0x34, 0x00, 0x24,
+  0x34, 0x00, 0x25, 0x34, 0x00, 0x40, 0x98, 0x00, 0x20, 0x00, 0x06, 0x4B,
+  0x90, 0x06, 0x40, 0x00, 0x06, 0x4B, 0x98, 0x00, 0x20, 0x00, 0x06, 0x4C,
+  0x98, 0x00, 0x20, 0x00, 0x06, 0x4D, 0x98, 0x00, 0x20, 0x00, 0x06, 0x4E,
+  0x90, 0x06, 0x40, 0x00, 0x06, 0x4E, 0x98, 0x00, 0x20, 0x00, 0x06, 0x4F,
+  0x90, 0x06, 0x40, 0x00, 0x06, 0x4F, 0x98, 0x00, 0x20, 0x00, 0x06, 0x50,
+  0x90, 0x06, 0x40, 0x00, 0x06, 0x50, 0x98, 0x00, 0x20, 0x00, 0x06, 0x51,
+  0x90, 0x06, 0x40, 0x00, 0x06, 0x51, 0x98, 0x00, 0x20, 0x00, 0x06, 0x52,
+  0x90, 0x06, 0x40, 0x00, 0x06, 0x52, 0x18, 0x06, 0x21, 0x18, 0x06, 0x22,
+  0x14, 0x06, 0x22, 0x18, 0x06, 0x23, 0x14, 0x06, 0x23, 0x18, 0x06, 0x24,
+  0x14, 0x06, 0x24, 0x18, 0x06, 0x25, 0x14, 0x06, 0x25, 0x18, 0x06, 0x26,
+  0x14, 0x06, 0x26, 0x0C, 0x06, 0x26, 0x10, 0x06, 0x26, 0x18, 0x06, 0x27,
+  0x14, 0x06, 0x27, 0x18, 0x06, 0x28, 0x14, 0x06, 0x28, 0x0C, 0x06, 0x28,
+  0x10, 0x06, 0x28, 0x18, 0x06, 0x29, 0x14, 0x06, 0x29, 0x18, 0x06, 0x2A,
+  0x14, 0x06, 0x2A, 0x0C, 0x06, 0x2A, 0x10, 0x06, 0x2A, 0x18, 0x06, 0x2B,
+  0x14, 0x06, 0x2B, 0x0C, 0x06, 0x2B, 0x10, 0x06, 0x2B, 0x18, 0x06, 0x2C,
+  0x14, 0x06, 0x2C, 0x0C, 0x06, 0x2C, 0x10, 0x06, 0x2C, 0x18, 0x06, 0x2D,
+  0x14, 0x06, 0x2D, 0x0C, 0x06, 0x2D, 0x10, 0x06, 0x2D, 0x18, 0x06, 0x2E,
+  0x14, 0x06, 0x2E, 0x0C, 0x06, 0x2E, 0x10, 0x06, 0x2E, 0x18, 0x06, 0x2F,
+  0x14, 0x06, 0x2F, 0x18, 0x06, 0x30, 0x14, 0x06, 0x30, 0x18, 0x06, 0x31,
+  0x14, 0x06, 0x31, 0x18, 0x06, 0x32, 0x14, 0x06, 0x32, 0x18, 0x06, 0x33,
+  0x14, 0x06, 0x33, 0x0C, 0x06, 0x33, 0x10, 0x06, 0x33, 0x18, 0x06, 0x34,
+  0x14, 0x06, 0x34, 0x0C, 0x06, 0x34, 0x10, 0x06, 0x34, 0x18, 0x06, 0x35,
+  0x14, 0x06, 0x35, 0x0C, 0x06, 0x35, 0x10, 0x06, 0x35, 0x18, 0x06, 0x36,
+  0x14, 0x06, 0x36, 0x0C, 0x06, 0x36, 0x10, 0x06, 0x36, 0x18, 0x06, 0x37,
+  0x14, 0x06, 0x37, 0x0C, 0x06, 0x37, 0x10, 0x06, 0x37, 0x18, 0x06, 0x38,
+  0x14, 0x06, 0x38, 0x0C, 0x06, 0x38, 0x10, 0x06, 0x38, 0x18, 0x06, 0x39,
+  0x14, 0x06, 0x39, 0x0C, 0x06, 0x39, 0x10, 0x06, 0x39, 0x18, 0x06, 0x3A,
+  0x14, 0x06, 0x3A, 0x0C, 0x06, 0x3A, 0x10, 0x06, 0x3A, 0x18, 0x06, 0x41,
+  0x14, 0x06, 0x41, 0x0C, 0x06, 0x41, 0x10, 0x06, 0x41, 0x18, 0x06, 0x42,
+  0x14, 0x06, 0x42, 0x0C, 0x06, 0x42, 0x10, 0x06, 0x42, 0x18, 0x06, 0x43,
+  0x14, 0x06, 0x43, 0x0C, 0x06, 0x43, 0x10, 0x06, 0x43, 0x18, 0x06, 0x44,
+  0x14, 0x06, 0x44, 0x0C, 0x06, 0x44, 0x10, 0x06, 0x44, 0x18, 0x06, 0x45,
+  0x14, 0x06, 0x45, 0x0C, 0x06, 0x45, 0x10, 0x06, 0x45, 0x18, 0x06, 0x46,
+  0x14, 0x06, 0x46, 0x0C, 0x06, 0x46, 0x10, 0x06, 0x46, 0x18, 0x06, 0x47,
+  0x14, 0x06, 0x47, 0x0C, 0x06, 0x47, 0x10, 0x06, 0x47, 0x18, 0x06, 0x48,
+  0x14, 0x06, 0x48, 0x18, 0x06, 0x49, 0x14, 0x06, 0x49, 0x18, 0x06, 0x4A,
+  0x14, 0x06, 0x4A, 0x0C, 0x06, 0x4A, 0x10, 0x06, 0x4A, 0x98, 0x06, 0x44,
+  0x00, 0x06, 0x22, 0x94, 0x06, 0x44, 0x00, 0x06, 0x22, 0x98, 0x06, 0x44,
+  0x00, 0x06, 0x23, 0x94, 0x06, 0x44, 0x00, 0x06, 0x23, 0x98, 0x06, 0x44,
+  0x00, 0x06, 0x25, 0x94, 0x06, 0x44, 0x00, 0x06, 0x25, 0x98, 0x06, 0x44,
+  0x00, 0x06, 0x27, 0x94, 0x06, 0x44, 0x00, 0x06, 0x27, 0x2C, 0x00, 0x21,
+  0x2C, 0x00, 0x22, 0x2C, 0x00, 0x23, 0x2C, 0x00, 0x24, 0x2C, 0x00, 0x25,
+  0x2C, 0x00, 0x26, 0x2C, 0x00, 0x27, 0x2C, 0x00, 0x28, 0x2C, 0x00, 0x29,
+  0x2C, 0x00, 0x2A, 0x2C, 0x00, 0x2B, 0x2C, 0x00, 0x2C, 0x2C, 0x00, 0x2D,
+  0x2C, 0x00, 0x2E, 0x2C, 0x00, 0x2F, 0x2C, 0x00, 0x30, 0x2C, 0x00, 0x31,
+  0x2C, 0x00, 0x32, 0x2C, 0x00, 0x33, 0x2C, 0x00, 0x34, 0x2C, 0x00, 0x35,
+  0x2C, 0x00, 0x36, 0x2C, 0x00, 0x37, 0x2C, 0x00, 0x38, 0x2C, 0x00, 0x39,
+  0x2C, 0x00, 0x3A, 0x2C, 0x00, 0x3B, 0x2C, 0x00, 0x3C, 0x2C, 0x00, 0x3D,
+  0x2C, 0x00, 0x3E, 0x2C, 0x00, 0x3F, 0x2C, 0x00, 0x40, 0x2C, 0x00, 0x41,
+  0x2C, 0x00, 0x42, 0x2C, 0x00, 0x43, 0x2C, 0x00, 0x44, 0x2C, 0x00, 0x45,
+  0x2C, 0x00, 0x46, 0x2C, 0x00, 0x47, 0x2C, 0x00, 0x48, 0x2C, 0x00, 0x49,
+  0x2C, 0x00, 0x4A, 0x2C, 0x00, 0x4B, 0x2C, 0x00, 0x4C, 0x2C, 0x00, 0x4D,
+  0x2C, 0x00, 0x4E, 0x2C, 0x00, 0x4F, 0x2C, 0x00, 0x50, 0x2C, 0x00, 0x51,
+  0x2C, 0x00, 0x52, 0x2C, 0x00, 0x53, 0x2C, 0x00, 0x54, 0x2C, 0x00, 0x55,
+  0x2C, 0x00, 0x56, 0x2C, 0x00, 0x57, 0x2C, 0x00, 0x58, 0x2C, 0x00, 0x59,
+  0x2C, 0x00, 0x5A, 0x2C, 0x00, 0x5B, 0x2C, 0x00, 0x5C, 0x2C, 0x00, 0x5D,
+  0x2C, 0x00, 0x5E, 0x2C, 0x00, 0x5F, 0x2C, 0x00, 0x60, 0x2C, 0x00, 0x61,
+  0x2C, 0x00, 0x62, 0x2C, 0x00, 0x63, 0x2C, 0x00, 0x64, 0x2C, 0x00, 0x65,
+  0x2C, 0x00, 0x66, 0x2C, 0x00, 0x67, 0x2C, 0x00, 0x68, 0x2C, 0x00, 0x69,
+  0x2C, 0x00, 0x6A, 0x2C, 0x00, 0x6B, 0x2C, 0x00, 0x6C, 0x2C, 0x00, 0x6D,
+  0x2C, 0x00, 0x6E, 0x2C, 0x00, 0x6F, 0x2C, 0x00, 0x70, 0x2C, 0x00, 0x71,
+  0x2C, 0x00, 0x72, 0x2C, 0x00, 0x73, 0x2C, 0x00, 0x74, 0x2C, 0x00, 0x75,
+  0x2C, 0x00, 0x76, 0x2C, 0x00, 0x77, 0x2C, 0x00, 0x78, 0x2C, 0x00, 0x79,
+  0x2C, 0x00, 0x7A, 0x2C, 0x00, 0x7B, 0x2C, 0x00, 0x7C, 0x2C, 0x00, 0x7D,
+  0x2C, 0x00, 0x7E, 0x2C, 0x29, 0x85, 0x2C, 0x29, 0x86, 0x30, 0x30, 0x02,
+  0x30, 0x30, 0x0C, 0x30, 0x30, 0x0D, 0x30, 0x30, 0x01, 0x30, 0x30, 0xFB,
+  0x30, 0x30, 0xF2, 0x30, 0x30, 0xA1, 0x30, 0x30, 0xA3, 0x30, 0x30, 0xA5,
+  0x30, 0x30, 0xA7, 0x30, 0x30, 0xA9, 0x30, 0x30, 0xE3, 0x30, 0x30, 0xE5,
+  0x30, 0x30, 0xE7, 0x30, 0x30, 0xC3, 0x30, 0x30, 0xFC, 0x30, 0x30, 0xA2,
+  0x30, 0x30, 0xA4, 0x30, 0x30, 0xA6, 0x30, 0x30, 0xA8, 0x30, 0x30, 0xAA,
+  0x30, 0x30, 0xAB, 0x30, 0x30, 0xAD, 0x30, 0x30, 0xAF, 0x30, 0x30, 0xB1,
+  0x30, 0x30, 0xB3, 0x30, 0x30, 0xB5, 0x30, 0x30, 0xB7, 0x30, 0x30, 0xB9,
+  0x30, 0x30, 0xBB, 0x30, 0x30, 0xBD, 0x30, 0x30, 0xBF, 0x30, 0x30, 0xC1,
+  0x30, 0x30, 0xC4, 0x30, 0x30, 0xC6, 0x30, 0x30, 0xC8, 0x30, 0x30, 0xCA,
+  0x30, 0x30, 0xCB, 0x30, 0x30, 0xCC, 0x30, 0x30, 0xCD, 0x30, 0x30, 0xCE,
+  0x30, 0x30, 0xCF, 0x30, 0x30, 0xD2, 0x30, 0x30, 0xD5, 0x30, 0x30, 0xD8,
+  0x30, 0x30, 0xDB, 0x30, 0x30, 0xDE, 0x30, 0x30, 0xDF, 0x30, 0x30, 0xE0,
+  0x30, 0x30, 0xE1, 0x30, 0x30, 0xE2, 0x30, 0x30, 0xE4, 0x30, 0x30, 0xE6,
+  0x30, 0x30, 0xE8, 0x30, 0x30, 0xE9, 0x30, 0x30, 0xEA, 0x30, 0x30, 0xEB,
+  0x30, 0x30, 0xEC, 0x30, 0x30, 0xED, 0x30, 0x30, 0xEF, 0x30, 0x30, 0xF3,
+  0x30, 0x30, 0x99, 0x30, 0x30, 0x9A, 0x30, 0x31, 0x64, 0x30, 0x31, 0x31,
+  0x30, 0x31, 0x32, 0x30, 0x31, 0x33, 0x30, 0x31, 0x34, 0x30, 0x31, 0x35,
+  0x30, 0x31, 0x36, 0x30, 0x31, 0x37, 0x30, 0x31, 0x38, 0x30, 0x31, 0x39,
+  0x30, 0x31, 0x3A, 0x30, 0x31, 0x3B, 0x30, 0x31, 0x3C, 0x30, 0x31, 0x3D,
+  0x30, 0x31, 0x3E, 0x30, 0x31, 0x3F, 0x30, 0x31, 0x40, 0x30, 0x31, 0x41,
+  0x30, 0x31, 0x42, 0x30, 0x31, 0x43, 0x30, 0x31, 0x44, 0x30, 0x31, 0x45,
+  0x30, 0x31, 0x46, 0x30, 0x31, 0x47, 0x30, 0x31, 0x48, 0x30, 0x31, 0x49,
+  0x30, 0x31, 0x4A, 0x30, 0x31, 0x4B, 0x30, 0x31, 0x4C, 0x30, 0x31, 0x4D,
+  0x30, 0x31, 0x4E, 0x30, 0x31, 0x4F, 0x30, 0x31, 0x50, 0x30, 0x31, 0x51,
+  0x30, 0x31, 0x52, 0x30, 0x31, 0x53, 0x30, 0x31, 0x54, 0x30, 0x31, 0x55,
+  0x30, 0x31, 0x56, 0x30, 0x31, 0x57, 0x30, 0x31, 0x58, 0x30, 0x31, 0x59,
+  0x30, 0x31, 0x5A, 0x30, 0x31, 0x5B, 0x30, 0x31, 0x5C, 0x30, 0x31, 0x5D,
+  0x30, 0x31, 0x5E, 0x30, 0x31, 0x5F, 0x30, 0x31, 0x60, 0x30, 0x31, 0x61,
+  0x30, 0x31, 0x62, 0x30, 0x31, 0x63, 0x2C, 0x00, 0xA2, 0x2C, 0x00, 0xA3,
+  0x2C, 0x00, 0xAC, 0x2C, 0x00, 0xAF, 0x2C, 0x00, 0xA6, 0x2C, 0x00, 0xA5,
+  0x2C, 0x20, 0xA9, 0x30, 0x25, 0x02, 0x30, 0x21, 0x90, 0x30, 0x21, 0x91,
+  0x30, 0x21, 0x92, 0x30, 0x21, 0x93, 0x30, 0x25, 0xA0, 0x30, 0x25, 0xCB,
+  0x81, 0x10, 0x99, 0x01, 0x10, 0xBA, 0x81, 0x10, 0x9B, 0x01, 0x10, 0xBA,
+  0x81, 0x10, 0xA5, 0x01, 0x10, 0xBA, 0x81, 0x11, 0x31, 0x01, 0x11, 0x27,
+  0x81, 0x11, 0x32, 0x01, 0x11, 0x27, 0x81, 0x13, 0x47, 0x01, 0x13, 0x3E,
+  0x81, 0x13, 0x47, 0x01, 0x13, 0x57, 0x81, 0x14, 0xB9, 0x01, 0x14, 0xBA,
+  0x81, 0x14, 0xB9, 0x01, 0x14, 0xB0, 0x81, 0x14, 0xB9, 0x01, 0x14, 0xBD,
+  0x81, 0x15, 0xB8, 0x01, 0x15, 0xAF, 0x81, 0x15, 0xB9, 0x01, 0x15, 0xAF,
   0x81, 0xD1, 0x57, 0x01, 0xD1, 0x65, 0x81, 0xD1, 0x58, 0x01, 0xD1, 0x65,
   0x81, 0xD1, 0x5F, 0x01, 0xD1, 0x6E, 0x81, 0xD1, 0x5F, 0x01, 0xD1, 0x6F,
   0x81, 0xD1, 0x5F, 0x01, 0xD1, 0x70, 0x81, 0xD1, 0x5F, 0x01, 0xD1, 0x71,
@@ -2140,17 +2145,17 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,   384,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,   384,   416,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,   416,   448,
-       -1,    -1,    -1,    -1,   480,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,   448,   480,
+       -1,    -1,    -1,    -1,   512,   544,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,   512,   544,    -1,    -1,
-       -1,    -1,    -1,   576,   608,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,   576,   608,    -1,    -1,
+       -1,    -1,    -1,   640,   672,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -2158,7 +2163,7 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,   640
+       -1,    -1,    -1,    -1,    -1,    -1,   704
   },
   {
        -1,    -1,    -1,    -1,    -1,     0,    32,    64,
@@ -2211,39 +2216,47 @@
      4384,  4416,  4448,  4480,  4512,  4544,  4576,  4608,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,  4640,    -1,    -1,    -1,  4672,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     4704,  4736,  4768,  4800,  4832,  4864,  4896,  4928,
-     4960,  4992,  5024,  5056,  5088,  5120,  5152,    -1,
-     5184,  5216,  5248,  5280,  5312,  5344,  5376,  5408,
-     5440,  5472,  5504,  5536,  5568,  5600,  5632,  5664,
-     5696,  5728,  5760,  5792,  5824,  5856,  5888,  5920,
-     5952,  5984,  6016,  6048,  6080,  6112,  6144,  6176,
-     6208,  6240,  6272,  6304,  6336,  6368,  6400,  6432,
-       -1,    -1,    -1,    -1,  6464,  6496,    -1,    -1,
-       -1,  6528,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,  4640,    -1,    -1,    -1,
+       -1,    -1,    -1,  4672,    -1,    -1,    -1,  4704,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,  6560,  6592,    -1,  6624,  6656,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,  4736,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     6688,  6720,  6752,  6784,  6816,  6848,  6880,  6912,
-     6944,  6976,  7008,  7040,  7072,  7104,  7136,  7168,
-     7200,  7232,  7264,  7296,  7328,  7360,  7392,  7424,
-     7456,  7488,  7520,  7552,  7584,  7616,  7648,  7680,
+     4768,  4800,  4832,  4864,  4896,  4928,  4960,  4992,
+     5024,  5056,  5088,  5120,  5152,  5184,  5216,    -1,
+     5248,  5280,  5312,  5344,  5376,  5408,  5440,  5472,
+     5504,  5536,  5568,  5600,  5632,  5664,  5696,  5728,
+     5760,  5792,  5824,  5856,  5888,  5920,  5952,  5984,
+     6016,  6048,  6080,  6112,  6144,  6176,  6208,  6240,
+     6272,  6304,  6336,  6368,  6400,  6432,  6464,  6496,
+       -1,    -1,    -1,    -1,  6528,  6560,    -1,    -1,
+       -1,  6592,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,  6624,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,  6656,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,  6688,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     7712,  7744,  7776,  7808,  7840,  7872,    -1,    -1,
+       -1,    -1,  6720,  6752,    -1,  6784,  6816,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     6848,  6880,  6912,  6944,  6976,  7008,  7040,  7072,
+     7104,  7136,  7168,  7200,  7232,  7264,  7296,  7328,
+     7360,  7392,  7424,  7456,  7488,  7520,  7552,  7584,
+     7616,  7648,  7680,  7712,  7744,  7776,  7808,  7840,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     7904,  7936,  7968,  8000,  8032,    -1,    -1,    -1,
-     8064,  8096,  8128,    -1,    -1,    -1,    -1,    -1,
+     7872,  7904,  7936,  7968,  8000,  8032,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     8160,  8192,  8224,  8256,  8288,  8320,  8352,  8384,
-     8416,  8448,  8480,  8512,  8544,  8576,  8608,  8640,
-     8672,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     8064,  8096,  8128,  8160,  8192,    -1,    -1,    -1,
+     8224,  8256,  8288,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     8320,  8352,  8384,  8416,  8448,  8480,  8512,  8544,
+     8576,  8608,  8640,  8672,  8704,  8736,  8768,  8800,
+     8832,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1
   },
   {
@@ -2829,511 +2842,531 @@
     37054, 37057, 37060, 37063, 37066, 37069, 37072, 37075,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    37078,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1, 37078, 37079,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    37080,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    37079, 37080,    -1,    -1,    -1,    -1,    -1,    -1,
-     4313,  4314,  4315,  4316,  4317,  4318,  4319,  4320,
-     4321,  4322,  4323,  4324,  4325,  4326,  4327,  4328,
-     4329,  4330,  4331,  4332,  4333,  4334,  4335,  4336,
-     4337,  4338,  4339,  4340,  4341,  4342,  4343,  4344,
-     4345,  4346,  4347,  4348,  4349,  4350,  4351,  4352,
-     4353,  4354,  4355,  4356,  4357,  4358,  4359,  4360,
-     4361,  4362,  4363,  4364,  4365,  4366,  4367,  4368,
-     4369,  4370,  4371,  4372,  4373,  4374,  4375,  4376,
-     4377,  4378,  4379,  4380,  4381,  4382,  4383,  4384,
-     4385,  4386,  4387,  4388,  4389,  4390,  4391,  4392,
-     4393,  4394,  4395,  4396,  4397,  4398,  4399,  4400,
-     4401,  4402,  4403,  4404,  4405,  4406,  4407,  4408,
-     4409,  4410,  4411,  4412,  4413,  4414,  4415,  4416,
-     4417,  4418,  4419,  4420,  4421,  4422,  4423,  4424,
-     4425,  4426,  4427,  4428,  4429,  4430,  4431,  4432,
-     4433,  4434,  4435,  4436,  4437,  4438,  4439,  4440,
-     4441,  4442,  4443,  4444,  4445,  4446,  4447,  4448,
-     4449,  4450,  4451,  4452,  4453,  4454,  4455,  4456,
-     4457,  4458,  4459,  4460,  4461,  4462,  4463,  4464,
-     4465,  4466,  4467,  4468,  4469,  4470,  4471,  4472,
-     4473,  4474,  4475,  4476,  4477,  4478,  4479,  4480,
-     4481,  4482,  4483,  4484,  4485,  4486,  4487,  4488,
-     4489,  4490,  4491,  4492,  4493,  4494,  4495,  4496,
-     4497,  4498,  4499,  4500,  4501,  4502,  4503,  4504,
-     4505,  4506,  4507,  4508,  4509,  4510,  4511,  4512,
-     4513,  4514,  4515,  4516,  4517,  4518,  4519,  4520,
-     4521,  4522,  4523,  4524,  4525,  4526,  4527,  4528,
-     4529,  4530,  4531,  4532,  4533,  4534,  4535,  4536,
-     4537,  4538,  4539,  4540,  4541,  4542,  4543,  4544,
-     4545,  4546,  4547,  4548,  4549,  4550,  4551,  4552,
-     4553,  4554,  4555,  4556,  4557,  4558,  4559,  4560,
-     4561,  4562,  4563,  4564,  4565,  4566,  4567,  4568,
-     4569,  4570,  4571,  4572,  4573,  4574,  4575,  4576,
-     4577,  4578,  4579,  4580,  4581,  4582,    -1,    -1,
-     4583,    -1,  4584,    -1,    -1,  4585,  4586,  4587,
-     4588,  4589,  4590,  4591,  4592,  4593,  4594,    -1,
-     4595,    -1,  4596,    -1,    -1,  4597,  4598,    -1,
-       -1,    -1,  4599,  4600,  4601,  4602,  4603,  4604,
-     4605,  4606,  4607,  4608,  4609,  4610,  4611,  4612,
-     4613,  4614,  4615,  4616,  4617,  4618,  4619,  4620,
-     4621,  4622,  4623,  4624,  4625,  4626,  4627,  4628,
-     4629,  4630,  4631,  4632,  4633,  4634,  4635,  4636,
-     4637,  4638,  4639,  4640,  4641,  4642,  4643,  4644,
-     4645,  4646,  4647,  4648,  4649,  4650,  4651,  4652,
-     4653,  4654,  4655,  4656,  4657,  4658,  4659,  4660,
-     4661,  4662,  4663,  4664,  4665,  4666,    -1,    -1,
-     4667,  4668,  4669,  4670,  4671,  4672,  4673,  4674,
-     4675,  4676,  4677,  4678,  4679,  4680,  4681,  4682,
-     4683,  4684,  4685,  4686,  4687,  4688,  4689,  4690,
-     4691,  4692,  4693,  4694,  4695,  4696,  4697,  4698,
-     4699,  4700,  4701,  4702,  4703,  4704,  4705,  4706,
-     4707,  4708,  4709,  4710,  4711,  4712,  4713,  4714,
-     4715,  4716,  4717,  4718,  4719,  4720,  4721,  4722,
-     4723,  4724,  4725,  4726,  4727,  4728,  4729,  4730,
-     4731,  4732,  4733,  4734,  4735,  4736,  4737,  4738,
-     4739,  4740,  4741,  4742,  4743,  4744,  4745,  4746,
-     4747,  4748,  4749,  4750,  4751,  4752,  4753,  4754,
-     4755,  4756,  4757,  4758,  4759,  4760,  4761,  4762,
-     4763,  4764,  4765,  4766,  4767,  4768,  4769,  4770,
-     4771,  4772,    -1,    -1,    -1,    -1,    -1,    -1,
-    37541, 37543, 37545, 37547, 37550, 37553, 37555,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1, 37557, 37559, 37561, 37563, 37565,
-       -1,    -1,    -1,    -1,    -1,  4799,    -1,  4801,
-    37571, 37572, 37573, 37574, 37575, 37576, 37577, 37578,
-    37579, 37580,  4813,  4815,  4817,  4819,  4821,  4823,
-     4825,  4827,  4829,  4831,  4833,  4835,  4837,    -1,
-     4839,  4841,  4843,  4845,  4847,    -1,  4849,    -1,
-     4851,  4853,    -1,  4855,  4857,    -1,  4859,  4861,
-     4863,  4865,  4867,  4869,  4871,  4873,  4875, 37645,
-    37647, 37648, 37649, 37650, 37651, 37652, 37653, 37654,
-    37655, 37656, 37657, 37658, 37659, 37660, 37661, 37662,
-    37663, 37664, 37665, 37666, 37667, 37668, 37669, 37670,
-    37671, 37672, 37673, 37674, 37675, 37676, 37677, 37678,
-    37679, 37680, 37681, 37682, 37683, 37684, 37685, 37686,
-    37687, 37688, 37689, 37690, 37691, 37692, 37693, 37694,
-    37695, 37696, 37697, 37698, 37699, 37700, 37701, 37702,
-    37703, 37704, 37705, 37706, 37707, 37708, 37709, 37710,
-    37711, 37712, 37713, 37714, 37715, 37716, 37717, 37718,
-    37719, 37720, 37721, 37722, 37723, 37724, 37725, 37726,
-    37727, 37728, 37729, 37730, 37731, 37732, 37733, 37734,
-    37735, 37736, 37737, 37738, 37739, 37740, 37741, 37742,
-    37743, 37744,    -1,    -1,    -1,    -1,    -1,    -1,
+    37081, 37082,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1, 37745, 37746, 37747, 37748, 37749,
-    37750, 37751, 37752, 37753, 37754, 37755, 37756, 37757,
-    37758, 37759, 37760, 37761, 37762, 37763, 37764, 37765,
-    37766, 37767, 37768, 37770, 37772, 37774, 37776, 37778,
-    37780, 37782, 37784, 37786, 37788, 37790, 37792, 37794,
-    37796, 37798, 37800, 37802, 37804, 37805, 37806, 37807,
-    37808, 37810, 37812, 37814, 37816, 37818, 37820, 37822,
-    37824, 37826, 37828, 37830, 37832, 37834, 37836, 37838,
-    37840, 37842, 37844, 37846, 37848, 37850, 37852, 37854,
-    37856, 37858, 37860, 37862, 37864, 37866, 37868, 37870,
-    37872, 37874, 37876, 37878, 37880, 37882, 37884, 37886,
-    37888, 37890, 37892, 37894, 37896, 37898, 37900, 37902,
-    37904, 37906, 37908, 37910, 37912, 37914, 37916, 37918,
-    37920, 37922, 37924, 37926, 37928, 37930, 37932, 37934,
-    37936, 37938, 37940, 37942, 37944, 37946, 37948, 37950,
-    37952, 37954, 37956, 37958, 37960, 37962, 37964, 37966,
-    37968, 37970, 37972, 37974, 37976, 37978, 37980, 37982,
-    37984, 37986, 37988, 37990, 37992, 37994, 37996, 37999,
-    38002, 38005, 38008, 38011, 38014, 38016, 38018, 38020,
-    38022, 38024, 38026, 38028, 38030, 38032, 38034, 38036,
-    38038, 38040, 38042, 38044, 38046, 38048, 38050, 38052,
-    38054, 38056, 38058, 38060, 38062, 38064, 38066, 38068,
-    38070, 38072, 38074, 38076, 38078, 38080, 38082, 38084,
-    38086, 38088, 38090, 38092, 38094, 38096, 38098, 38100,
-    38102, 38104, 38106, 38108, 38110, 38112, 38114, 38116,
-    38118, 38120, 38122, 38124, 38126, 38128, 38130, 38132,
-    38134, 38136, 38138, 38140, 38142, 38144, 38146, 38148,
-    38150, 38152, 38154, 38156, 38158, 38160, 38162, 38164,
-    38166, 38168, 38170, 38172, 38174, 38176, 38178, 38180,
-    38182, 38184, 38186, 38188, 38190, 38192, 38194, 38196,
-    38198, 38200, 38202, 38204, 38206, 38208, 38210, 38212,
-    38214, 38216, 38218, 38220, 38222, 38224, 38226, 38228,
-    38230, 38232, 38234, 38236, 38238, 38240, 38242, 38244,
-    38246, 38248, 38250, 38252, 38254, 38256, 38258, 38260,
-    38262, 38264, 38266, 38268, 38270, 38272, 38274, 38276,
-    38278, 38280, 38282, 38284, 38286, 38288, 38290, 38292,
-    38294, 38296, 38298, 38301, 38304, 38307, 38309, 38311,
-    38313, 38315, 38317, 38319, 38321, 38323, 38325, 38327,
-    38329, 38331, 38333, 38335, 38337, 38339, 38341, 38343,
-    38345, 38347, 38349, 38351, 38353, 38355, 38357, 38359,
-    38361, 38363, 38365, 38367, 38369, 38371, 38373, 38375,
-    38377, 38379, 38381, 38383, 38385, 38387, 38389, 38391,
-    38393, 38395, 38397, 38399, 38401, 38403, 38405, 38407,
-    38409, 38411, 38413, 38415, 38417, 38419, 38421, 38423,
-    38425, 38427, 38429, 38431, 38433, 38435, 38437, 38439,
-    38441, 38443, 38445, 38447, 38449, 38451,    -1,    -1,
+       -1,    -1,    -1,    -1, 37083, 37084, 37085, 37086,
+     4319,  4320,  4321,  4322,  4323,  4324,  4325,  4326,
+     4327,  4328,  4329,  4330,  4331,  4332,  4333,  4334,
+     4335,  4336,  4337,  4338,  4339,  4340,  4341,  4342,
+     4343,  4344,  4345,  4346,  4347,  4348,  4349,  4350,
+     4351,  4352,  4353,  4354,  4355,  4356,  4357,  4358,
+     4359,  4360,  4361,  4362,  4363,  4364,  4365,  4366,
+     4367,  4368,  4369,  4370,  4371,  4372,  4373,  4374,
+     4375,  4376,  4377,  4378,  4379,  4380,  4381,  4382,
+     4383,  4384,  4385,  4386,  4387,  4388,  4389,  4390,
+     4391,  4392,  4393,  4394,  4395,  4396,  4397,  4398,
+     4399,  4400,  4401,  4402,  4403,  4404,  4405,  4406,
+     4407,  4408,  4409,  4410,  4411,  4412,  4413,  4414,
+     4415,  4416,  4417,  4418,  4419,  4420,  4421,  4422,
+     4423,  4424,  4425,  4426,  4427,  4428,  4429,  4430,
+     4431,  4432,  4433,  4434,  4435,  4436,  4437,  4438,
+     4439,  4440,  4441,  4442,  4443,  4444,  4445,  4446,
+     4447,  4448,  4449,  4450,  4451,  4452,  4453,  4454,
+     4455,  4456,  4457,  4458,  4459,  4460,  4461,  4462,
+     4463,  4464,  4465,  4466,  4467,  4468,  4469,  4470,
+     4471,  4472,  4473,  4474,  4475,  4476,  4477,  4478,
+     4479,  4480,  4481,  4482,  4483,  4484,  4485,  4486,
+     4487,  4488,  4489,  4490,  4491,  4492,  4493,  4494,
+     4495,  4496,  4497,  4498,  4499,  4500,  4501,  4502,
+     4503,  4504,  4505,  4506,  4507,  4508,  4509,  4510,
+     4511,  4512,  4513,  4514,  4515,  4516,  4517,  4518,
+     4519,  4520,  4521,  4522,  4523,  4524,  4525,  4526,
+     4527,  4528,  4529,  4530,  4531,  4532,  4533,  4534,
+     4535,  4536,  4537,  4538,  4539,  4540,  4541,  4542,
+     4543,  4544,  4545,  4546,  4547,  4548,  4549,  4550,
+     4551,  4552,  4553,  4554,  4555,  4556,  4557,  4558,
+     4559,  4560,  4561,  4562,  4563,  4564,  4565,  4566,
+     4567,  4568,  4569,  4570,  4571,  4572,  4573,  4574,
+     4575,  4576,  4577,  4578,  4579,  4580,  4581,  4582,
+     4583,  4584,  4585,  4586,  4587,  4588,    -1,    -1,
+     4589,    -1,  4590,    -1,    -1,  4591,  4592,  4593,
+     4594,  4595,  4596,  4597,  4598,  4599,  4600,    -1,
+     4601,    -1,  4602,    -1,    -1,  4603,  4604,    -1,
+       -1,    -1,  4605,  4606,  4607,  4608,  4609,  4610,
+     4611,  4612,  4613,  4614,  4615,  4616,  4617,  4618,
+     4619,  4620,  4621,  4622,  4623,  4624,  4625,  4626,
+     4627,  4628,  4629,  4630,  4631,  4632,  4633,  4634,
+     4635,  4636,  4637,  4638,  4639,  4640,  4641,  4642,
+     4643,  4644,  4645,  4646,  4647,  4648,  4649,  4650,
+     4651,  4652,  4653,  4654,  4655,  4656,  4657,  4658,
+     4659,  4660,  4661,  4662,  4663,  4664,  4665,  4666,
+     4667,  4668,  4669,  4670,  4671,  4672,    -1,    -1,
+     4673,  4674,  4675,  4676,  4677,  4678,  4679,  4680,
+     4681,  4682,  4683,  4684,  4685,  4686,  4687,  4688,
+     4689,  4690,  4691,  4692,  4693,  4694,  4695,  4696,
+     4697,  4698,  4699,  4700,  4701,  4702,  4703,  4704,
+     4705,  4706,  4707,  4708,  4709,  4710,  4711,  4712,
+     4713,  4714,  4715,  4716,  4717,  4718,  4719,  4720,
+     4721,  4722,  4723,  4724,  4725,  4726,  4727,  4728,
+     4729,  4730,  4731,  4732,  4733,  4734,  4735,  4736,
+     4737,  4738,  4739,  4740,  4741,  4742,  4743,  4744,
+     4745,  4746,  4747,  4748,  4749,  4750,  4751,  4752,
+     4753,  4754,  4755,  4756,  4757,  4758,  4759,  4760,
+     4761,  4762,  4763,  4764,  4765,  4766,  4767,  4768,
+     4769,  4770,  4771,  4772,  4773,  4774,  4775,  4776,
+     4777,  4778,    -1,    -1,    -1,    -1,    -1,    -1,
+    37547, 37549, 37551, 37553, 37556, 37559, 37561,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1, 37563, 37565, 37567, 37569, 37571,
+       -1,    -1,    -1,    -1,    -1,  4805,    -1,  4807,
+    37577, 37578, 37579, 37580, 37581, 37582, 37583, 37584,
+    37585, 37586,  4819,  4821,  4823,  4825,  4827,  4829,
+     4831,  4833,  4835,  4837,  4839,  4841,  4843,    -1,
+     4845,  4847,  4849,  4851,  4853,    -1,  4855,    -1,
+     4857,  4859,    -1,  4861,  4863,    -1,  4865,  4867,
+     4869,  4871,  4873,  4875,  4877,  4879,  4881, 37651,
+    37653, 37654, 37655, 37656, 37657, 37658, 37659, 37660,
+    37661, 37662, 37663, 37664, 37665, 37666, 37667, 37668,
+    37669, 37670, 37671, 37672, 37673, 37674, 37675, 37676,
+    37677, 37678, 37679, 37680, 37681, 37682, 37683, 37684,
+    37685, 37686, 37687, 37688, 37689, 37690, 37691, 37692,
+    37693, 37694, 37695, 37696, 37697, 37698, 37699, 37700,
+    37701, 37702, 37703, 37704, 37705, 37706, 37707, 37708,
+    37709, 37710, 37711, 37712, 37713, 37714, 37715, 37716,
+    37717, 37718, 37719, 37720, 37721, 37722, 37723, 37724,
+    37725, 37726, 37727, 37728, 37729, 37730, 37731, 37732,
+    37733, 37734, 37735, 37736, 37737, 37738, 37739, 37740,
+    37741, 37742, 37743, 37744, 37745, 37746, 37747, 37748,
+    37749, 37750,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    38453, 38456, 38459, 38462, 38465, 38468, 38471, 38474,
-    38477, 38480, 38483, 38486, 38489, 38492, 38495, 38498,
-    38501, 38504, 38507, 38510, 38513, 38516, 38519, 38522,
-    38525, 38528, 38531, 38534, 38537, 38540, 38543, 38546,
-    38549, 38552, 38555, 38558, 38561, 38564, 38567, 38570,
-    38573, 38576, 38579, 38582, 38585, 38588, 38591, 38594,
-    38597, 38600, 38603, 38606, 38609, 38612, 38615, 38618,
-    38621, 38624, 38627, 38630, 38633, 38636, 38639, 38642,
-       -1,    -1, 38645, 38648, 38651, 38654, 38657, 38660,
-    38663, 38666, 38669, 38672, 38675, 38678, 38681, 38684,
-    38687, 38690, 38693, 38696, 38699, 38702, 38705, 38708,
-    38711, 38714, 38717, 38720, 38723, 38726, 38729, 38732,
-    38735, 38738, 38741, 38744, 38747, 38750, 38753, 38756,
-    38759, 38762, 38765, 38768, 38771, 38774, 38777, 38780,
-    38783, 38786, 38789, 38792, 38795, 38798, 38801, 38804,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1, 37751, 37752, 37753, 37754, 37755,
+    37756, 37757, 37758, 37759, 37760, 37761, 37762, 37763,
+    37764, 37765, 37766, 37767, 37768, 37769, 37770, 37771,
+    37772, 37773, 37774, 37776, 37778, 37780, 37782, 37784,
+    37786, 37788, 37790, 37792, 37794, 37796, 37798, 37800,
+    37802, 37804, 37806, 37808, 37810, 37811, 37812, 37813,
+    37814, 37816, 37818, 37820, 37822, 37824, 37826, 37828,
+    37830, 37832, 37834, 37836, 37838, 37840, 37842, 37844,
+    37846, 37848, 37850, 37852, 37854, 37856, 37858, 37860,
+    37862, 37864, 37866, 37868, 37870, 37872, 37874, 37876,
+    37878, 37880, 37882, 37884, 37886, 37888, 37890, 37892,
+    37894, 37896, 37898, 37900, 37902, 37904, 37906, 37908,
+    37910, 37912, 37914, 37916, 37918, 37920, 37922, 37924,
+    37926, 37928, 37930, 37932, 37934, 37936, 37938, 37940,
+    37942, 37944, 37946, 37948, 37950, 37952, 37954, 37956,
+    37958, 37960, 37962, 37964, 37966, 37968, 37970, 37972,
+    37974, 37976, 37978, 37980, 37982, 37984, 37986, 37988,
+    37990, 37992, 37994, 37996, 37998, 38000, 38002, 38005,
+    38008, 38011, 38014, 38017, 38020, 38022, 38024, 38026,
+    38028, 38030, 38032, 38034, 38036, 38038, 38040, 38042,
+    38044, 38046, 38048, 38050, 38052, 38054, 38056, 38058,
+    38060, 38062, 38064, 38066, 38068, 38070, 38072, 38074,
+    38076, 38078, 38080, 38082, 38084, 38086, 38088, 38090,
+    38092, 38094, 38096, 38098, 38100, 38102, 38104, 38106,
+    38108, 38110, 38112, 38114, 38116, 38118, 38120, 38122,
+    38124, 38126, 38128, 38130, 38132, 38134, 38136, 38138,
+    38140, 38142, 38144, 38146, 38148, 38150, 38152, 38154,
+    38156, 38158, 38160, 38162, 38164, 38166, 38168, 38170,
+    38172, 38174, 38176, 38178, 38180, 38182, 38184, 38186,
+    38188, 38190, 38192, 38194, 38196, 38198, 38200, 38202,
+    38204, 38206, 38208, 38210, 38212, 38214, 38216, 38218,
+    38220, 38222, 38224, 38226, 38228, 38230, 38232, 38234,
+    38236, 38238, 38240, 38242, 38244, 38246, 38248, 38250,
+    38252, 38254, 38256, 38258, 38260, 38262, 38264, 38266,
+    38268, 38270, 38272, 38274, 38276, 38278, 38280, 38282,
+    38284, 38286, 38288, 38290, 38292, 38294, 38296, 38298,
+    38300, 38302, 38304, 38307, 38310, 38313, 38315, 38317,
+    38319, 38321, 38323, 38325, 38327, 38329, 38331, 38333,
+    38335, 38337, 38339, 38341, 38343, 38345, 38347, 38349,
+    38351, 38353, 38355, 38357, 38359, 38361, 38363, 38365,
+    38367, 38369, 38371, 38373, 38375, 38377, 38379, 38381,
+    38383, 38385, 38387, 38389, 38391, 38393, 38395, 38397,
+    38399, 38401, 38403, 38405, 38407, 38409, 38411, 38413,
+    38415, 38417, 38419, 38421, 38423, 38425, 38427, 38429,
+    38431, 38433, 38435, 38437, 38439, 38441, 38443, 38445,
+    38447, 38449, 38451, 38453, 38455, 38457,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    38459, 38462, 38465, 38468, 38471, 38474, 38477, 38480,
+    38483, 38486, 38489, 38492, 38495, 38498, 38501, 38504,
+    38507, 38510, 38513, 38516, 38519, 38522, 38525, 38528,
+    38531, 38534, 38537, 38540, 38543, 38546, 38549, 38552,
+    38555, 38558, 38561, 38564, 38567, 38570, 38573, 38576,
+    38579, 38582, 38585, 38588, 38591, 38594, 38597, 38600,
+    38603, 38606, 38609, 38612, 38615, 38618, 38621, 38624,
+    38627, 38630, 38633, 38636, 38639, 38642, 38645, 38648,
+       -1,    -1, 38651, 38654, 38657, 38660, 38663, 38666,
+    38669, 38672, 38675, 38678, 38681, 38684, 38687, 38690,
+    38693, 38696, 38699, 38702, 38705, 38708, 38711, 38714,
+    38717, 38720, 38723, 38726, 38729, 38732, 38735, 38738,
+    38741, 38744, 38747, 38750, 38753, 38756, 38759, 38762,
+    38765, 38768, 38771, 38774, 38777, 38780, 38783, 38786,
+    38789, 38792, 38795, 38798, 38801, 38804, 38807, 38810,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    38807, 38810, 38813, 38817, 38821, 38825, 38829, 38833,
-    38837, 38841, 38844, 38862, 38870,    -1,    -1,    -1,
+    38813, 38816, 38819, 38823, 38827, 38831, 38835, 38839,
+    38843, 38847, 38850, 38868, 38876,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    38874, 38875, 38876, 38877, 38878, 38879, 38880, 38881,
-    38882, 38883,    -1,    -1,    -1,    -1,    -1,    -1,
+    38880, 38881, 38882, 38883, 38884, 38885, 38886, 38887,
+    38888, 38889,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    38884, 38885, 38886, 38887, 38888, 38889, 38890, 38891,
-    38892, 38893, 38894, 38895, 38896, 38897, 38898, 38899,
-    38900, 38901, 38902, 38903, 38904,    -1,    -1, 38905,
-    38906, 38907, 38908, 38909, 38910, 38911, 38912, 38913,
-    38914, 38915, 38916,    -1, 38917, 38918, 38919, 38920,
-    38921, 38922, 38923, 38924, 38925, 38926, 38927, 38928,
-    38929, 38930, 38931, 38932, 38933, 38934, 38935,    -1,
-    38936, 38937, 38938, 38939,    -1,    -1,    -1,    -1,
-    38940, 38942, 38944,    -1, 38946,    -1, 38948, 38950,
-    38952, 38954, 38956, 38958, 38960, 38962, 38964, 38966,
-    38968, 38969, 38970, 38971, 38972, 38973, 38974, 38975,
-    38976, 38977, 38978, 38979, 38980, 38981, 38982, 38983,
-    38984, 38985, 38986, 38987, 38988, 38989, 38990, 38991,
-    38992, 38993, 38994, 38995, 38996, 38997, 38998, 38999,
-    39000, 39001, 39002, 39003, 39004, 39005, 39006, 39007,
-    39008, 39009, 39010, 39011, 39012, 39013, 39014, 39015,
-    39016, 39017, 39018, 39019, 39020, 39021, 39022, 39023,
-    39024, 39025, 39026, 39027, 39028, 39029, 39030, 39031,
-    39032, 39033, 39034, 39035, 39036, 39037, 39038, 39039,
-    39040, 39041, 39042, 39043, 39044, 39045, 39046, 39047,
-    39048, 39049, 39050, 39051, 39052, 39053, 39054, 39055,
-    39056, 39057, 39058, 39059, 39060, 39061, 39062, 39063,
-    39064, 39065, 39066, 39067, 39068, 39069, 39070, 39071,
-    39072, 39073, 39074, 39075, 39076, 39077, 39078, 39079,
-    39080, 39081, 39082, 39083, 39084, 39085, 39087, 39089,
-    39091, 39093, 39095, 39097, 39099,    -1,    -1,    -1,
-       -1, 39101, 39102, 39103, 39104, 39105, 39106, 39107,
-    39108, 39109, 39110, 39111, 39112, 39113, 39114, 39115,
-    39116, 39117, 39118, 39119, 39120, 39121, 39122, 39123,
-    39124, 39125, 39126, 39127, 39128, 39129, 39130, 39131,
-    39132, 39133, 39134, 39135, 39136, 39137, 39138, 39139,
-    39140, 39141, 39142, 39143, 39144, 39145, 39146, 39147,
-    39148, 39149, 39150, 39151, 39152, 39153, 39154, 39155,
-    39156, 39157, 39158, 39159, 39160, 39161, 39162, 39163,
-    39164, 39165, 39166, 39167, 39168, 39169, 39170, 39171,
-    39172, 39173, 39174, 39175, 39176, 39177, 39178, 39179,
-    39180, 39181, 39182, 39183, 39184, 39185, 39186, 39187,
-    39188, 39189, 39190, 39191, 39192, 39193, 39194, 39195,
-    39196, 39197, 39198, 39199, 39200, 39201, 39202, 39203,
-    39204, 39205, 39206, 39207, 39208, 39209, 39210, 39211,
-    39212, 39213, 39214, 39215, 39216, 39217, 39218, 39219,
-    39220, 39221, 39222, 39223, 39224, 39225, 39226, 39227,
-    39228, 39229, 39230, 39231, 39232, 39233, 39234, 39235,
-    39236, 39237, 39238, 39239, 39240, 39241, 39242, 39243,
-    39244, 39245, 39246, 39247, 39248, 39249, 39250, 39251,
-    39252, 39253, 39254, 39255, 39256, 39257, 39258, 39259,
-    39260, 39261, 39262, 39263, 39264, 39265, 39266, 39267,
-    39268, 39269, 39270, 39271, 39272, 39273, 39274, 39275,
-    39276, 39277, 39278, 39279, 39280, 39281, 39282, 39283,
-    39284, 39285, 39286, 39287, 39288, 39289, 39290,    -1,
-       -1,    -1, 39291, 39292, 39293, 39294, 39295, 39296,
+    38890, 38891, 38892, 38893, 38894, 38895, 38896, 38897,
+    38898, 38899, 38900, 38901, 38902, 38903, 38904, 38905,
+    38906, 38907, 38908, 38909, 38910,    -1,    -1, 38911,
+    38912, 38913, 38914, 38915, 38916, 38917, 38918, 38919,
+    38920, 38921, 38922,    -1, 38923, 38924, 38925, 38926,
+    38927, 38928, 38929, 38930, 38931, 38932, 38933, 38934,
+    38935, 38936, 38937, 38938, 38939, 38940, 38941,    -1,
+    38942, 38943, 38944, 38945,    -1,    -1,    -1,    -1,
+    38946, 38948, 38950,    -1, 38952,    -1, 38954, 38956,
+    38958, 38960, 38962, 38964, 38966, 38968, 38970, 38972,
+    38974, 38975, 38976, 38977, 38978, 38979, 38980, 38981,
+    38982, 38983, 38984, 38985, 38986, 38987, 38988, 38989,
+    38990, 38991, 38992, 38993, 38994, 38995, 38996, 38997,
+    38998, 38999, 39000, 39001, 39002, 39003, 39004, 39005,
+    39006, 39007, 39008, 39009, 39010, 39011, 39012, 39013,
+    39014, 39015, 39016, 39017, 39018, 39019, 39020, 39021,
+    39022, 39023, 39024, 39025, 39026, 39027, 39028, 39029,
+    39030, 39031, 39032, 39033, 39034, 39035, 39036, 39037,
+    39038, 39039, 39040, 39041, 39042, 39043, 39044, 39045,
+    39046, 39047, 39048, 39049, 39050, 39051, 39052, 39053,
+    39054, 39055, 39056, 39057, 39058, 39059, 39060, 39061,
+    39062, 39063, 39064, 39065, 39066, 39067, 39068, 39069,
+    39070, 39071, 39072, 39073, 39074, 39075, 39076, 39077,
+    39078, 39079, 39080, 39081, 39082, 39083, 39084, 39085,
+    39086, 39087, 39088, 39089, 39090, 39091, 39093, 39095,
+    39097, 39099, 39101, 39103, 39105,    -1,    -1,    -1,
+       -1, 39107, 39108, 39109, 39110, 39111, 39112, 39113,
+    39114, 39115, 39116, 39117, 39118, 39119, 39120, 39121,
+    39122, 39123, 39124, 39125, 39126, 39127, 39128, 39129,
+    39130, 39131, 39132, 39133, 39134, 39135, 39136, 39137,
+    39138, 39139, 39140, 39141, 39142, 39143, 39144, 39145,
+    39146, 39147, 39148, 39149, 39150, 39151, 39152, 39153,
+    39154, 39155, 39156, 39157, 39158, 39159, 39160, 39161,
+    39162, 39163, 39164, 39165, 39166, 39167, 39168, 39169,
+    39170, 39171, 39172, 39173, 39174, 39175, 39176, 39177,
+    39178, 39179, 39180, 39181, 39182, 39183, 39184, 39185,
+    39186, 39187, 39188, 39189, 39190, 39191, 39192, 39193,
+    39194, 39195, 39196, 39197, 39198, 39199, 39200, 39201,
+    39202, 39203, 39204, 39205, 39206, 39207, 39208, 39209,
+    39210, 39211, 39212, 39213, 39214, 39215, 39216, 39217,
+    39218, 39219, 39220, 39221, 39222, 39223, 39224, 39225,
+    39226, 39227, 39228, 39229, 39230, 39231, 39232, 39233,
+    39234, 39235, 39236, 39237, 39238, 39239, 39240, 39241,
+    39242, 39243, 39244, 39245, 39246, 39247, 39248, 39249,
+    39250, 39251, 39252, 39253, 39254, 39255, 39256, 39257,
+    39258, 39259, 39260, 39261, 39262, 39263, 39264, 39265,
+    39266, 39267, 39268, 39269, 39270, 39271, 39272, 39273,
+    39274, 39275, 39276, 39277, 39278, 39279, 39280, 39281,
+    39282, 39283, 39284, 39285, 39286, 39287, 39288, 39289,
+    39290, 39291, 39292, 39293, 39294, 39295, 39296,    -1,
        -1,    -1, 39297, 39298, 39299, 39300, 39301, 39302,
        -1,    -1, 39303, 39304, 39305, 39306, 39307, 39308,
-       -1,    -1, 39309, 39310, 39311,    -1,    -1,    -1,
-    39312, 39313, 39314, 39315, 39316, 39317, 39318,    -1,
-    39319, 39320, 39321, 39322, 39323, 39324, 39325,    -1,
+       -1,    -1, 39309, 39310, 39311, 39312, 39313, 39314,
+       -1,    -1, 39315, 39316, 39317,    -1,    -1,    -1,
+    39318, 39319, 39320, 39321, 39322, 39323, 39324,    -1,
+    39325, 39326, 39327, 39328, 39329, 39330, 39331,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,  6558,    -1,  6560,    -1,    -1,    -1,
+       -1,    -1,  6564,    -1,  6566,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,  6562,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,  6568,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,  6564,  6566,
+       -1,    -1,    -1,    -1,    -1,    -1,  6570,  6572,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,  6574,  6576,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,  6568,  6570,
-     6572,  6574,  6576,  6578,  6580,    -1,    -1,    -1,
+       -1,    -1,    -1,  6578,  6580,    -1,  6582,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,  6584,  6586,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,  6588,  6590,
+     6592,  6594,  6596,  6598,  6600,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,  6582,  6584,  6586,  6588,  6590,
-     6592,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,  6602,  6604,  6606,  6608,  6610,
+     6612,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    39362, 39363, 39364, 39365, 39366, 39367, 39368, 39369,
-    39370, 39371, 39372, 39373, 39374, 39375, 39376, 39377,
-    39378, 39379, 39380, 39381, 39382, 39383, 39384, 39385,
-    39386, 39387, 39388, 39389, 39390, 39391, 39392, 39393,
-    39394, 39395, 39396, 39397, 39398, 39399, 39400, 39401,
-    39402, 39403, 39404, 39405, 39406, 39407, 39408, 39409,
-    39410, 39411, 39412, 39413, 39414, 39415, 39416, 39417,
-    39418, 39419, 39420, 39421, 39422, 39423, 39424, 39425,
-    39426, 39427, 39428, 39429, 39430, 39431, 39432, 39433,
-    39434, 39435, 39436, 39437, 39438, 39439, 39440, 39441,
-    39442, 39443, 39444, 39445, 39446,    -1, 39447, 39448,
-    39449, 39450, 39451, 39452, 39453, 39454, 39455, 39456,
-    39457, 39458, 39459, 39460, 39461, 39462, 39463, 39464,
-    39465, 39466, 39467, 39468, 39469, 39470, 39471, 39472,
-    39473, 39474, 39475, 39476, 39477, 39478, 39479, 39480,
-    39481, 39482, 39483, 39484, 39485, 39486, 39487, 39488,
-    39489, 39490, 39491, 39492, 39493, 39494, 39495, 39496,
-    39497, 39498, 39499, 39500, 39501, 39502, 39503, 39504,
-    39505, 39506, 39507, 39508, 39509, 39510, 39511, 39512,
-    39513, 39514, 39515, 39516, 39517,    -1, 39518, 39519,
-       -1,    -1, 39520,    -1,    -1, 39521, 39522,    -1,
-       -1, 39523, 39524, 39525, 39526,    -1, 39527, 39528,
-    39529, 39530, 39531, 39532, 39533, 39534, 39535, 39536,
-    39537, 39538,    -1, 39539,    -1, 39540, 39541, 39542,
-    39543, 39544, 39545, 39546,    -1, 39547, 39548, 39549,
-    39550, 39551, 39552, 39553, 39554, 39555, 39556, 39557,
-    39558, 39559, 39560, 39561, 39562, 39563, 39564, 39565,
-    39566, 39567, 39568, 39569, 39570, 39571, 39572, 39573,
-    39574, 39575, 39576, 39577, 39578, 39579, 39580, 39581,
-    39582, 39583, 39584, 39585, 39586, 39587, 39588, 39589,
-    39590, 39591, 39592, 39593, 39594, 39595, 39596, 39597,
-    39598, 39599, 39600, 39601, 39602, 39603, 39604, 39605,
-    39606, 39607, 39608, 39609, 39610, 39611,    -1, 39612,
-    39613, 39614, 39615,    -1,    -1, 39616, 39617, 39618,
-    39619, 39620, 39621, 39622, 39623,    -1, 39624, 39625,
-    39626, 39627, 39628, 39629, 39630,    -1, 39631, 39632,
-    39633, 39634, 39635, 39636, 39637, 39638, 39639, 39640,
-    39641, 39642, 39643, 39644, 39645, 39646, 39647, 39648,
-    39649, 39650, 39651, 39652, 39653, 39654, 39655, 39656,
-    39657, 39658,    -1, 39659, 39660, 39661, 39662,    -1,
-    39663, 39664, 39665, 39666, 39667,    -1, 39668,    -1,
-       -1,    -1, 39669, 39670, 39671, 39672, 39673, 39674,
-    39675,    -1, 39676, 39677, 39678, 39679, 39680, 39681,
-    39682, 39683, 39684, 39685, 39686, 39687, 39688, 39689,
-    39690, 39691, 39692, 39693, 39694, 39695, 39696, 39697,
-    39698, 39699, 39700, 39701, 39702, 39703, 39704, 39705,
-    39706, 39707, 39708, 39709, 39710, 39711, 39712, 39713,
-    39714, 39715, 39716, 39717, 39718, 39719, 39720, 39721,
-    39722, 39723, 39724, 39725, 39726, 39727, 39728, 39729,
-    39730, 39731, 39732, 39733, 39734, 39735, 39736, 39737,
-    39738, 39739, 39740, 39741, 39742, 39743, 39744, 39745,
-    39746, 39747, 39748, 39749, 39750, 39751, 39752, 39753,
-    39754, 39755, 39756, 39757, 39758, 39759, 39760, 39761,
-    39762, 39763, 39764, 39765, 39766, 39767, 39768, 39769,
-    39770, 39771, 39772, 39773, 39774, 39775, 39776, 39777,
-    39778, 39779, 39780, 39781, 39782, 39783, 39784, 39785,
-    39786, 39787, 39788, 39789, 39790, 39791, 39792, 39793,
-    39794, 39795, 39796, 39797, 39798, 39799, 39800, 39801,
-    39802, 39803, 39804, 39805, 39806, 39807, 39808, 39809,
-    39810, 39811, 39812, 39813, 39814, 39815, 39816, 39817,
-    39818, 39819, 39820, 39821, 39822, 39823, 39824, 39825,
-    39826, 39827, 39828, 39829, 39830, 39831, 39832, 39833,
-    39834, 39835, 39836, 39837, 39838, 39839, 39840, 39841,
-    39842, 39843, 39844, 39845, 39846, 39847, 39848, 39849,
-    39850, 39851, 39852, 39853, 39854, 39855, 39856, 39857,
-    39858, 39859, 39860, 39861, 39862, 39863, 39864, 39865,
-    39866, 39867, 39868, 39869, 39870, 39871, 39872, 39873,
-    39874, 39875, 39876, 39877, 39878, 39879, 39880, 39881,
-    39882, 39883, 39884, 39885, 39886, 39887, 39888, 39889,
-    39890, 39891, 39892, 39893, 39894, 39895, 39896, 39897,
-    39898, 39899, 39900, 39901, 39902, 39903, 39904, 39905,
-    39906, 39907, 39908, 39909, 39910, 39911, 39912, 39913,
-    39914, 39915, 39916, 39917, 39918, 39919, 39920, 39921,
-    39922, 39923, 39924, 39925, 39926, 39927, 39928, 39929,
-    39930, 39931, 39932, 39933, 39934, 39935, 39936, 39937,
-    39938, 39939, 39940, 39941, 39942, 39943, 39944, 39945,
-    39946, 39947, 39948, 39949, 39950, 39951, 39952, 39953,
-    39954, 39955, 39956, 39957, 39958, 39959, 39960, 39961,
-    39962, 39963, 39964, 39965, 39966, 39967, 39968, 39969,
-    39970, 39971, 39972, 39973, 39974, 39975, 39976, 39977,
-    39978, 39979, 39980, 39981, 39982, 39983, 39984, 39985,
-    39986, 39987, 39988, 39989, 39990, 39991, 39992, 39993,
-    39994, 39995, 39996, 39997, 39998, 39999, 40000, 40001,
-    40002, 40003, 40004, 40005, 40006, 40007, 40008, 40009,
-    40010, 40011, 40012, 40013, 40014, 40015,    -1,    -1,
-    40016, 40017, 40018, 40019, 40020, 40021, 40022, 40023,
-    40024, 40025, 40026, 40027, 40028, 40029, 40030, 40031,
-    40032, 40033, 40034, 40035, 40036, 40037, 40038, 40039,
-    40040, 40041, 40042, 40043, 40044, 40045, 40046, 40047,
-    40048, 40049, 40050, 40051, 40052, 40053, 40054, 40055,
-    40056, 40057, 40058, 40059, 40060, 40061, 40062, 40063,
-    40064, 40065, 40066, 40067, 40068, 40069, 40070, 40071,
-    40072, 40073, 40074, 40075, 40076, 40077, 40078, 40079,
-    40080, 40081, 40082, 40083, 40084, 40085, 40086, 40087,
-    40088, 40089, 40090, 40091, 40092, 40093, 40094, 40095,
-    40096, 40097, 40098, 40099, 40100, 40101, 40102, 40103,
-    40104, 40105, 40106, 40107, 40108, 40109, 40110, 40111,
-    40112, 40113, 40114, 40115, 40116, 40117, 40118, 40119,
-    40120, 40121, 40122, 40123, 40124, 40125, 40126, 40127,
-    40128, 40129, 40130, 40131, 40132, 40133, 40134, 40135,
-    40136, 40137, 40138, 40139, 40140, 40141, 40142, 40143,
-    40144, 40145, 40146, 40147, 40148, 40149, 40150, 40151,
-    40152, 40153, 40154, 40155, 40156, 40157, 40158, 40159,
-    40160, 40161, 40162, 40163, 40164, 40165, 40166, 40167,
-    40168, 40169, 40170, 40171, 40172, 40173, 40174, 40175,
-    40176, 40177, 40178, 40179, 40180, 40181, 40182, 40183,
-    40184, 40185, 40186, 40187, 40188, 40189, 40190, 40191,
-    40192, 40193, 40194, 40195, 40196, 40197, 40198, 40199,
-    40200, 40201, 40202, 40203, 40204, 40205, 40206, 40207,
-    40208, 40209, 40210, 40211, 40212, 40213, 40214, 40215,
-    40216, 40217, 40218, 40219, 40220, 40221, 40222, 40223,
-    40224, 40225, 40226, 40227, 40228, 40229, 40230, 40231,
-    40232, 40233, 40234, 40235, 40236, 40237, 40238, 40239,
-    40240, 40241, 40242, 40243, 40244, 40245, 40246, 40247,
-    40248, 40249, 40250, 40251, 40252, 40253, 40254, 40255,
-    40256, 40257, 40258, 40259, 40260, 40261, 40262, 40263,
-    40264, 40265, 40266, 40267, 40268, 40269, 40270, 40271,
-    40272, 40273, 40274, 40275, 40276, 40277, 40278, 40279,
-    40280, 40281, 40282, 40283, 40284, 40285, 40286, 40287,
-    40288, 40289, 40290, 40291, 40292, 40293, 40294, 40295,
-    40296, 40297, 40298, 40299, 40300, 40301, 40302, 40303,
-    40304, 40305, 40306, 40307,    -1,    -1, 40308, 40309,
-    40310, 40311, 40312, 40313, 40314, 40315, 40316, 40317,
-    40318, 40319, 40320, 40321, 40322, 40323, 40324, 40325,
-    40326, 40327, 40328, 40329, 40330, 40331, 40332, 40333,
-    40334, 40335, 40336, 40337, 40338, 40339, 40340, 40341,
-    40342, 40343, 40344, 40345, 40346, 40347, 40348, 40349,
-    40350, 40351, 40352, 40353, 40354, 40355, 40356, 40357,
-    40358, 40359, 40360, 40361,    -1, 40362, 40363, 40364,
-    40365, 40366, 40367, 40368, 40369, 40370, 40371, 40372,
-    40373, 40374, 40375, 40376, 40377, 40378, 40379, 40380,
-    40381, 40382, 40383, 40384, 40385, 40386, 40387, 40388,
-       -1, 40389, 40390,    -1, 40391,    -1,    -1, 40392,
-       -1, 40393, 40394, 40395, 40396, 40397, 40398, 40399,
-    40400, 40401, 40402,    -1, 40403, 40404, 40405, 40406,
-       -1, 40407,    -1, 40408,    -1,    -1,    -1,    -1,
-       -1,    -1, 40409,    -1,    -1,    -1,    -1, 40410,
-       -1, 40411,    -1, 40412,    -1, 40413, 40414, 40415,
-       -1, 40416, 40417,    -1, 40418,    -1,    -1, 40419,
-       -1, 40420,    -1, 40421,    -1, 40422,    -1, 40423,
-       -1, 40424, 40425,    -1, 40426,    -1,    -1, 40427,
-    40428, 40429, 40430,    -1, 40431, 40432, 40433, 40434,
-    40435, 40436, 40437,    -1, 40438, 40439, 40440, 40441,
-       -1, 40442, 40443, 40444, 40445,    -1, 40446,    -1,
-    40447, 40448, 40449, 40450, 40451, 40452, 40453, 40454,
-    40455, 40456,    -1, 40457, 40458, 40459, 40460, 40461,
-    40462, 40463, 40464, 40465, 40466, 40467, 40468, 40469,
-    40470, 40471, 40472, 40473,    -1,    -1,    -1,    -1,
-       -1, 40474, 40475, 40476,    -1, 40477, 40478, 40479,
-    40480, 40481,    -1, 40482, 40483, 40484, 40485, 40486,
-    40487, 40488, 40489, 40490, 40491, 40492, 40493, 40494,
-    40495, 40496, 40497, 40498,    -1,    -1,    -1,    -1,
-    40499, 40501, 40503, 40505, 40507, 40509, 40511, 40513,
-    40515, 40517, 40519,    -1,    -1,    -1,    -1,    -1,
-    40521, 40524, 40527, 40530, 40533, 40536, 40539, 40542,
-    40545, 40548, 40551, 40554, 40557, 40560, 40563, 40566,
-    40569, 40572, 40575, 40578, 40581, 40584, 40587, 40590,
-    40593, 40596, 40599, 40602, 40603, 40604, 40606,    -1,
-    40608, 40609, 40610, 40611, 40612, 40613, 40614, 40615,
-    40616, 40617, 40618, 40619, 40620, 40621, 40622, 40623,
-    40624, 40625, 40626, 40627, 40628, 40629, 40630, 40631,
-    40632, 40633, 40634, 40636, 40638, 40640, 40642, 40645,
+    39382, 39383, 39384, 39385, 39386, 39387, 39388, 39389,
+    39390, 39391, 39392, 39393, 39394, 39395, 39396, 39397,
+    39398, 39399, 39400, 39401, 39402, 39403, 39404, 39405,
+    39406, 39407, 39408, 39409, 39410, 39411, 39412, 39413,
+    39414, 39415, 39416, 39417, 39418, 39419, 39420, 39421,
+    39422, 39423, 39424, 39425, 39426, 39427, 39428, 39429,
+    39430, 39431, 39432, 39433, 39434, 39435, 39436, 39437,
+    39438, 39439, 39440, 39441, 39442, 39443, 39444, 39445,
+    39446, 39447, 39448, 39449, 39450, 39451, 39452, 39453,
+    39454, 39455, 39456, 39457, 39458, 39459, 39460, 39461,
+    39462, 39463, 39464, 39465, 39466,    -1, 39467, 39468,
+    39469, 39470, 39471, 39472, 39473, 39474, 39475, 39476,
+    39477, 39478, 39479, 39480, 39481, 39482, 39483, 39484,
+    39485, 39486, 39487, 39488, 39489, 39490, 39491, 39492,
+    39493, 39494, 39495, 39496, 39497, 39498, 39499, 39500,
+    39501, 39502, 39503, 39504, 39505, 39506, 39507, 39508,
+    39509, 39510, 39511, 39512, 39513, 39514, 39515, 39516,
+    39517, 39518, 39519, 39520, 39521, 39522, 39523, 39524,
+    39525, 39526, 39527, 39528, 39529, 39530, 39531, 39532,
+    39533, 39534, 39535, 39536, 39537,    -1, 39538, 39539,
+       -1,    -1, 39540,    -1,    -1, 39541, 39542,    -1,
+       -1, 39543, 39544, 39545, 39546,    -1, 39547, 39548,
+    39549, 39550, 39551, 39552, 39553, 39554, 39555, 39556,
+    39557, 39558,    -1, 39559,    -1, 39560, 39561, 39562,
+    39563, 39564, 39565, 39566,    -1, 39567, 39568, 39569,
+    39570, 39571, 39572, 39573, 39574, 39575, 39576, 39577,
+    39578, 39579, 39580, 39581, 39582, 39583, 39584, 39585,
+    39586, 39587, 39588, 39589, 39590, 39591, 39592, 39593,
+    39594, 39595, 39596, 39597, 39598, 39599, 39600, 39601,
+    39602, 39603, 39604, 39605, 39606, 39607, 39608, 39609,
+    39610, 39611, 39612, 39613, 39614, 39615, 39616, 39617,
+    39618, 39619, 39620, 39621, 39622, 39623, 39624, 39625,
+    39626, 39627, 39628, 39629, 39630, 39631,    -1, 39632,
+    39633, 39634, 39635,    -1,    -1, 39636, 39637, 39638,
+    39639, 39640, 39641, 39642, 39643,    -1, 39644, 39645,
+    39646, 39647, 39648, 39649, 39650,    -1, 39651, 39652,
+    39653, 39654, 39655, 39656, 39657, 39658, 39659, 39660,
+    39661, 39662, 39663, 39664, 39665, 39666, 39667, 39668,
+    39669, 39670, 39671, 39672, 39673, 39674, 39675, 39676,
+    39677, 39678,    -1, 39679, 39680, 39681, 39682,    -1,
+    39683, 39684, 39685, 39686, 39687,    -1, 39688,    -1,
+       -1,    -1, 39689, 39690, 39691, 39692, 39693, 39694,
+    39695,    -1, 39696, 39697, 39698, 39699, 39700, 39701,
+    39702, 39703, 39704, 39705, 39706, 39707, 39708, 39709,
+    39710, 39711, 39712, 39713, 39714, 39715, 39716, 39717,
+    39718, 39719, 39720, 39721, 39722, 39723, 39724, 39725,
+    39726, 39727, 39728, 39729, 39730, 39731, 39732, 39733,
+    39734, 39735, 39736, 39737, 39738, 39739, 39740, 39741,
+    39742, 39743, 39744, 39745, 39746, 39747, 39748, 39749,
+    39750, 39751, 39752, 39753, 39754, 39755, 39756, 39757,
+    39758, 39759, 39760, 39761, 39762, 39763, 39764, 39765,
+    39766, 39767, 39768, 39769, 39770, 39771, 39772, 39773,
+    39774, 39775, 39776, 39777, 39778, 39779, 39780, 39781,
+    39782, 39783, 39784, 39785, 39786, 39787, 39788, 39789,
+    39790, 39791, 39792, 39793, 39794, 39795, 39796, 39797,
+    39798, 39799, 39800, 39801, 39802, 39803, 39804, 39805,
+    39806, 39807, 39808, 39809, 39810, 39811, 39812, 39813,
+    39814, 39815, 39816, 39817, 39818, 39819, 39820, 39821,
+    39822, 39823, 39824, 39825, 39826, 39827, 39828, 39829,
+    39830, 39831, 39832, 39833, 39834, 39835, 39836, 39837,
+    39838, 39839, 39840, 39841, 39842, 39843, 39844, 39845,
+    39846, 39847, 39848, 39849, 39850, 39851, 39852, 39853,
+    39854, 39855, 39856, 39857, 39858, 39859, 39860, 39861,
+    39862, 39863, 39864, 39865, 39866, 39867, 39868, 39869,
+    39870, 39871, 39872, 39873, 39874, 39875, 39876, 39877,
+    39878, 39879, 39880, 39881, 39882, 39883, 39884, 39885,
+    39886, 39887, 39888, 39889, 39890, 39891, 39892, 39893,
+    39894, 39895, 39896, 39897, 39898, 39899, 39900, 39901,
+    39902, 39903, 39904, 39905, 39906, 39907, 39908, 39909,
+    39910, 39911, 39912, 39913, 39914, 39915, 39916, 39917,
+    39918, 39919, 39920, 39921, 39922, 39923, 39924, 39925,
+    39926, 39927, 39928, 39929, 39930, 39931, 39932, 39933,
+    39934, 39935, 39936, 39937, 39938, 39939, 39940, 39941,
+    39942, 39943, 39944, 39945, 39946, 39947, 39948, 39949,
+    39950, 39951, 39952, 39953, 39954, 39955, 39956, 39957,
+    39958, 39959, 39960, 39961, 39962, 39963, 39964, 39965,
+    39966, 39967, 39968, 39969, 39970, 39971, 39972, 39973,
+    39974, 39975, 39976, 39977, 39978, 39979, 39980, 39981,
+    39982, 39983, 39984, 39985, 39986, 39987, 39988, 39989,
+    39990, 39991, 39992, 39993, 39994, 39995, 39996, 39997,
+    39998, 39999, 40000, 40001, 40002, 40003, 40004, 40005,
+    40006, 40007, 40008, 40009, 40010, 40011, 40012, 40013,
+    40014, 40015, 40016, 40017, 40018, 40019, 40020, 40021,
+    40022, 40023, 40024, 40025, 40026, 40027, 40028, 40029,
+    40030, 40031, 40032, 40033, 40034, 40035,    -1,    -1,
+    40036, 40037, 40038, 40039, 40040, 40041, 40042, 40043,
+    40044, 40045, 40046, 40047, 40048, 40049, 40050, 40051,
+    40052, 40053, 40054, 40055, 40056, 40057, 40058, 40059,
+    40060, 40061, 40062, 40063, 40064, 40065, 40066, 40067,
+    40068, 40069, 40070, 40071, 40072, 40073, 40074, 40075,
+    40076, 40077, 40078, 40079, 40080, 40081, 40082, 40083,
+    40084, 40085, 40086, 40087, 40088, 40089, 40090, 40091,
+    40092, 40093, 40094, 40095, 40096, 40097, 40098, 40099,
+    40100, 40101, 40102, 40103, 40104, 40105, 40106, 40107,
+    40108, 40109, 40110, 40111, 40112, 40113, 40114, 40115,
+    40116, 40117, 40118, 40119, 40120, 40121, 40122, 40123,
+    40124, 40125, 40126, 40127, 40128, 40129, 40130, 40131,
+    40132, 40133, 40134, 40135, 40136, 40137, 40138, 40139,
+    40140, 40141, 40142, 40143, 40144, 40145, 40146, 40147,
+    40148, 40149, 40150, 40151, 40152, 40153, 40154, 40155,
+    40156, 40157, 40158, 40159, 40160, 40161, 40162, 40163,
+    40164, 40165, 40166, 40167, 40168, 40169, 40170, 40171,
+    40172, 40173, 40174, 40175, 40176, 40177, 40178, 40179,
+    40180, 40181, 40182, 40183, 40184, 40185, 40186, 40187,
+    40188, 40189, 40190, 40191, 40192, 40193, 40194, 40195,
+    40196, 40197, 40198, 40199, 40200, 40201, 40202, 40203,
+    40204, 40205, 40206, 40207, 40208, 40209, 40210, 40211,
+    40212, 40213, 40214, 40215, 40216, 40217, 40218, 40219,
+    40220, 40221, 40222, 40223, 40224, 40225, 40226, 40227,
+    40228, 40229, 40230, 40231, 40232, 40233, 40234, 40235,
+    40236, 40237, 40238, 40239, 40240, 40241, 40242, 40243,
+    40244, 40245, 40246, 40247, 40248, 40249, 40250, 40251,
+    40252, 40253, 40254, 40255, 40256, 40257, 40258, 40259,
+    40260, 40261, 40262, 40263, 40264, 40265, 40266, 40267,
+    40268, 40269, 40270, 40271, 40272, 40273, 40274, 40275,
+    40276, 40277, 40278, 40279, 40280, 40281, 40282, 40283,
+    40284, 40285, 40286, 40287, 40288, 40289, 40290, 40291,
+    40292, 40293, 40294, 40295, 40296, 40297, 40298, 40299,
+    40300, 40301, 40302, 40303, 40304, 40305, 40306, 40307,
+    40308, 40309, 40310, 40311, 40312, 40313, 40314, 40315,
+    40316, 40317, 40318, 40319, 40320, 40321, 40322, 40323,
+    40324, 40325, 40326, 40327,    -1,    -1, 40328, 40329,
+    40330, 40331, 40332, 40333, 40334, 40335, 40336, 40337,
+    40338, 40339, 40340, 40341, 40342, 40343, 40344, 40345,
+    40346, 40347, 40348, 40349, 40350, 40351, 40352, 40353,
+    40354, 40355, 40356, 40357, 40358, 40359, 40360, 40361,
+    40362, 40363, 40364, 40365, 40366, 40367, 40368, 40369,
+    40370, 40371, 40372, 40373, 40374, 40375, 40376, 40377,
+    40378, 40379, 40380, 40381,    -1, 40382, 40383, 40384,
+    40385, 40386, 40387, 40388, 40389, 40390, 40391, 40392,
+    40393, 40394, 40395, 40396, 40397, 40398, 40399, 40400,
+    40401, 40402, 40403, 40404, 40405, 40406, 40407, 40408,
+       -1, 40409, 40410,    -1, 40411,    -1,    -1, 40412,
+       -1, 40413, 40414, 40415, 40416, 40417, 40418, 40419,
+    40420, 40421, 40422,    -1, 40423, 40424, 40425, 40426,
+       -1, 40427,    -1, 40428,    -1,    -1,    -1,    -1,
+       -1,    -1, 40429,    -1,    -1,    -1,    -1, 40430,
+       -1, 40431,    -1, 40432,    -1, 40433, 40434, 40435,
+       -1, 40436, 40437,    -1, 40438,    -1,    -1, 40439,
+       -1, 40440,    -1, 40441,    -1, 40442,    -1, 40443,
+       -1, 40444, 40445,    -1, 40446,    -1,    -1, 40447,
+    40448, 40449, 40450,    -1, 40451, 40452, 40453, 40454,
+    40455, 40456, 40457,    -1, 40458, 40459, 40460, 40461,
+       -1, 40462, 40463, 40464, 40465,    -1, 40466,    -1,
+    40467, 40468, 40469, 40470, 40471, 40472, 40473, 40474,
+    40475, 40476,    -1, 40477, 40478, 40479, 40480, 40481,
+    40482, 40483, 40484, 40485, 40486, 40487, 40488, 40489,
+    40490, 40491, 40492, 40493,    -1,    -1,    -1,    -1,
+       -1, 40494, 40495, 40496,    -1, 40497, 40498, 40499,
+    40500, 40501,    -1, 40502, 40503, 40504, 40505, 40506,
+    40507, 40508, 40509, 40510, 40511, 40512, 40513, 40514,
+    40515, 40516, 40517, 40518,    -1,    -1,    -1,    -1,
+    40519, 40521, 40523, 40525, 40527, 40529, 40531, 40533,
+    40535, 40537, 40539,    -1,    -1,    -1,    -1,    -1,
+    40541, 40544, 40547, 40550, 40553, 40556, 40559, 40562,
+    40565, 40568, 40571, 40574, 40577, 40580, 40583, 40586,
+    40589, 40592, 40595, 40598, 40601, 40604, 40607, 40610,
+    40613, 40616, 40619, 40622, 40623, 40624, 40626,    -1,
+    40628, 40629, 40630, 40631, 40632, 40633, 40634, 40635,
+    40636, 40637, 40638, 40639, 40640, 40641, 40642, 40643,
+    40644, 40645, 40646, 40647, 40648, 40649, 40650, 40651,
+    40652, 40653, 40654, 40656, 40658, 40660, 40662, 40665,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1, 40647, 40649,    -1,    -1,    -1,    -1,
+       -1,    -1, 40667, 40669,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    40651,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    40671,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    40653, 40655, 40657,    -1,    -1,    -1,    -1,    -1,
+    40673, 40675, 40677,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    40658, 40659, 40660, 40661, 40662, 40663, 40664, 40665,
-    40666, 40667, 40668, 40669, 40670, 40671, 40672, 40673,
-    40674, 40675, 40676, 40677, 40678, 40679, 40680, 40681,
-    40682, 40683, 40684, 40685, 40686, 40687, 40688, 40689,
-    40690, 40691, 40692, 40693, 40694, 40695, 40696, 40697,
-    40698, 40699, 40700,    -1,    -1,    -1,    -1,    -1,
-    40701, 40704, 40707, 40710, 40713, 40716, 40719, 40722,
-    40725,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    40728, 40729,    -1,    -1,    -1,    -1,    -1,    -1,
+    40678, 40679, 40680, 40681, 40682, 40683, 40684, 40685,
+    40686, 40687, 40688, 40689, 40690, 40691, 40692, 40693,
+    40694, 40695, 40696, 40697, 40698, 40699, 40700, 40701,
+    40702, 40703, 40704, 40705, 40706, 40707, 40708, 40709,
+    40710, 40711, 40712, 40713, 40714, 40715, 40716, 40717,
+    40718, 40719, 40720,    -1,    -1,    -1,    -1,    -1,
+    40721, 40724, 40727, 40730, 40733, 40736, 40739, 40742,
+    40745,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    40748, 40749,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     7962,  7963,  7964,  7965,  7966,  7967,  7968,  7969,
-     7970,  7971,  7972,  7973,  7974,  7975,  7976,  7977,
-     7978,  7979,  7980,  7981,  7982,  7983,  7984,  7985,
-     7986,  7987,  7988,  7989,  7990,  7991,  7992,  7993,
-     7994,  7995,  7996,  7997,  7998,  7999,  8000,  8001,
-     8002,  8003,  8004,  8005,  8006,  8007,  8008,  8009,
-     8010,  8011,  8012,  8013,  8014,  8015,  8016,  8017,
-     8018,  8019,  8020,  8021,  8022,  8023,  8024,  8025,
-     8026,  8027,  8028,  8029,  8030,  8031,  8032,  8033,
-     8034,  8035,  8036,  8037,  8038,  8039,  8040,  8041,
-     8042,  8043,  8044,  8045,  8046,  8047,  8048,  8049,
-     8050,  8051,  8052,  8053,  8054,  8055,  8056,  8057,
-     8058,  8059,  8060,  8061,  8062,  8063,  8064,  8065,
-     8066,  8067,  8068,  8069,  8070,  8071,  8072,  8073,
-     8074,  8075,  8076,  8077,  8078,  8079,  8080,  8081,
-     8082,  8083,  8084,  8085,  8086,  8087,  8088,  8089,
-     8090,  8091,  8092,  8093,  8094,  8095,  8096,  8097,
-     8098,  8099,  8100,  8101,  8102,  8103,  8104,  8105,
-     8106,  8107,  8108,  8109,  8110,  8111,  8112,  8113,
-     8114,  8115,  8116,  8117,  8118,  8119,  8120,  8121,
-     8122,  8123,  8124,  8125,  8126,  8127,  8128,  8129,
-     8130,  8131,  8132,  8133,  8134,  8135,  8136,  8137,
-     8138,  8139,  8140,  8141,  8142,  8143,  8144,  8145,
-     8146,  8147,  8148,  8149,  8150,  8151,  8152,  8153,
-     8154,  8155,  8156,  8157,  8158,  8159,  8160,  8161,
-     8162,  8163,  8164,  8165,  8166,  8167,  8168,  8169,
-     8170,  8171,  8172,  8173,  8174,  8175,  8176,  8177,
-     8178,  8179,  8180,  8181,  8182,  8183,  8184,  8185,
-     8186,  8187,  8188,  8189,  8190,  8191,  8192,  8193,
-     8194,  8195,  8196,  8197,  8198,  8199,  8200,  8201,
-     8202,  8203,  8204,  8205,  8206,  8207,  8208,  8209,
-     8210,  8211,  8212,  8213,  8214,  8215,  8216,  8217,
-     8218,  8219,  8220,  8221,  8222,  8223,  8224,  8225,
-     8226,  8227,  8228,  8229,  8230,  8231,  8232,  8233,
-     8234,  8235,  8236,  8237,  8238,  8239,  8240,  8241,
-     8242,  8243,  8244,  8245,  8246,  8247,  8248,  8249,
-     8250,  8251,  8252,  8253,  8254,  8255,  8256,  8257,
-     8258,  8259,  8260,  8261,  8262,  8263,  8264,  8265,
-     8266,  8267,  8268,  8269,  8270,  8271,  8272,  8273,
-     8274,  8275,  8276,  8277,  8278,  8279,  8280,  8281,
-     8282,  8283,  8284,  8285,  8286,  8287,  8288,  8289,
-     8290,  8291,  8292,  8293,  8294,  8295,  8296,  8297,
-     8298,  8299,  8300,  8301,  8302,  8303,  8304,  8305,
-     8306,  8307,  8308,  8309,  8310,  8311,  8312,  8313,
-     8314,  8315,  8316,  8317,  8318,  8319,  8320,  8321,
-     8322,  8323,  8324,  8325,  8326,  8327,  8328,  8329,
-     8330,  8331,  8332,  8333,  8334,  8335,  8336,  8337,
-     8338,  8339,  8340,  8341,  8342,  8343,  8344,  8345,
-     8346,  8347,  8348,  8349,  8350,  8351,  8352,  8353,
-     8354,  8355,  8356,  8357,  8358,  8359,  8360,  8361,
-     8362,  8363,  8364,  8365,  8366,  8367,  8368,  8369,
-     8370,  8371,  8372,  8373,  8374,  8375,  8376,  8377,
-     8378,  8379,  8380,  8381,  8382,  8383,  8384,  8385,
-     8386,  8387,  8388,  8389,  8390,  8391,  8392,  8393,
-     8394,  8395,  8396,  8397,  8398,  8399,  8400,  8401,
-     8402,  8403,  8404,  8405,  8406,  8407,  8408,  8409,
-     8410,  8411,  8412,  8413,  8414,  8415,  8416,  8417,
-     8418,  8419,  8420,  8421,  8422,  8423,  8424,  8425,
-     8426,  8427,  8428,  8429,  8430,  8431,  8432,  8433,
-     8434,  8435,  8436,  8437,  8438,  8439,  8440,  8441,
-     8442,  8443,  8444,  8445,  8446,  8447,  8448,  8449,
-     8450,  8451,  8452,  8453,  8454,  8455,  8456,  8457,
-     8458,  8459,  8460,  8461,  8462,  8463,  8464,  8465,
-     8466,  8467,  8468,  8469,  8470,  8471,  8472,  8473,
-     8474,  8475,  8476,  8477,  8478,  8479,  8480,  8481,
-     8482,  8483,  8484,  8485,  8486,  8487,  8488,  8489,
-     8490,  8491,  8492,  8493,  8494,  8495,  8496,  8497,
-     8498,  8499,  8500,  8501,  8502,  8503,    -1,    -1
+     7982,  7983,  7984,  7985,  7986,  7987,  7988,  7989,
+     7990,  7991,  7992,  7993,  7994,  7995,  7996,  7997,
+     7998,  7999,  8000,  8001,  8002,  8003,  8004,  8005,
+     8006,  8007,  8008,  8009,  8010,  8011,  8012,  8013,
+     8014,  8015,  8016,  8017,  8018,  8019,  8020,  8021,
+     8022,  8023,  8024,  8025,  8026,  8027,  8028,  8029,
+     8030,  8031,  8032,  8033,  8034,  8035,  8036,  8037,
+     8038,  8039,  8040,  8041,  8042,  8043,  8044,  8045,
+     8046,  8047,  8048,  8049,  8050,  8051,  8052,  8053,
+     8054,  8055,  8056,  8057,  8058,  8059,  8060,  8061,
+     8062,  8063,  8064,  8065,  8066,  8067,  8068,  8069,
+     8070,  8071,  8072,  8073,  8074,  8075,  8076,  8077,
+     8078,  8079,  8080,  8081,  8082,  8083,  8084,  8085,
+     8086,  8087,  8088,  8089,  8090,  8091,  8092,  8093,
+     8094,  8095,  8096,  8097,  8098,  8099,  8100,  8101,
+     8102,  8103,  8104,  8105,  8106,  8107,  8108,  8109,
+     8110,  8111,  8112,  8113,  8114,  8115,  8116,  8117,
+     8118,  8119,  8120,  8121,  8122,  8123,  8124,  8125,
+     8126,  8127,  8128,  8129,  8130,  8131,  8132,  8133,
+     8134,  8135,  8136,  8137,  8138,  8139,  8140,  8141,
+     8142,  8143,  8144,  8145,  8146,  8147,  8148,  8149,
+     8150,  8151,  8152,  8153,  8154,  8155,  8156,  8157,
+     8158,  8159,  8160,  8161,  8162,  8163,  8164,  8165,
+     8166,  8167,  8168,  8169,  8170,  8171,  8172,  8173,
+     8174,  8175,  8176,  8177,  8178,  8179,  8180,  8181,
+     8182,  8183,  8184,  8185,  8186,  8187,  8188,  8189,
+     8190,  8191,  8192,  8193,  8194,  8195,  8196,  8197,
+     8198,  8199,  8200,  8201,  8202,  8203,  8204,  8205,
+     8206,  8207,  8208,  8209,  8210,  8211,  8212,  8213,
+     8214,  8215,  8216,  8217,  8218,  8219,  8220,  8221,
+     8222,  8223,  8224,  8225,  8226,  8227,  8228,  8229,
+     8230,  8231,  8232,  8233,  8234,  8235,  8236,  8237,
+     8238,  8239,  8240,  8241,  8242,  8243,  8244,  8245,
+     8246,  8247,  8248,  8249,  8250,  8251,  8252,  8253,
+     8254,  8255,  8256,  8257,  8258,  8259,  8260,  8261,
+     8262,  8263,  8264,  8265,  8266,  8267,  8268,  8269,
+     8270,  8271,  8272,  8273,  8274,  8275,  8276,  8277,
+     8278,  8279,  8280,  8281,  8282,  8283,  8284,  8285,
+     8286,  8287,  8288,  8289,  8290,  8291,  8292,  8293,
+     8294,  8295,  8296,  8297,  8298,  8299,  8300,  8301,
+     8302,  8303,  8304,  8305,  8306,  8307,  8308,  8309,
+     8310,  8311,  8312,  8313,  8314,  8315,  8316,  8317,
+     8318,  8319,  8320,  8321,  8322,  8323,  8324,  8325,
+     8326,  8327,  8328,  8329,  8330,  8331,  8332,  8333,
+     8334,  8335,  8336,  8337,  8338,  8339,  8340,  8341,
+     8342,  8343,  8344,  8345,  8346,  8347,  8348,  8349,
+     8350,  8351,  8352,  8353,  8354,  8355,  8356,  8357,
+     8358,  8359,  8360,  8361,  8362,  8363,  8364,  8365,
+     8366,  8367,  8368,  8369,  8370,  8371,  8372,  8373,
+     8374,  8375,  8376,  8377,  8378,  8379,  8380,  8381,
+     8382,  8383,  8384,  8385,  8386,  8387,  8388,  8389,
+     8390,  8391,  8392,  8393,  8394,  8395,  8396,  8397,
+     8398,  8399,  8400,  8401,  8402,  8403,  8404,  8405,
+     8406,  8407,  8408,  8409,  8410,  8411,  8412,  8413,
+     8414,  8415,  8416,  8417,  8418,  8419,  8420,  8421,
+     8422,  8423,  8424,  8425,  8426,  8427,  8428,  8429,
+     8430,  8431,  8432,  8433,  8434,  8435,  8436,  8437,
+     8438,  8439,  8440,  8441,  8442,  8443,  8444,  8445,
+     8446,  8447,  8448,  8449,  8450,  8451,  8452,  8453,
+     8454,  8455,  8456,  8457,  8458,  8459,  8460,  8461,
+     8462,  8463,  8464,  8465,  8466,  8467,  8468,  8469,
+     8470,  8471,  8472,  8473,  8474,  8475,  8476,  8477,
+     8478,  8479,  8480,  8481,  8482,  8483,  8484,  8485,
+     8486,  8487,  8488,  8489,  8490,  8491,  8492,  8493,
+     8494,  8495,  8496,  8497,  8498,  8499,  8500,  8501,
+     8502,  8503,  8504,  8505,  8506,  8507,  8508,  8509,
+     8510,  8511,  8512,  8513,  8514,  8515,  8516,  8517,
+     8518,  8519,  8520,  8521,  8522,  8523,    -1,    -1
   }
 };
--- a/lib/uniwbrk/wbrkprop.h
+++ b/lib/uniwbrk/wbrkprop.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Line breaking properties of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 
 /* Copyright (C) 2000-2002, 2004, 2007-2009 Free Software Foundation, Inc.
 
@@ -27,7 +27,7 @@
   {
     int level1[15];
     int level2[3 << 9];
-    unsigned char level3[132 << 7];
+    unsigned char level3[152 << 7];
   }
 wbrkprop_t;
 static const wbrkprop_t uniwbrkprop =
@@ -102,19 +102,19 @@
        -1,    -1,    -1,    -1,    -1,    -1, 10624, 10752,
       256,   256, 10880, 11008, 11136, 11264, 11392, 11520,
     11648, 11776, 11904, 12032,    -1, 12160, 12288, 12416,
-      256, 12544,    -1,    -1,    -1,    -1,    -1,    -1,
-    12672,    -1, 12800, 12928, 13056,    -1, 13184,    -1,
-    13312,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    13440, 13568, 13696, 13824,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1, 13952,    -1,    -1,
+      256, 12544, 12672,    -1,   256,   256, 12800,    -1,
+    12928, 13056, 13184, 13312, 13440, 13568, 13696, 13824,
+    13952,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    14080, 14208, 14336, 14464, 14592, 14720, 14848,    -1,
+       -1, 14976,    -1, 15104, 15232, 15360,    -1,    -1,
+       -1, 15488,    -1,    -1,    -1, 15616,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      256,   256,   256,   256,   256,   256, 14080,    -1,
-    14208,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      256,   256,   256,   256,   256,   256,   256, 15744,
+    15872,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       256,   256,   256,   256,   256,   256,   256,   256,
-    14336,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    16000,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -127,8 +127,8 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      256,   256,   256,   256, 14464,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1, 14592, 14720,
+      256,   256,   256,   256, 16128, 16256, 16384, 16512,
+       -1,    -1,    -1,    -1,    -1,    -1, 16640, 16768,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -145,27 +145,27 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    14848,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    16896,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    17024, 17152,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1, 14976, 15104, 15232,    -1,    -1,    -1,
-    15360, 15488, 15616,   256,   256, 15744, 15872, 16000,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1, 17280, 17408, 17536,    -1,    -1,    -1,
+    17664, 17792, 17920,   256,   256, 18048, 18176, 18304,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1, 16128, 16256,    -1,    -1,
-       -1,    -1,    -1, 16384,    -1,    -1,    -1,    -1,
+      256, 18432,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1, 18560, 18688,    -1,    -1,
+       -1,    -1, 18816, 18944,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    16512,    -1, 16640, 16768,    -1,    -1,    -1,    -1,
+    19072,    -1, 19200, 19328,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -390,7 +390,7 @@
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_OTHER, WBP_ALETTER, WBP_ALETTER,
     WBP_OTHER, WBP_OTHER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_MIDNUM, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_MIDNUM, WBP_ALETTER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_ALETTER, WBP_MIDLETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_OTHER,
@@ -465,8 +465,8 @@
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_OTHER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
@@ -520,7 +520,7 @@
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT,
-    WBP_FORMAT, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_FORMAT, WBP_FORMAT, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_MIDNUM, WBP_MIDNUM, WBP_OTHER, WBP_OTHER,
     WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
@@ -687,30 +687,30 @@
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_ALETTER, WBP_OTHER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
-    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
-    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
-    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
-    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
-    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
-    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
     WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
@@ -741,9 +741,9 @@
     WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,
     WBP_OTHER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_OTHER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_OTHER, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
     WBP_OTHER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_OTHER, WBP_OTHER, WBP_ALETTER,
@@ -903,7 +903,7 @@
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
     WBP_OTHER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_OTHER, WBP_ALETTER, WBP_ALETTER,
@@ -916,7 +916,7 @@
     WBP_ALETTER, WBP_OTHER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_OTHER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_ALETTER, WBP_EXTEND, WBP_EXTEND,
     WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
@@ -935,7 +935,7 @@
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_EXTEND, WBP_EXTEND,
+    WBP_OTHER, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
     WBP_OTHER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_OTHER, WBP_ALETTER, WBP_ALETTER,
@@ -967,7 +967,7 @@
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_EXTEND, WBP_EXTEND,
+    WBP_OTHER, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
     WBP_OTHER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_OTHER, WBP_ALETTER, WBP_ALETTER,
@@ -1024,9 +1024,9 @@
     WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
     WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_NUMERIC, WBP_NUMERIC,
+    WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,
+    WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,
     WBP_OTHER, WBP_OTHER, WBP_EXTEND, WBP_EXTEND,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
@@ -1443,10 +1443,10 @@
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
@@ -1582,7 +1582,7 @@
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_OTHER,
     WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
     WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
     WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
@@ -1683,10 +1683,10 @@
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
@@ -1829,38 +1829,38 @@
     WBP_ALETTER, WBP_EXTEND, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_EXTEND, WBP_EXTEND,
     WBP_EXTEND, WBP_ALETTER, WBP_ALETTER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
-    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
-    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
-    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
-    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
-    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
-    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
-    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
-    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
-    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_EXTEND, WBP_EXTEND, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
@@ -2509,8 +2509,8 @@
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_EXTEND,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_OTHER, WBP_EXTEND,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
@@ -2572,31 +2572,31 @@
     WBP_ALETTER, WBP_OTHER, WBP_OTHER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_OTHER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_EXTEND, WBP_ALETTER,
@@ -2720,12 +2720,12 @@
     WBP_NUMERIC, WBP_NUMERIC, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_EXTEND, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,
+    WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,
+    WBP_NUMERIC, WBP_NUMERIC, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
@@ -2758,7 +2758,7 @@
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_EXTEND,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_EXTEND, WBP_EXTEND, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
@@ -2803,20 +2803,20 @@
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_OTHER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
@@ -3024,9 +3024,9 @@
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
-    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_EXTENDNUMLET,
     WBP_EXTENDNUMLET, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
@@ -3295,22 +3295,22 @@
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_OTHER,
+    WBP_EXTEND, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
@@ -3323,17 +3323,17 @@
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
@@ -3400,6 +3400,70 @@
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_OTHER, WBP_OTHER,
     WBP_ALETTER, WBP_OTHER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
@@ -3423,6 +3487,38 @@
     WBP_ALETTER, WBP_ALETTER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
@@ -3534,6 +3630,38 @@
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_OTHER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_EXTEND, WBP_EXTEND, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
@@ -3563,6 +3691,38 @@
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
@@ -3622,7 +3782,7 @@
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_EXTEND,
     WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
@@ -3675,16 +3835,16 @@
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_EXTEND,
+    WBP_OTHER, WBP_OTHER, WBP_ALETTER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_ALETTER,
@@ -3709,6 +3869,198 @@
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,
     WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,
+    WBP_NUMERIC, WBP_NUMERIC, WBP_ALETTER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_OTHER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,
+    WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,
+    WBP_NUMERIC, WBP_NUMERIC, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_OTHER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_OTHER, WBP_OTHER, WBP_ALETTER,
+    WBP_ALETTER, WBP_OTHER, WBP_OTHER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_OTHER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_OTHER, WBP_ALETTER, WBP_ALETTER,
+    WBP_OTHER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_OTHER, WBP_OTHER,
+    WBP_EXTEND, WBP_ALETTER, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_OTHER, WBP_OTHER, WBP_EXTEND,
+    WBP_EXTEND, WBP_OTHER, WBP_OTHER, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_EXTEND,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_EXTEND, WBP_EXTEND,
+    WBP_OTHER, WBP_OTHER, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_ALETTER, WBP_ALETTER, WBP_OTHER, WBP_ALETTER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,
+    WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,
+    WBP_NUMERIC, WBP_NUMERIC, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_OTHER, WBP_OTHER,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,
+    WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,
     WBP_NUMERIC, WBP_NUMERIC, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
@@ -3751,6 +4103,102 @@
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,
+    WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,
+    WBP_NUMERIC, WBP_NUMERIC, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_ALETTER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
@@ -3794,38 +4242,6 @@
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
@@ -3863,6 +4279,102 @@
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_OTHER,
+    WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,
+    WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,
+    WBP_NUMERIC, WBP_NUMERIC, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_OTHER, WBP_OTHER,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,
+    WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,
+    WBP_NUMERIC, WBP_NUMERIC, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
@@ -3975,6 +4487,70 @@
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_EXTEND, WBP_EXTEND, WBP_OTHER,
+    WBP_FORMAT, WBP_FORMAT, WBP_FORMAT, WBP_FORMAT,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
@@ -4264,6 +4840,38 @@
     WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,
     WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_OTHER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
@@ -4339,6 +4947,38 @@
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
--- a/lib/uniwidth/width.c
+++ b/lib/uniwidth/width.c
@@ -32,7 +32,7 @@
  * - Zero width characters; generated from
  *   "grep '^[^;]*;ZERO WIDTH ' UnicodeData.txt"
  */
-static const unsigned char nonspacing_table_data[29*64] = {
+static const unsigned char nonspacing_table_data[35*64] = {
   /* 0x0000-0x01ff */
   0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, /* 0x0000-0x003f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, /* 0x0040-0x007f */
@@ -61,7 +61,7 @@
   0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xbf, /* 0x0580-0x05bf */
   0xb6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x05c0-0x05ff */
   /* 0x0600-0x07ff */
-  0x1f, 0x00, 0xff, 0x17, 0x00, 0x00, 0x00, 0x00, /* 0x0600-0x063f */
+  0x3f, 0x00, 0xff, 0x17, 0x00, 0x00, 0x00, 0x00, /* 0x0600-0x063f */
   0x00, 0xf8, 0xff, 0xff, 0x00, 0x00, 0x01, 0x00, /* 0x0640-0x067f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0680-0x06bf */
   0x00, 0x00, 0xc0, 0xbf, 0x9f, 0x3d, 0x00, 0x00, /* 0x06c0-0x06ff */
@@ -73,7 +73,7 @@
   0x00, 0x00, 0xc0, 0xfb, 0xef, 0x3e, 0x00, 0x00, /* 0x0800-0x083f */
   0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, /* 0x0840-0x087f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0880-0x08bf */
-  0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x7f, /* 0x08c0-0x08ff */
+  0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0xff, /* 0x08c0-0x08ff */
   0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, /* 0x0900-0x093f */
   0xfe, 0x21, 0xfe, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0940-0x097f */
   0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0x0980-0x09bf */
@@ -88,11 +88,11 @@
   0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0b80-0x0bbf */
   0x01, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0bc0-0x0bff */
   /* 0x0c00-0x0dff */
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, /* 0x0c00-0x0c3f */
+  0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, /* 0x0c00-0x0c3f */
   0xc1, 0x3d, 0x60, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0c40-0x0c7f */
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0x0c80-0x0cbf */
+  0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0x0c80-0x0cbf */
   0x00, 0x30, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0cc0-0x0cff */
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0d00-0x0d3f */
+  0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0d00-0x0d3f */
   0x1e, 0x20, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0d40-0x0d7f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0d80-0x0dbf */
   0x00, 0x04, 0x5c, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0dc0-0x0dff */
@@ -144,21 +144,21 @@
   /* 0x1a00-0x1bff */
   0x00, 0x00, 0x80, 0x09, 0x00, 0x00, 0x00, 0x00, /* 0x1a00-0x1a3f */
   0x00, 0x00, 0x40, 0x7f, 0xe5, 0x1f, 0xf8, 0x9f, /* 0x1a40-0x1a7f */
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1a80-0x1abf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x7f, /* 0x1a80-0x1abf */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1ac0-0x1aff */
   0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x17, /* 0x1b00-0x1b3f */
   0x04, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x0f, 0x00, /* 0x1b40-0x1b7f */
-  0x03, 0x00, 0x00, 0x00, 0x3c, 0x0b, 0x00, 0x00, /* 0x1b80-0x1bbf */
+  0x03, 0x00, 0x00, 0x00, 0x3c, 0x3b, 0x00, 0x00, /* 0x1b80-0x1bbf */
   0x00, 0x00, 0x00, 0x00, 0x40, 0xa3, 0x03, 0x00, /* 0x1bc0-0x1bff */
   /* 0x1c00-0x1dff */
   0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xcf, 0x00, /* 0x1c00-0x1c3f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1c40-0x1c7f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1c80-0x1cbf */
-  0x00, 0x00, 0xf7, 0xff, 0xfd, 0x21, 0x10, 0x00, /* 0x1cc0-0x1cff */
+  0x00, 0x00, 0xf7, 0xff, 0xfd, 0x21, 0x10, 0x03, /* 0x1cc0-0x1cff */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d00-0x1d3f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d40-0x1d7f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d80-0x1dbf */
-  0xff, 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, 0xf0, /* 0x1dc0-0x1dff */
+  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xf0, /* 0x1dc0-0x1dff */
   /* 0x2000-0x21ff */
   0x00, 0xf8, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x00, /* 0x2000-0x203f */
   0x00, 0x00, 0x00, 0x00, 0xdf, 0xff, 0x00, 0x00, /* 0x2040-0x207f */
@@ -203,10 +203,10 @@
   0x00, 0x00, 0x00, 0x00, 0xc0, 0x3f, 0x00, 0x00, /* 0xa900-0xa93f */
   0x80, 0xff, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa940-0xa97f */
   0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x13, /* 0xa980-0xa9bf */
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xa9c0-0xa9ff */
+  0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, /* 0xa9c0-0xa9ff */
   /* 0xaa00-0xabff */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x66, 0x00, /* 0xaa00-0xaa3f */
-  0x08, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xaa40-0xaa7f */
+  0x08, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0xaa40-0xaa7f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9d, 0xc1, /* 0xaa80-0xaabf */
   0x02, 0x00, 0x00, 0x00, 0x00, 0x30, 0x40, 0x00, /* 0xaac0-0xaaff */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xab00-0xab3f */
@@ -223,7 +223,7 @@
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfb80-0xfbbf */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfbc0-0xfbff */
   /* 0xfe00-0xffff */
-  0xff, 0xff, 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, /* 0xfe00-0xfe3f */
+  0xff, 0xff, 0x00, 0x00, 0xff, 0x3f, 0x00, 0x00, /* 0xfe00-0xfe3f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfe40-0xfe7f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0xfe80-0xfebf */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, /* 0xfec0-0xfeff */
@@ -240,33 +240,69 @@
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10140-0x1017f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10180-0x101bf */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, /* 0x101c0-0x101ff */
+  /* 0x10200-0x103ff */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10200-0x1023f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10240-0x1027f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10280-0x102bf */
+  0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, /* 0x102c0-0x102ff */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10300-0x1033f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x07, /* 0x10340-0x1037f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10380-0x103bf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x103c0-0x103ff */
   /* 0x10a00-0x10bff */
   0x6e, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x87, /* 0x10a00-0x10a3f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10a40-0x10a7f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10a80-0x10abf */
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10ac0-0x10aff */
+  0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, /* 0x10ac0-0x10aff */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10b00-0x10b3f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10b40-0x10b7f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10b80-0x10bbf */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10bc0-0x10bff */
   /* 0x11000-0x111ff */
   0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, /* 0x11000-0x1103f */
-  0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11040-0x1107f */
+  0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, /* 0x11040-0x1107f */
   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x26, /* 0x11080-0x110bf */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x110c0-0x110ff */
   0x07, 0x00, 0x00, 0x00, 0x80, 0xef, 0x1f, 0x00, /* 0x11100-0x1113f */
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11140-0x1117f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, /* 0x11140-0x1117f */
   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x7f, /* 0x11180-0x111bf */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x111c0-0x111ff */
+  /* 0x11200-0x113ff */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xd3, 0x00, /* 0x11200-0x1123f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11240-0x1127f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11280-0x112bf */
+  0x00, 0x00, 0x00, 0x80, 0xf8, 0x07, 0x00, 0x00, /* 0x112c0-0x112ff */
+  0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0x11300-0x1133f */
+  0x01, 0x00, 0x00, 0x00, 0xc0, 0x1f, 0x1f, 0x00, /* 0x11340-0x1137f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11380-0x113bf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x113c0-0x113ff */
+  /* 0x11400-0x115ff */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11400-0x1143f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11440-0x1147f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x85, /* 0x11480-0x114bf */
+  0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x114c0-0x114ff */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11500-0x1153f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11540-0x1157f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0xb0, /* 0x11580-0x115bf */
+  0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x115c0-0x115ff */
   /* 0x11600-0x117ff */
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11600-0x1163f */
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11640-0x1167f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xa7, /* 0x11600-0x1163f */
+  0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11640-0x1167f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0xbf, 0x00, /* 0x11680-0x116bf */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x116c0-0x116ff */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11700-0x1173f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11740-0x1177f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11780-0x117bf */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x117c0-0x117ff */
+  /* 0x16a00-0x16bff */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16a00-0x16a3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16a40-0x16a7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16a80-0x16abf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x00, /* 0x16ac0-0x16aff */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x00, /* 0x16b00-0x16b3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16b40-0x16b7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16b80-0x16bbf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16bc0-0x16bff */
   /* 0x16e00-0x16fff */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16e00-0x16e3f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16e40-0x16e7f */
@@ -276,6 +312,15 @@
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16f40-0x16f7f */
   0x00, 0x80, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16f80-0x16fbf */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x16fc0-0x16fff */
+  /* 0x1bc00-0x1bdff */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bc00-0x1bc3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bc40-0x1bc7f */
+  0x00, 0x00, 0x00, 0x60, 0x0f, 0x00, 0x00, 0x00, /* 0x1bc80-0x1bcbf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bcc0-0x1bcff */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bd00-0x1bd3f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bd40-0x1bd7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bd80-0x1bdbf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bdc0-0x1bdff */
   /* 0x1d000-0x1d1ff */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d000-0x1d03f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d040-0x1d07f */
@@ -293,9 +338,18 @@
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d300-0x1d33f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d340-0x1d37f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d380-0x1d3bf */
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  /* 0x1d3c0-0x1d3ff */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1d3c0-0x1d3ff */
+  /* 0x1e800-0x1e9ff */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e800-0x1e83f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e840-0x1e87f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e880-0x1e8bf */
+  0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e8c0-0x1e8ff */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e900-0x1e93f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e940-0x1e97f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1e980-0x1e9bf */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  /* 0x1e9c0-0x1e9ff */
 };
-static const signed char nonspacing_table_ind[240] = {
+static const signed char nonspacing_table_ind[248] = {
    0,  1,  2,  3,  4,  5,  6,  7, /* 0x0000-0x0fff */
    8,  9, -1, 10, 11, 12, 13, -1, /* 0x1000-0x1fff */
   14, -1, -1, -1, -1, -1, 15, -1, /* 0x2000-0x2fff */
@@ -312,20 +366,21 @@
   -1, -1, -1, -1, -1, -1, -1, -1, /* 0xd000-0xdfff */
   -1, -1, -1, -1, -1, -1, -1, -1, /* 0xe000-0xefff */
   -1, -1, -1, -1, -1, 20, -1, 21, /* 0xf000-0xffff */
-  22, -1, -1, -1, -1, 23, -1, -1, /* 0x10000-0x10fff */
-  24, -1, -1, 25, -1, -1, -1, -1, /* 0x11000-0x11fff */
+  22, 23, -1, -1, -1, 24, -1, -1, /* 0x10000-0x10fff */
+  25, 26, 27, 28, -1, -1, -1, -1, /* 0x11000-0x11fff */
   -1, -1, -1, -1, -1, -1, -1, -1, /* 0x12000-0x12fff */
   -1, -1, -1, -1, -1, -1, -1, -1, /* 0x13000-0x13fff */
   -1, -1, -1, -1, -1, -1, -1, -1, /* 0x14000-0x14fff */
   -1, -1, -1, -1, -1, -1, -1, -1, /* 0x15000-0x15fff */
-  -1, -1, -1, -1, -1, -1, -1, 26, /* 0x16000-0x16fff */
+  -1, -1, -1, -1, -1, 29, -1, 30, /* 0x16000-0x16fff */
   -1, -1, -1, -1, -1, -1, -1, -1, /* 0x17000-0x17fff */
   -1, -1, -1, -1, -1, -1, -1, -1, /* 0x18000-0x18fff */
   -1, -1, -1, -1, -1, -1, -1, -1, /* 0x19000-0x19fff */
   -1, -1, -1, -1, -1, -1, -1, -1, /* 0x1a000-0x1afff */
-  -1, -1, -1, -1, -1, -1, -1, -1, /* 0x1b000-0x1bfff */
+  -1, -1, -1, -1, -1, -1, 31, -1, /* 0x1b000-0x1bfff */
   -1, -1, -1, -1, -1, -1, -1, -1, /* 0x1c000-0x1cfff */
-  27, 28, -1, -1, -1, -1, -1, -1  /* 0x1d000-0x1dfff */
+  32, 33, -1, -1, -1, -1, -1, -1, /* 0x1d000-0x1dfff */
+  -1, -1, -1, -1, 34, -1, -1, -1  /* 0x1e000-0x1efff */
 };
 
 /* Determine number of column positions required for UC.  */
@@ -333,7 +388,7 @@
 uc_width (ucs4_t uc, const char *encoding)
 {
   /* Test for non-spacing or control character.  */
-  if ((uc >> 9) < 240)
+  if ((uc >> 9) < 248)
     {
       int ind = nonspacing_table_ind[uc >> 9];
       if (ind >= 0)
--- a/tests/unicase/test-cased.c
+++ b/tests/unicase/test-cased.c
@@ -34,13 +34,14 @@
     { 0x0370, 0x0373 },
     { 0x0376, 0x0377 },
     { 0x037A, 0x037D },
+    { 0x037F, 0x037F },
     { 0x0386, 0x0386 },
     { 0x0388, 0x038A },
     { 0x038C, 0x038C },
     { 0x038E, 0x03A1 },
     { 0x03A3, 0x03F5 },
     { 0x03F7, 0x0481 },
-    { 0x048A, 0x0527 },
+    { 0x048A, 0x052F },
     { 0x0531, 0x0556 },
     { 0x0561, 0x0587 },
     { 0x10A0, 0x10C5 },
@@ -95,17 +96,21 @@
     { 0x2D27, 0x2D27 },
     { 0x2D2D, 0x2D2D },
     { 0xA640, 0xA66D },
-    { 0xA680, 0xA697 },
+    { 0xA680, 0xA69D },
     { 0xA722, 0xA787 },
     { 0xA78B, 0xA78E },
-    { 0xA790, 0xA793 },
-    { 0xA7A0, 0xA7AA },
+    { 0xA790, 0xA7AD },
+    { 0xA7B0, 0xA7B1 },
     { 0xA7F8, 0xA7FA },
+    { 0xAB30, 0xAB5A },
+    { 0xAB5C, 0xAB5F },
+    { 0xAB64, 0xAB65 },
     { 0xFB00, 0xFB06 },
     { 0xFB13, 0xFB17 },
     { 0xFF21, 0xFF3A },
     { 0xFF41, 0xFF5A },
     { 0x10400, 0x1044F },
+    { 0x118A0, 0x118DF },
     { 0x1D400, 0x1D454 },
     { 0x1D456, 0x1D49C },
     { 0x1D49E, 0x1D49F },
@@ -135,7 +140,10 @@
     { 0x1D770, 0x1D788 },
     { 0x1D78A, 0x1D7A8 },
     { 0x1D7AA, 0x1D7C2 },
-    { 0x1D7C4, 0x1D7CB }
+    { 0x1D7C4, 0x1D7CB },
+    { 0x1F130, 0x1F149 },
+    { 0x1F150, 0x1F169 },
+    { 0x1F170, 0x1F189 }
 
 #define PREDICATE(c) uc_is_cased (c)
 #include "test-predicate-part2.h"
--- a/tests/unicase/test-ignorable.c
+++ b/tests/unicase/test-ignorable.c
@@ -41,7 +41,7 @@
     { 0x05C4, 0x05C5 },
     { 0x05C7, 0x05C7 },
     { 0x05F4, 0x05F4 },
-    { 0x0600, 0x0604 },
+    { 0x0600, 0x0605 },
     { 0x0610, 0x061A },
     { 0x061C, 0x061C },
     { 0x0640, 0x0640 },
@@ -58,8 +58,7 @@
     { 0x07FA, 0x07FA },
     { 0x0816, 0x082D },
     { 0x0859, 0x085B },
-    { 0x08E4, 0x08FE },
-    { 0x0900, 0x0902 },
+    { 0x08E4, 0x0902 },
     { 0x093A, 0x093A },
     { 0x093C, 0x093C },
     { 0x0941, 0x0948 },
@@ -96,16 +95,19 @@
     { 0x0B82, 0x0B82 },
     { 0x0BC0, 0x0BC0 },
     { 0x0BCD, 0x0BCD },
+    { 0x0C00, 0x0C00 },
     { 0x0C3E, 0x0C40 },
     { 0x0C46, 0x0C48 },
     { 0x0C4A, 0x0C4D },
     { 0x0C55, 0x0C56 },
     { 0x0C62, 0x0C63 },
+    { 0x0C81, 0x0C81 },
     { 0x0CBC, 0x0CBC },
     { 0x0CBF, 0x0CBF },
     { 0x0CC6, 0x0CC6 },
     { 0x0CCC, 0x0CCD },
     { 0x0CE2, 0x0CE3 },
+    { 0x0D01, 0x0D01 },
     { 0x0D41, 0x0D44 },
     { 0x0D4D, 0x0D4D },
     { 0x0D62, 0x0D63 },
@@ -170,6 +172,7 @@
     { 0x1A73, 0x1A7C },
     { 0x1A7F, 0x1A7F },
     { 0x1AA7, 0x1AA7 },
+    { 0x1AB0, 0x1ABE },
     { 0x1B00, 0x1B03 },
     { 0x1B34, 0x1B34 },
     { 0x1B36, 0x1B3A },
@@ -179,7 +182,7 @@
     { 0x1B80, 0x1B81 },
     { 0x1BA2, 0x1BA5 },
     { 0x1BA8, 0x1BA9 },
-    { 0x1BAB, 0x1BAB },
+    { 0x1BAB, 0x1BAD },
     { 0x1BE6, 0x1BE6 },
     { 0x1BE8, 0x1BE9 },
     { 0x1BED, 0x1BED },
@@ -192,7 +195,8 @@
     { 0x1CE2, 0x1CE8 },
     { 0x1CED, 0x1CED },
     { 0x1CF4, 0x1CF4 },
-    { 0x1DC0, 0x1DE6 },
+    { 0x1CF8, 0x1CF9 },
+    { 0x1DC0, 0x1DF5 },
     { 0x1DFC, 0x1DFF },
     { 0x1FBD, 0x1FBD },
     { 0x1FBF, 0x1FC1 },
@@ -242,12 +246,14 @@
     { 0xA9B6, 0xA9B9 },
     { 0xA9BC, 0xA9BC },
     { 0xA9CF, 0xA9CF },
+    { 0xA9E5, 0xA9E6 },
     { 0xAA29, 0xAA2E },
     { 0xAA31, 0xAA32 },
     { 0xAA35, 0xAA36 },
     { 0xAA43, 0xAA43 },
     { 0xAA4C, 0xAA4C },
     { 0xAA70, 0xAA70 },
+    { 0xAA7C, 0xAA7C },
     { 0xAAB0, 0xAAB0 },
     { 0xAAB2, 0xAAB4 },
     { 0xAAB7, 0xAAB8 },
@@ -257,6 +263,7 @@
     { 0xAAEC, 0xAAED },
     { 0xAAF3, 0xAAF4 },
     { 0xAAF6, 0xAAF6 },
+    { 0xAB5B, 0xAB5B },
     { 0xABE5, 0xABE5 },
     { 0xABE8, 0xABE8 },
     { 0xABED, 0xABED },
@@ -264,7 +271,7 @@
     { 0xFBB2, 0xFBC1 },
     { 0xFE00, 0xFE0F },
     { 0xFE13, 0xFE13 },
-    { 0xFE20, 0xFE26 },
+    { 0xFE20, 0xFE2D },
     { 0xFE52, 0xFE52 },
     { 0xFE55, 0xFE55 },
     { 0xFEFF, 0xFEFF },
@@ -278,32 +285,62 @@
     { 0xFFE3, 0xFFE3 },
     { 0xFFF9, 0xFFFB },
     { 0x101FD, 0x101FD },
+    { 0x102E0, 0x102E0 },
+    { 0x10376, 0x1037A },
     { 0x10A01, 0x10A03 },
     { 0x10A05, 0x10A06 },
     { 0x10A0C, 0x10A0F },
     { 0x10A38, 0x10A3A },
     { 0x10A3F, 0x10A3F },
+    { 0x10AE5, 0x10AE6 },
     { 0x11001, 0x11001 },
     { 0x11038, 0x11046 },
-    { 0x11080, 0x11081 },
+    { 0x1107F, 0x11081 },
     { 0x110B3, 0x110B6 },
     { 0x110B9, 0x110BA },
     { 0x110BD, 0x110BD },
     { 0x11100, 0x11102 },
     { 0x11127, 0x1112B },
     { 0x1112D, 0x11134 },
+    { 0x11173, 0x11173 },
     { 0x11180, 0x11181 },
     { 0x111B6, 0x111BE },
+    { 0x1122F, 0x11231 },
+    { 0x11234, 0x11234 },
+    { 0x11236, 0x11237 },
+    { 0x112DF, 0x112DF },
+    { 0x112E3, 0x112EA },
+    { 0x11301, 0x11301 },
+    { 0x1133C, 0x1133C },
+    { 0x11340, 0x11340 },
+    { 0x11366, 0x1136C },
+    { 0x11370, 0x11374 },
+    { 0x114B3, 0x114B8 },
+    { 0x114BA, 0x114BA },
+    { 0x114BF, 0x114C0 },
+    { 0x114C2, 0x114C3 },
+    { 0x115B2, 0x115B5 },
+    { 0x115BC, 0x115BD },
+    { 0x115BF, 0x115C0 },
+    { 0x11633, 0x1163A },
+    { 0x1163D, 0x1163D },
+    { 0x1163F, 0x11640 },
     { 0x116AB, 0x116AB },
     { 0x116AD, 0x116AD },
     { 0x116B0, 0x116B5 },
     { 0x116B7, 0x116B7 },
+    { 0x16AF0, 0x16AF4 },
+    { 0x16B30, 0x16B36 },
+    { 0x16B40, 0x16B43 },
     { 0x16F8F, 0x16F9F },
+    { 0x1BC9D, 0x1BC9E },
+    { 0x1BCA0, 0x1BCA3 },
     { 0x1D167, 0x1D169 },
     { 0x1D173, 0x1D182 },
     { 0x1D185, 0x1D18B },
     { 0x1D1AA, 0x1D1AD },
     { 0x1D242, 0x1D244 },
+    { 0x1E8D0, 0x1E8D6 },
     { 0xE0001, 0xE0001 },
     { 0xE0020, 0xE007F },
     { 0xE0100, 0xE01EF }
--- a/tests/unicase/test-uc_tolower.c
+++ b/tests/unicase/test-uc_tolower.c
@@ -15,7 +15,7 @@
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 
 #include "test-mapping-part1.h"
 
@@ -248,6 +248,7 @@
     { 0x0370, 0x0371 },
     { 0x0372, 0x0373 },
     { 0x0376, 0x0377 },
+    { 0x037F, 0x03F3 },
     { 0x0386, 0x03AC },
     { 0x0388, 0x03AD },
     { 0x0389, 0x03AE },
@@ -445,6 +446,10 @@
     { 0x0522, 0x0523 },
     { 0x0524, 0x0525 },
     { 0x0526, 0x0527 },
+    { 0x0528, 0x0529 },
+    { 0x052A, 0x052B },
+    { 0x052C, 0x052D },
+    { 0x052E, 0x052F },
     { 0x0531, 0x0561 },
     { 0x0532, 0x0562 },
     { 0x0533, 0x0563 },
@@ -940,6 +945,8 @@
     { 0xA692, 0xA693 },
     { 0xA694, 0xA695 },
     { 0xA696, 0xA697 },
+    { 0xA698, 0xA699 },
+    { 0xA69A, 0xA69B },
     { 0xA722, 0xA723 },
     { 0xA724, 0xA725 },
     { 0xA726, 0xA727 },
@@ -990,12 +997,22 @@
     { 0xA78D, 0x0265 },
     { 0xA790, 0xA791 },
     { 0xA792, 0xA793 },
+    { 0xA796, 0xA797 },
+    { 0xA798, 0xA799 },
+    { 0xA79A, 0xA79B },
+    { 0xA79C, 0xA79D },
+    { 0xA79E, 0xA79F },
     { 0xA7A0, 0xA7A1 },
     { 0xA7A2, 0xA7A3 },
     { 0xA7A4, 0xA7A5 },
     { 0xA7A6, 0xA7A7 },
     { 0xA7A8, 0xA7A9 },
     { 0xA7AA, 0x0266 },
+    { 0xA7AB, 0x025C },
+    { 0xA7AC, 0x0261 },
+    { 0xA7AD, 0x026C },
+    { 0xA7B0, 0x029E },
+    { 0xA7B1, 0x0287 },
     { 0xFF21, 0xFF41 },
     { 0xFF22, 0xFF42 },
     { 0xFF23, 0xFF43 },
@@ -1061,7 +1078,39 @@
     { 0x10424, 0x1044C },
     { 0x10425, 0x1044D },
     { 0x10426, 0x1044E },
-    { 0x10427, 0x1044F }
+    { 0x10427, 0x1044F },
+    { 0x118A0, 0x118C0 },
+    { 0x118A1, 0x118C1 },
+    { 0x118A2, 0x118C2 },
+    { 0x118A3, 0x118C3 },
+    { 0x118A4, 0x118C4 },
+    { 0x118A5, 0x118C5 },
+    { 0x118A6, 0x118C6 },
+    { 0x118A7, 0x118C7 },
+    { 0x118A8, 0x118C8 },
+    { 0x118A9, 0x118C9 },
+    { 0x118AA, 0x118CA },
+    { 0x118AB, 0x118CB },
+    { 0x118AC, 0x118CC },
+    { 0x118AD, 0x118CD },
+    { 0x118AE, 0x118CE },
+    { 0x118AF, 0x118CF },
+    { 0x118B0, 0x118D0 },
+    { 0x118B1, 0x118D1 },
+    { 0x118B2, 0x118D2 },
+    { 0x118B3, 0x118D3 },
+    { 0x118B4, 0x118D4 },
+    { 0x118B5, 0x118D5 },
+    { 0x118B6, 0x118D6 },
+    { 0x118B7, 0x118D7 },
+    { 0x118B8, 0x118D8 },
+    { 0x118B9, 0x118D9 },
+    { 0x118BA, 0x118DA },
+    { 0x118BB, 0x118DB },
+    { 0x118BC, 0x118DC },
+    { 0x118BD, 0x118DD },
+    { 0x118BE, 0x118DE },
+    { 0x118BF, 0x118DF }
 
 #define MAP(c) uc_tolower (c)
 #include "test-mapping-part2.h"
--- a/tests/unicase/test-uc_totitle.c
+++ b/tests/unicase/test-uc_totitle.c
@@ -15,7 +15,7 @@
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 
 #include "test-mapping-part1.h"
 
@@ -235,13 +235,16 @@
     { 0x0257, 0x018A },
     { 0x0259, 0x018F },
     { 0x025B, 0x0190 },
+    { 0x025C, 0xA7AB },
     { 0x0260, 0x0193 },
+    { 0x0261, 0xA7AC },
     { 0x0263, 0x0194 },
     { 0x0265, 0xA78D },
     { 0x0266, 0xA7AA },
     { 0x0268, 0x0197 },
     { 0x0269, 0x0196 },
     { 0x026B, 0x2C62 },
+    { 0x026C, 0xA7AD },
     { 0x026F, 0x019C },
     { 0x0271, 0x2C6E },
     { 0x0272, 0x019D },
@@ -249,12 +252,14 @@
     { 0x027D, 0x2C64 },
     { 0x0280, 0x01A6 },
     { 0x0283, 0x01A9 },
+    { 0x0287, 0xA7B1 },
     { 0x0288, 0x01AE },
     { 0x0289, 0x0244 },
     { 0x028A, 0x01B1 },
     { 0x028B, 0x01B2 },
     { 0x028C, 0x0245 },
     { 0x0292, 0x01B7 },
+    { 0x029E, 0xA7B0 },
     { 0x0345, 0x0399 },
     { 0x0371, 0x0370 },
     { 0x0373, 0x0372 },
@@ -316,6 +321,7 @@
     { 0x03F0, 0x039A },
     { 0x03F1, 0x03A1 },
     { 0x03F2, 0x03F9 },
+    { 0x03F3, 0x037F },
     { 0x03F5, 0x0395 },
     { 0x03F8, 0x03F7 },
     { 0x03FB, 0x03FA },
@@ -463,6 +469,10 @@
     { 0x0523, 0x0522 },
     { 0x0525, 0x0524 },
     { 0x0527, 0x0526 },
+    { 0x0529, 0x0528 },
+    { 0x052B, 0x052A },
+    { 0x052D, 0x052C },
+    { 0x052F, 0x052E },
     { 0x0561, 0x0531 },
     { 0x0562, 0x0532 },
     { 0x0563, 0x0533 },
@@ -951,6 +961,8 @@
     { 0xA693, 0xA692 },
     { 0xA695, 0xA694 },
     { 0xA697, 0xA696 },
+    { 0xA699, 0xA698 },
+    { 0xA69B, 0xA69A },
     { 0xA723, 0xA722 },
     { 0xA725, 0xA724 },
     { 0xA727, 0xA726 },
@@ -999,6 +1011,11 @@
     { 0xA78C, 0xA78B },
     { 0xA791, 0xA790 },
     { 0xA793, 0xA792 },
+    { 0xA797, 0xA796 },
+    { 0xA799, 0xA798 },
+    { 0xA79B, 0xA79A },
+    { 0xA79D, 0xA79C },
+    { 0xA79F, 0xA79E },
     { 0xA7A1, 0xA7A0 },
     { 0xA7A3, 0xA7A2 },
     { 0xA7A5, 0xA7A4 },
@@ -1069,7 +1086,39 @@
     { 0x1044C, 0x10424 },
     { 0x1044D, 0x10425 },
     { 0x1044E, 0x10426 },
-    { 0x1044F, 0x10427 }
+    { 0x1044F, 0x10427 },
+    { 0x118C0, 0x118A0 },
+    { 0x118C1, 0x118A1 },
+    { 0x118C2, 0x118A2 },
+    { 0x118C3, 0x118A3 },
+    { 0x118C4, 0x118A4 },
+    { 0x118C5, 0x118A5 },
+    { 0x118C6, 0x118A6 },
+    { 0x118C7, 0x118A7 },
+    { 0x118C8, 0x118A8 },
+    { 0x118C9, 0x118A9 },
+    { 0x118CA, 0x118AA },
+    { 0x118CB, 0x118AB },
+    { 0x118CC, 0x118AC },
+    { 0x118CD, 0x118AD },
+    { 0x118CE, 0x118AE },
+    { 0x118CF, 0x118AF },
+    { 0x118D0, 0x118B0 },
+    { 0x118D1, 0x118B1 },
+    { 0x118D2, 0x118B2 },
+    { 0x118D3, 0x118B3 },
+    { 0x118D4, 0x118B4 },
+    { 0x118D5, 0x118B5 },
+    { 0x118D6, 0x118B6 },
+    { 0x118D7, 0x118B7 },
+    { 0x118D8, 0x118B8 },
+    { 0x118D9, 0x118B9 },
+    { 0x118DA, 0x118BA },
+    { 0x118DB, 0x118BB },
+    { 0x118DC, 0x118BC },
+    { 0x118DD, 0x118BD },
+    { 0x118DE, 0x118BE },
+    { 0x118DF, 0x118BF }
 
 #define MAP(c) uc_totitle (c)
 #include "test-mapping-part2.h"
--- a/tests/unicase/test-uc_toupper.c
+++ b/tests/unicase/test-uc_toupper.c
@@ -15,7 +15,7 @@
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
 
 #include "test-mapping-part1.h"
 
@@ -235,13 +235,16 @@
     { 0x0257, 0x018A },
     { 0x0259, 0x018F },
     { 0x025B, 0x0190 },
+    { 0x025C, 0xA7AB },
     { 0x0260, 0x0193 },
+    { 0x0261, 0xA7AC },
     { 0x0263, 0x0194 },
     { 0x0265, 0xA78D },
     { 0x0266, 0xA7AA },
     { 0x0268, 0x0197 },
     { 0x0269, 0x0196 },
     { 0x026B, 0x2C62 },
+    { 0x026C, 0xA7AD },
     { 0x026F, 0x019C },
     { 0x0271, 0x2C6E },
     { 0x0272, 0x019D },
@@ -249,12 +252,14 @@
     { 0x027D, 0x2C64 },
     { 0x0280, 0x01A6 },
     { 0x0283, 0x01A9 },
+    { 0x0287, 0xA7B1 },
     { 0x0288, 0x01AE },
     { 0x0289, 0x0244 },
     { 0x028A, 0x01B1 },
     { 0x028B, 0x01B2 },
     { 0x028C, 0x0245 },
     { 0x0292, 0x01B7 },
+    { 0x029E, 0xA7B0 },
     { 0x0345, 0x0399 },
     { 0x0371, 0x0370 },
     { 0x0373, 0x0372 },
@@ -316,6 +321,7 @@
     { 0x03F0, 0x039A },
     { 0x03F1, 0x03A1 },
     { 0x03F2, 0x03F9 },
+    { 0x03F3, 0x037F },
     { 0x03F5, 0x0395 },
     { 0x03F8, 0x03F7 },
     { 0x03FB, 0x03FA },
@@ -463,6 +469,10 @@
     { 0x0523, 0x0522 },
     { 0x0525, 0x0524 },
     { 0x0527, 0x0526 },
+    { 0x0529, 0x0528 },
+    { 0x052B, 0x052A },
+    { 0x052D, 0x052C },
+    { 0x052F, 0x052E },
     { 0x0561, 0x0531 },
     { 0x0562, 0x0532 },
     { 0x0563, 0x0533 },
@@ -951,6 +961,8 @@
     { 0xA693, 0xA692 },
     { 0xA695, 0xA694 },
     { 0xA697, 0xA696 },
+    { 0xA699, 0xA698 },
+    { 0xA69B, 0xA69A },
     { 0xA723, 0xA722 },
     { 0xA725, 0xA724 },
     { 0xA727, 0xA726 },
@@ -999,6 +1011,11 @@
     { 0xA78C, 0xA78B },
     { 0xA791, 0xA790 },
     { 0xA793, 0xA792 },
+    { 0xA797, 0xA796 },
+    { 0xA799, 0xA798 },
+    { 0xA79B, 0xA79A },
+    { 0xA79D, 0xA79C },
+    { 0xA79F, 0xA79E },
     { 0xA7A1, 0xA7A0 },
     { 0xA7A3, 0xA7A2 },
     { 0xA7A5, 0xA7A4 },
@@ -1069,7 +1086,39 @@
     { 0x1044C, 0x10424 },
     { 0x1044D, 0x10425 },
     { 0x1044E, 0x10426 },
-    { 0x1044F, 0x10427 }
+    { 0x1044F, 0x10427 },
+    { 0x118C0, 0x118A0 },
+    { 0x118C1, 0x118A1 },
+    { 0x118C2, 0x118A2 },
+    { 0x118C3, 0x118A3 },
+    { 0x118C4, 0x118A4 },
+    { 0x118C5, 0x118A5 },
+    { 0x118C6, 0x118A6 },
+    { 0x118C7, 0x118A7 },
+    { 0x118C8, 0x118A8 },
+    { 0x118C9, 0x118A9 },
+    { 0x118CA, 0x118AA },
+    { 0x118CB, 0x118AB },
+    { 0x118CC, 0x118AC },
+    { 0x118CD, 0x118AD },
+    { 0x118CE, 0x118AE },
+    { 0x118CF, 0x118AF },
+    { 0x118D0, 0x118B0 },
+    { 0x118D1, 0x118B1 },
+    { 0x118D2, 0x118B2 },
+    { 0x118D3, 0x118B3 },
+    { 0x118D4, 0x118B4 },
+    { 0x118D5, 0x118B5 },
+    { 0x118D6, 0x118B6 },
+    { 0x118D7, 0x118B7 },
+    { 0x118D8, 0x118B8 },
+    { 0x118D9, 0x118B9 },
+    { 0x118DA, 0x118BA },
+    { 0x118DB, 0x118BB },
+    { 0x118DC, 0x118BC },
+    { 0x118DD, 0x118BD },
+    { 0x118DE, 0x118BE },
+    { 0x118DF, 0x118BF }
 
 #define MAP(c) uc_toupper (c)
 #include "test-mapping-part2.h"
--- a/tests/unictype/test-categ_C.c
+++ b/tests/unictype/test-categ_C.c
@@ -21,15 +21,15 @@
     { 0x007F, 0x009F },
     { 0x00AD, 0x00AD },
     { 0x0378, 0x0379 },
-    { 0x037F, 0x0383 },
+    { 0x0380, 0x0383 },
     { 0x038B, 0x038B },
     { 0x038D, 0x038D },
     { 0x03A2, 0x03A2 },
-    { 0x0528, 0x0530 },
+    { 0x0530, 0x0530 },
     { 0x0557, 0x0558 },
     { 0x0560, 0x0560 },
     { 0x0588, 0x0588 },
-    { 0x058B, 0x058E },
+    { 0x058B, 0x058C },
     { 0x0590, 0x0590 },
     { 0x05C8, 0x05CF },
     { 0x05EB, 0x05EF },
@@ -44,11 +44,7 @@
     { 0x083F, 0x083F },
     { 0x085C, 0x085D },
     { 0x085F, 0x089F },
-    { 0x08A1, 0x08A1 },
-    { 0x08AD, 0x08E3 },
-    { 0x08FF, 0x08FF },
-    { 0x0978, 0x0978 },
-    { 0x0980, 0x0980 },
+    { 0x08B3, 0x08E3 },
     { 0x0984, 0x0984 },
     { 0x098D, 0x098E },
     { 0x0991, 0x0992 },
@@ -121,12 +117,11 @@
     { 0x0BCE, 0x0BCF },
     { 0x0BD1, 0x0BD6 },
     { 0x0BD8, 0x0BE5 },
-    { 0x0BFB, 0x0C00 },
+    { 0x0BFB, 0x0BFF },
     { 0x0C04, 0x0C04 },
     { 0x0C0D, 0x0C0D },
     { 0x0C11, 0x0C11 },
     { 0x0C29, 0x0C29 },
-    { 0x0C34, 0x0C34 },
     { 0x0C3A, 0x0C3C },
     { 0x0C45, 0x0C45 },
     { 0x0C49, 0x0C49 },
@@ -135,7 +130,7 @@
     { 0x0C5A, 0x0C5F },
     { 0x0C64, 0x0C65 },
     { 0x0C70, 0x0C77 },
-    { 0x0C80, 0x0C81 },
+    { 0x0C80, 0x0C80 },
     { 0x0C84, 0x0C84 },
     { 0x0C8D, 0x0C8D },
     { 0x0C91, 0x0C91 },
@@ -149,7 +144,7 @@
     { 0x0CDF, 0x0CDF },
     { 0x0CE4, 0x0CE5 },
     { 0x0CF0, 0x0CF0 },
-    { 0x0CF3, 0x0D01 },
+    { 0x0CF3, 0x0D00 },
     { 0x0D04, 0x0D04 },
     { 0x0D0D, 0x0D0D },
     { 0x0D11, 0x0D11 },
@@ -170,7 +165,8 @@
     { 0x0DCB, 0x0DCE },
     { 0x0DD5, 0x0DD5 },
     { 0x0DD7, 0x0DD7 },
-    { 0x0DE0, 0x0DF1 },
+    { 0x0DE0, 0x0DE5 },
+    { 0x0DF0, 0x0DF1 },
     { 0x0DF5, 0x0E00 },
     { 0x0E3B, 0x0E3E },
     { 0x0E5C, 0x0E80 },
@@ -221,7 +217,7 @@
     { 0x139A, 0x139F },
     { 0x13F5, 0x13FF },
     { 0x169D, 0x169F },
-    { 0x16F1, 0x16FF },
+    { 0x16F9, 0x16FF },
     { 0x170D, 0x170D },
     { 0x1715, 0x171F },
     { 0x1737, 0x173F },
@@ -237,7 +233,7 @@
     { 0x1878, 0x187F },
     { 0x18AB, 0x18AF },
     { 0x18F6, 0x18FF },
-    { 0x191D, 0x191F },
+    { 0x191F, 0x191F },
     { 0x192C, 0x192F },
     { 0x193C, 0x193F },
     { 0x1941, 0x1943 },
@@ -251,7 +247,8 @@
     { 0x1A7D, 0x1A7E },
     { 0x1A8A, 0x1A8F },
     { 0x1A9A, 0x1A9F },
-    { 0x1AAE, 0x1AFF },
+    { 0x1AAE, 0x1AAF },
+    { 0x1ABF, 0x1AFF },
     { 0x1B4C, 0x1B4F },
     { 0x1B7D, 0x1B7F },
     { 0x1BF4, 0x1BFB },
@@ -259,8 +256,9 @@
     { 0x1C4A, 0x1C4C },
     { 0x1C80, 0x1CBF },
     { 0x1CC8, 0x1CCF },
-    { 0x1CF7, 0x1CFF },
-    { 0x1DE7, 0x1DFB },
+    { 0x1CF7, 0x1CF7 },
+    { 0x1CFA, 0x1CFF },
+    { 0x1DF6, 0x1DFB },
     { 0x1F16, 0x1F17 },
     { 0x1F1E, 0x1F1F },
     { 0x1F46, 0x1F47 },
@@ -283,15 +281,17 @@
     { 0x2072, 0x2073 },
     { 0x208F, 0x208F },
     { 0x209D, 0x209F },
-    { 0x20BB, 0x20CF },
+    { 0x20BE, 0x20CF },
     { 0x20F1, 0x20FF },
     { 0x218A, 0x218F },
-    { 0x23F4, 0x23FF },
+    { 0x23FB, 0x23FF },
     { 0x2427, 0x243F },
     { 0x244B, 0x245F },
-    { 0x2700, 0x2700 },
-    { 0x2B4D, 0x2B4F },
-    { 0x2B5A, 0x2BFF },
+    { 0x2B74, 0x2B75 },
+    { 0x2B96, 0x2B97 },
+    { 0x2BBA, 0x2BBC },
+    { 0x2BC9, 0x2BC9 },
+    { 0x2BD2, 0x2BFF },
     { 0x2C2F, 0x2C2F },
     { 0x2C5F, 0x2C5F },
     { 0x2CF4, 0x2CF8 },
@@ -309,7 +309,7 @@
     { 0x2DCF, 0x2DCF },
     { 0x2DD7, 0x2DD7 },
     { 0x2DDF, 0x2DDF },
-    { 0x2E3C, 0x2E7F },
+    { 0x2E43, 0x2E7F },
     { 0x2E9A, 0x2E9A },
     { 0x2EF4, 0x2EFF },
     { 0x2FD6, 0x2FEF },
@@ -328,11 +328,11 @@
     { 0xA48D, 0xA48F },
     { 0xA4C7, 0xA4CF },
     { 0xA62C, 0xA63F },
-    { 0xA698, 0xA69E },
+    { 0xA69E, 0xA69E },
     { 0xA6F8, 0xA6FF },
     { 0xA78F, 0xA78F },
-    { 0xA794, 0xA79F },
-    { 0xA7AB, 0xA7F7 },
+    { 0xA7AE, 0xA7AF },
+    { 0xA7B2, 0xA7F6 },
     { 0xA82C, 0xA82F },
     { 0xA83A, 0xA83F },
     { 0xA878, 0xA87F },
@@ -343,18 +343,19 @@
     { 0xA97D, 0xA97F },
     { 0xA9CE, 0xA9CE },
     { 0xA9DA, 0xA9DD },
-    { 0xA9E0, 0xA9FF },
+    { 0xA9FF, 0xA9FF },
     { 0xAA37, 0xAA3F },
     { 0xAA4E, 0xAA4F },
     { 0xAA5A, 0xAA5B },
-    { 0xAA7C, 0xAA7F },
     { 0xAAC3, 0xAADA },
     { 0xAAF7, 0xAB00 },
     { 0xAB07, 0xAB08 },
     { 0xAB0F, 0xAB10 },
     { 0xAB17, 0xAB1F },
     { 0xAB27, 0xAB27 },
-    { 0xAB2F, 0xABBF },
+    { 0xAB2F, 0xAB2F },
+    { 0xAB60, 0xAB63 },
+    { 0xAB66, 0xABBF },
     { 0xABEE, 0xABEF },
     { 0xABFA, 0xABFF },
     { 0xD7A4, 0xD7AF },
@@ -375,7 +376,7 @@
     { 0xFDC8, 0xFDEF },
     { 0xFDFE, 0xFDFF },
     { 0xFE1A, 0xFE1F },
-    { 0xFE27, 0xFE2F },
+    { 0xFE2E, 0xFE2F },
     { 0xFE53, 0xFE53 },
     { 0xFE67, 0xFE67 },
     { 0xFE6C, 0xFE6F },
@@ -398,26 +399,35 @@
     { 0x100FB, 0x100FF },
     { 0x10103, 0x10106 },
     { 0x10134, 0x10136 },
-    { 0x1018B, 0x1018F },
-    { 0x1019C, 0x101CF },
+    { 0x1018D, 0x1018F },
+    { 0x1019C, 0x1019F },
+    { 0x101A1, 0x101CF },
     { 0x101FE, 0x1027F },
     { 0x1029D, 0x1029F },
-    { 0x102D1, 0x102FF },
-    { 0x1031F, 0x1031F },
+    { 0x102D1, 0x102DF },
+    { 0x102FC, 0x102FF },
     { 0x10324, 0x1032F },
-    { 0x1034B, 0x1037F },
+    { 0x1034B, 0x1034F },
+    { 0x1037B, 0x1037F },
     { 0x1039E, 0x1039E },
     { 0x103C4, 0x103C7 },
     { 0x103D6, 0x103FF },
     { 0x1049E, 0x1049F },
-    { 0x104AA, 0x107FF },
+    { 0x104AA, 0x104FF },
+    { 0x10528, 0x1052F },
+    { 0x10564, 0x1056E },
+    { 0x10570, 0x105FF },
+    { 0x10737, 0x1073F },
+    { 0x10756, 0x1075F },
+    { 0x10768, 0x107FF },
     { 0x10806, 0x10807 },
     { 0x10809, 0x10809 },
     { 0x10836, 0x10836 },
     { 0x10839, 0x1083B },
     { 0x1083D, 0x1083E },
     { 0x10856, 0x10856 },
-    { 0x10860, 0x108FF },
+    { 0x1089F, 0x108A6 },
+    { 0x108B0, 0x108FF },
     { 0x1091C, 0x1091E },
     { 0x1093A, 0x1093E },
     { 0x10940, 0x1097F },
@@ -431,34 +441,83 @@
     { 0x10A3B, 0x10A3E },
     { 0x10A48, 0x10A4F },
     { 0x10A59, 0x10A5F },
-    { 0x10A80, 0x10AFF },
+    { 0x10AA0, 0x10ABF },
+    { 0x10AE7, 0x10AEA },
+    { 0x10AF7, 0x10AFF },
     { 0x10B36, 0x10B38 },
     { 0x10B56, 0x10B57 },
     { 0x10B73, 0x10B77 },
-    { 0x10B80, 0x10BFF },
+    { 0x10B92, 0x10B98 },
+    { 0x10B9D, 0x10BA8 },
+    { 0x10BB0, 0x10BFF },
     { 0x10C49, 0x10E5F },
     { 0x10E7F, 0x10FFF },
     { 0x1104E, 0x11051 },
-    { 0x11070, 0x1107F },
+    { 0x11070, 0x1107E },
     { 0x110BD, 0x110BD },
     { 0x110C2, 0x110CF },
     { 0x110E9, 0x110EF },
     { 0x110FA, 0x110FF },
     { 0x11135, 0x11135 },
-    { 0x11144, 0x1117F },
-    { 0x111C9, 0x111CF },
-    { 0x111DA, 0x1167F },
+    { 0x11144, 0x1114F },
+    { 0x11177, 0x1117F },
+    { 0x111C9, 0x111CC },
+    { 0x111CE, 0x111CF },
+    { 0x111DB, 0x111E0 },
+    { 0x111F5, 0x111FF },
+    { 0x11212, 0x11212 },
+    { 0x1123E, 0x112AF },
+    { 0x112EB, 0x112EF },
+    { 0x112FA, 0x11300 },
+    { 0x11304, 0x11304 },
+    { 0x1130D, 0x1130E },
+    { 0x11311, 0x11312 },
+    { 0x11329, 0x11329 },
+    { 0x11331, 0x11331 },
+    { 0x11334, 0x11334 },
+    { 0x1133A, 0x1133B },
+    { 0x11345, 0x11346 },
+    { 0x11349, 0x1134A },
+    { 0x1134E, 0x11356 },
+    { 0x11358, 0x1135C },
+    { 0x11364, 0x11365 },
+    { 0x1136D, 0x1136F },
+    { 0x11375, 0x1147F },
+    { 0x114C8, 0x114CF },
+    { 0x114DA, 0x1157F },
+    { 0x115B6, 0x115B7 },
+    { 0x115CA, 0x115FF },
+    { 0x11645, 0x1164F },
+    { 0x1165A, 0x1167F },
     { 0x116B8, 0x116BF },
-    { 0x116CA, 0x11FFF },
-    { 0x1236F, 0x123FF },
-    { 0x12463, 0x1246F },
-    { 0x12474, 0x12FFF },
+    { 0x116CA, 0x1189F },
+    { 0x118F3, 0x118FE },
+    { 0x11900, 0x11ABF },
+    { 0x11AF9, 0x11FFF },
+    { 0x12399, 0x123FF },
+    { 0x1246F, 0x1246F },
+    { 0x12475, 0x12FFF },
     { 0x1342F, 0x167FF },
-    { 0x16A39, 0x16EFF },
+    { 0x16A39, 0x16A3F },
+    { 0x16A5F, 0x16A5F },
+    { 0x16A6A, 0x16A6D },
+    { 0x16A70, 0x16ACF },
+    { 0x16AEE, 0x16AEF },
+    { 0x16AF6, 0x16AFF },
+    { 0x16B46, 0x16B4F },
+    { 0x16B5A, 0x16B5A },
+    { 0x16B62, 0x16B62 },
+    { 0x16B78, 0x16B7C },
+    { 0x16B90, 0x16EFF },
     { 0x16F45, 0x16F4F },
     { 0x16F7F, 0x16F8E },
     { 0x16FA0, 0x1AFFF },
-    { 0x1B002, 0x1CFFF },
+    { 0x1B002, 0x1BBFF },
+    { 0x1BC6B, 0x1BC6F },
+    { 0x1BC7D, 0x1BC7F },
+    { 0x1BC89, 0x1BC8F },
+    { 0x1BC9A, 0x1BC9B },
+    { 0x1BCA0, 0x1CFFF },
     { 0x1D0F6, 0x1D0FF },
     { 0x1D127, 0x1D128 },
     { 0x1D173, 0x1D17A },
@@ -486,7 +545,9 @@
     { 0x1D551, 0x1D551 },
     { 0x1D6A6, 0x1D6A7 },
     { 0x1D7CC, 0x1D7CD },
-    { 0x1D800, 0x1EDFF },
+    { 0x1D800, 0x1E7FF },
+    { 0x1E8C5, 0x1E8C6 },
+    { 0x1E8D7, 0x1EDFF },
     { 0x1EE04, 0x1EE04 },
     { 0x1EE20, 0x1EE20 },
     { 0x1EE23, 0x1EE23 },
@@ -524,10 +585,10 @@
     { 0x1F02C, 0x1F02F },
     { 0x1F094, 0x1F09F },
     { 0x1F0AF, 0x1F0B0 },
-    { 0x1F0BF, 0x1F0C0 },
+    { 0x1F0C0, 0x1F0C0 },
     { 0x1F0D0, 0x1F0D0 },
-    { 0x1F0E0, 0x1F0FF },
-    { 0x1F10B, 0x1F10F },
+    { 0x1F0F6, 0x1F0FF },
+    { 0x1F10D, 0x1F10F },
     { 0x1F12F, 0x1F12F },
     { 0x1F16C, 0x1F16F },
     { 0x1F19B, 0x1F1E5 },
@@ -535,24 +596,25 @@
     { 0x1F23B, 0x1F23F },
     { 0x1F249, 0x1F24F },
     { 0x1F252, 0x1F2FF },
-    { 0x1F321, 0x1F32F },
-    { 0x1F336, 0x1F336 },
-    { 0x1F37D, 0x1F37F },
-    { 0x1F394, 0x1F39F },
-    { 0x1F3C5, 0x1F3C5 },
-    { 0x1F3CB, 0x1F3DF },
-    { 0x1F3F1, 0x1F3FF },
-    { 0x1F43F, 0x1F43F },
-    { 0x1F441, 0x1F441 },
-    { 0x1F4F8, 0x1F4F8 },
-    { 0x1F4FD, 0x1F4FF },
-    { 0x1F53E, 0x1F53F },
-    { 0x1F544, 0x1F54F },
-    { 0x1F568, 0x1F5FA },
-    { 0x1F641, 0x1F644 },
-    { 0x1F650, 0x1F67F },
-    { 0x1F6C6, 0x1F6FF },
-    { 0x1F774, 0x1FFFF },
+    { 0x1F32D, 0x1F32F },
+    { 0x1F37E, 0x1F37F },
+    { 0x1F3CF, 0x1F3D3 },
+    { 0x1F3F8, 0x1F3FF },
+    { 0x1F4FF, 0x1F4FF },
+    { 0x1F54B, 0x1F54F },
+    { 0x1F57A, 0x1F57A },
+    { 0x1F5A4, 0x1F5A4 },
+    { 0x1F643, 0x1F644 },
+    { 0x1F6D0, 0x1F6DF },
+    { 0x1F6ED, 0x1F6EF },
+    { 0x1F6F4, 0x1F6FF },
+    { 0x1F774, 0x1F77F },
+    { 0x1F7D5, 0x1F7FF },
+    { 0x1F80C, 0x1F80F },
+    { 0x1F848, 0x1F84F },
+    { 0x1F85A, 0x1F85F },
+    { 0x1F888, 0x1F88F },
+    { 0x1F8AE, 0x1FFFF },
     { 0x2A6D7, 0x2A6FF },
     { 0x2B735, 0x2B73F },
     { 0x2B81E, 0x2F7FF },
--- a/tests/unictype/test-categ_Cf.c
+++ b/tests/unictype/test-categ_Cf.c
@@ -18,7 +18,7 @@
 #include "test-predicate-part1.h"
 
     { 0x00AD, 0x00AD },
-    { 0x0600, 0x0604 },
+    { 0x0600, 0x0605 },
     { 0x061C, 0x061C },
     { 0x06DD, 0x06DD },
     { 0x070F, 0x070F },
@@ -30,6 +30,7 @@
     { 0xFEFF, 0xFEFF },
     { 0xFFF9, 0xFFFB },
     { 0x110BD, 0x110BD },
+    { 0x1BCA0, 0x1BCA3 },
     { 0x1D173, 0x1D17A },
     { 0xE0001, 0xE0001 },
     { 0xE0020, 0xE007F }
--- a/tests/unictype/test-categ_Cn.c
+++ b/tests/unictype/test-categ_Cn.c
@@ -18,20 +18,19 @@
 #include "test-predicate-part1.h"
 
     { 0x0378, 0x0379 },
-    { 0x037F, 0x0383 },
+    { 0x0380, 0x0383 },
     { 0x038B, 0x038B },
     { 0x038D, 0x038D },
     { 0x03A2, 0x03A2 },
-    { 0x0528, 0x0530 },
+    { 0x0530, 0x0530 },
     { 0x0557, 0x0558 },
     { 0x0560, 0x0560 },
     { 0x0588, 0x0588 },
-    { 0x058B, 0x058E },
+    { 0x058B, 0x058C },
     { 0x0590, 0x0590 },
     { 0x05C8, 0x05CF },
     { 0x05EB, 0x05EF },
     { 0x05F5, 0x05FF },
-    { 0x0605, 0x0605 },
     { 0x061D, 0x061D },
     { 0x070E, 0x070E },
     { 0x074B, 0x074C },
@@ -41,11 +40,7 @@
     { 0x083F, 0x083F },
     { 0x085C, 0x085D },
     { 0x085F, 0x089F },
-    { 0x08A1, 0x08A1 },
-    { 0x08AD, 0x08E3 },
-    { 0x08FF, 0x08FF },
-    { 0x0978, 0x0978 },
-    { 0x0980, 0x0980 },
+    { 0x08B3, 0x08E3 },
     { 0x0984, 0x0984 },
     { 0x098D, 0x098E },
     { 0x0991, 0x0992 },
@@ -118,12 +113,11 @@
     { 0x0BCE, 0x0BCF },
     { 0x0BD1, 0x0BD6 },
     { 0x0BD8, 0x0BE5 },
-    { 0x0BFB, 0x0C00 },
+    { 0x0BFB, 0x0BFF },
     { 0x0C04, 0x0C04 },
     { 0x0C0D, 0x0C0D },
     { 0x0C11, 0x0C11 },
     { 0x0C29, 0x0C29 },
-    { 0x0C34, 0x0C34 },
     { 0x0C3A, 0x0C3C },
     { 0x0C45, 0x0C45 },
     { 0x0C49, 0x0C49 },
@@ -132,7 +126,7 @@
     { 0x0C5A, 0x0C5F },
     { 0x0C64, 0x0C65 },
     { 0x0C70, 0x0C77 },
-    { 0x0C80, 0x0C81 },
+    { 0x0C80, 0x0C80 },
     { 0x0C84, 0x0C84 },
     { 0x0C8D, 0x0C8D },
     { 0x0C91, 0x0C91 },
@@ -146,7 +140,7 @@
     { 0x0CDF, 0x0CDF },
     { 0x0CE4, 0x0CE5 },
     { 0x0CF0, 0x0CF0 },
-    { 0x0CF3, 0x0D01 },
+    { 0x0CF3, 0x0D00 },
     { 0x0D04, 0x0D04 },
     { 0x0D0D, 0x0D0D },
     { 0x0D11, 0x0D11 },
@@ -167,7 +161,8 @@
     { 0x0DCB, 0x0DCE },
     { 0x0DD5, 0x0DD5 },
     { 0x0DD7, 0x0DD7 },
-    { 0x0DE0, 0x0DF1 },
+    { 0x0DE0, 0x0DE5 },
+    { 0x0DF0, 0x0DF1 },
     { 0x0DF5, 0x0E00 },
     { 0x0E3B, 0x0E3E },
     { 0x0E5C, 0x0E80 },
@@ -218,7 +213,7 @@
     { 0x139A, 0x139F },
     { 0x13F5, 0x13FF },
     { 0x169D, 0x169F },
-    { 0x16F1, 0x16FF },
+    { 0x16F9, 0x16FF },
     { 0x170D, 0x170D },
     { 0x1715, 0x171F },
     { 0x1737, 0x173F },
@@ -234,7 +229,7 @@
     { 0x1878, 0x187F },
     { 0x18AB, 0x18AF },
     { 0x18F6, 0x18FF },
-    { 0x191D, 0x191F },
+    { 0x191F, 0x191F },
     { 0x192C, 0x192F },
     { 0x193C, 0x193F },
     { 0x1941, 0x1943 },
@@ -248,7 +243,8 @@
     { 0x1A7D, 0x1A7E },
     { 0x1A8A, 0x1A8F },
     { 0x1A9A, 0x1A9F },
-    { 0x1AAE, 0x1AFF },
+    { 0x1AAE, 0x1AAF },
+    { 0x1ABF, 0x1AFF },
     { 0x1B4C, 0x1B4F },
     { 0x1B7D, 0x1B7F },
     { 0x1BF4, 0x1BFB },
@@ -256,8 +252,9 @@
     { 0x1C4A, 0x1C4C },
     { 0x1C80, 0x1CBF },
     { 0x1CC8, 0x1CCF },
-    { 0x1CF7, 0x1CFF },
-    { 0x1DE7, 0x1DFB },
+    { 0x1CF7, 0x1CF7 },
+    { 0x1CFA, 0x1CFF },
+    { 0x1DF6, 0x1DFB },
     { 0x1F16, 0x1F17 },
     { 0x1F1E, 0x1F1F },
     { 0x1F46, 0x1F47 },
@@ -278,15 +275,17 @@
     { 0x2072, 0x2073 },
     { 0x208F, 0x208F },
     { 0x209D, 0x209F },
-    { 0x20BB, 0x20CF },
+    { 0x20BE, 0x20CF },
     { 0x20F1, 0x20FF },
     { 0x218A, 0x218F },
-    { 0x23F4, 0x23FF },
+    { 0x23FB, 0x23FF },
     { 0x2427, 0x243F },
     { 0x244B, 0x245F },
-    { 0x2700, 0x2700 },
-    { 0x2B4D, 0x2B4F },
-    { 0x2B5A, 0x2BFF },
+    { 0x2B74, 0x2B75 },
+    { 0x2B96, 0x2B97 },
+    { 0x2BBA, 0x2BBC },
+    { 0x2BC9, 0x2BC9 },
+    { 0x2BD2, 0x2BFF },
     { 0x2C2F, 0x2C2F },
     { 0x2C5F, 0x2C5F },
     { 0x2CF4, 0x2CF8 },
@@ -304,7 +303,7 @@
     { 0x2DCF, 0x2DCF },
     { 0x2DD7, 0x2DD7 },
     { 0x2DDF, 0x2DDF },
-    { 0x2E3C, 0x2E7F },
+    { 0x2E43, 0x2E7F },
     { 0x2E9A, 0x2E9A },
     { 0x2EF4, 0x2EFF },
     { 0x2FD6, 0x2FEF },
@@ -323,11 +322,11 @@
     { 0xA48D, 0xA48F },
     { 0xA4C7, 0xA4CF },
     { 0xA62C, 0xA63F },
-    { 0xA698, 0xA69E },
+    { 0xA69E, 0xA69E },
     { 0xA6F8, 0xA6FF },
     { 0xA78F, 0xA78F },
-    { 0xA794, 0xA79F },
-    { 0xA7AB, 0xA7F7 },
+    { 0xA7AE, 0xA7AF },
+    { 0xA7B2, 0xA7F6 },
     { 0xA82C, 0xA82F },
     { 0xA83A, 0xA83F },
     { 0xA878, 0xA87F },
@@ -338,18 +337,19 @@
     { 0xA97D, 0xA97F },
     { 0xA9CE, 0xA9CE },
     { 0xA9DA, 0xA9DD },
-    { 0xA9E0, 0xA9FF },
+    { 0xA9FF, 0xA9FF },
     { 0xAA37, 0xAA3F },
     { 0xAA4E, 0xAA4F },
     { 0xAA5A, 0xAA5B },
-    { 0xAA7C, 0xAA7F },
     { 0xAAC3, 0xAADA },
     { 0xAAF7, 0xAB00 },
     { 0xAB07, 0xAB08 },
     { 0xAB0F, 0xAB10 },
     { 0xAB17, 0xAB1F },
     { 0xAB27, 0xAB27 },
-    { 0xAB2F, 0xABBF },
+    { 0xAB2F, 0xAB2F },
+    { 0xAB60, 0xAB63 },
+    { 0xAB66, 0xABBF },
     { 0xABEE, 0xABEF },
     { 0xABFA, 0xABFF },
     { 0xD7A4, 0xD7AF },
@@ -370,7 +370,7 @@
     { 0xFDC8, 0xFDEF },
     { 0xFDFE, 0xFDFF },
     { 0xFE1A, 0xFE1F },
-    { 0xFE27, 0xFE2F },
+    { 0xFE2E, 0xFE2F },
     { 0xFE53, 0xFE53 },
     { 0xFE67, 0xFE67 },
     { 0xFE6C, 0xFE6F },
@@ -394,26 +394,35 @@
     { 0x100FB, 0x100FF },
     { 0x10103, 0x10106 },
     { 0x10134, 0x10136 },
-    { 0x1018B, 0x1018F },
-    { 0x1019C, 0x101CF },
+    { 0x1018D, 0x1018F },
+    { 0x1019C, 0x1019F },
+    { 0x101A1, 0x101CF },
     { 0x101FE, 0x1027F },
     { 0x1029D, 0x1029F },
-    { 0x102D1, 0x102FF },
-    { 0x1031F, 0x1031F },
+    { 0x102D1, 0x102DF },
+    { 0x102FC, 0x102FF },
     { 0x10324, 0x1032F },
-    { 0x1034B, 0x1037F },
+    { 0x1034B, 0x1034F },
+    { 0x1037B, 0x1037F },
     { 0x1039E, 0x1039E },
     { 0x103C4, 0x103C7 },
     { 0x103D6, 0x103FF },
     { 0x1049E, 0x1049F },
-    { 0x104AA, 0x107FF },
+    { 0x104AA, 0x104FF },
+    { 0x10528, 0x1052F },
+    { 0x10564, 0x1056E },
+    { 0x10570, 0x105FF },
+    { 0x10737, 0x1073F },
+    { 0x10756, 0x1075F },
+    { 0x10768, 0x107FF },
     { 0x10806, 0x10807 },
     { 0x10809, 0x10809 },
     { 0x10836, 0x10836 },
     { 0x10839, 0x1083B },
     { 0x1083D, 0x1083E },
     { 0x10856, 0x10856 },
-    { 0x10860, 0x108FF },
+    { 0x1089F, 0x108A6 },
+    { 0x108B0, 0x108FF },
     { 0x1091C, 0x1091E },
     { 0x1093A, 0x1093E },
     { 0x10940, 0x1097F },
@@ -427,33 +436,82 @@
     { 0x10A3B, 0x10A3E },
     { 0x10A48, 0x10A4F },
     { 0x10A59, 0x10A5F },
-    { 0x10A80, 0x10AFF },
+    { 0x10AA0, 0x10ABF },
+    { 0x10AE7, 0x10AEA },
+    { 0x10AF7, 0x10AFF },
     { 0x10B36, 0x10B38 },
     { 0x10B56, 0x10B57 },
     { 0x10B73, 0x10B77 },
-    { 0x10B80, 0x10BFF },
+    { 0x10B92, 0x10B98 },
+    { 0x10B9D, 0x10BA8 },
+    { 0x10BB0, 0x10BFF },
     { 0x10C49, 0x10E5F },
     { 0x10E7F, 0x10FFF },
     { 0x1104E, 0x11051 },
-    { 0x11070, 0x1107F },
+    { 0x11070, 0x1107E },
     { 0x110C2, 0x110CF },
     { 0x110E9, 0x110EF },
     { 0x110FA, 0x110FF },
     { 0x11135, 0x11135 },
-    { 0x11144, 0x1117F },
-    { 0x111C9, 0x111CF },
-    { 0x111DA, 0x1167F },
+    { 0x11144, 0x1114F },
+    { 0x11177, 0x1117F },
+    { 0x111C9, 0x111CC },
+    { 0x111CE, 0x111CF },
+    { 0x111DB, 0x111E0 },
+    { 0x111F5, 0x111FF },
+    { 0x11212, 0x11212 },
+    { 0x1123E, 0x112AF },
+    { 0x112EB, 0x112EF },
+    { 0x112FA, 0x11300 },
+    { 0x11304, 0x11304 },
+    { 0x1130D, 0x1130E },
+    { 0x11311, 0x11312 },
+    { 0x11329, 0x11329 },
+    { 0x11331, 0x11331 },
+    { 0x11334, 0x11334 },
+    { 0x1133A, 0x1133B },
+    { 0x11345, 0x11346 },
+    { 0x11349, 0x1134A },
+    { 0x1134E, 0x11356 },
+    { 0x11358, 0x1135C },
+    { 0x11364, 0x11365 },
+    { 0x1136D, 0x1136F },
+    { 0x11375, 0x1147F },
+    { 0x114C8, 0x114CF },
+    { 0x114DA, 0x1157F },
+    { 0x115B6, 0x115B7 },
+    { 0x115CA, 0x115FF },
+    { 0x11645, 0x1164F },
+    { 0x1165A, 0x1167F },
     { 0x116B8, 0x116BF },
-    { 0x116CA, 0x11FFF },
-    { 0x1236F, 0x123FF },
-    { 0x12463, 0x1246F },
-    { 0x12474, 0x12FFF },
+    { 0x116CA, 0x1189F },
+    { 0x118F3, 0x118FE },
+    { 0x11900, 0x11ABF },
+    { 0x11AF9, 0x11FFF },
+    { 0x12399, 0x123FF },
+    { 0x1246F, 0x1246F },
+    { 0x12475, 0x12FFF },
     { 0x1342F, 0x167FF },
-    { 0x16A39, 0x16EFF },
+    { 0x16A39, 0x16A3F },
+    { 0x16A5F, 0x16A5F },
+    { 0x16A6A, 0x16A6D },
+    { 0x16A70, 0x16ACF },
+    { 0x16AEE, 0x16AEF },
+    { 0x16AF6, 0x16AFF },
+    { 0x16B46, 0x16B4F },
+    { 0x16B5A, 0x16B5A },
+    { 0x16B62, 0x16B62 },
+    { 0x16B78, 0x16B7C },
+    { 0x16B90, 0x16EFF },
     { 0x16F45, 0x16F4F },
     { 0x16F7F, 0x16F8E },
     { 0x16FA0, 0x1AFFF },
-    { 0x1B002, 0x1CFFF },
+    { 0x1B002, 0x1BBFF },
+    { 0x1BC6B, 0x1BC6F },
+    { 0x1BC7D, 0x1BC7F },
+    { 0x1BC89, 0x1BC8F },
+    { 0x1BC9A, 0x1BC9B },
+    { 0x1BCA4, 0x1CFFF },
     { 0x1D0F6, 0x1D0FF },
     { 0x1D127, 0x1D128 },
     { 0x1D1DE, 0x1D1FF },
@@ -480,7 +538,9 @@
     { 0x1D551, 0x1D551 },
     { 0x1D6A6, 0x1D6A7 },
     { 0x1D7CC, 0x1D7CD },
-    { 0x1D800, 0x1EDFF },
+    { 0x1D800, 0x1E7FF },
+    { 0x1E8C5, 0x1E8C6 },
+    { 0x1E8D7, 0x1EDFF },
     { 0x1EE04, 0x1EE04 },
     { 0x1EE20, 0x1EE20 },
     { 0x1EE23, 0x1EE23 },
@@ -518,10 +578,10 @@
     { 0x1F02C, 0x1F02F },
     { 0x1F094, 0x1F09F },
     { 0x1F0AF, 0x1F0B0 },
-    { 0x1F0BF, 0x1F0C0 },
+    { 0x1F0C0, 0x1F0C0 },
     { 0x1F0D0, 0x1F0D0 },
-    { 0x1F0E0, 0x1F0FF },
-    { 0x1F10B, 0x1F10F },
+    { 0x1F0F6, 0x1F0FF },
+    { 0x1F10D, 0x1F10F },
     { 0x1F12F, 0x1F12F },
     { 0x1F16C, 0x1F16F },
     { 0x1F19B, 0x1F1E5 },
@@ -529,24 +589,25 @@
     { 0x1F23B, 0x1F23F },
     { 0x1F249, 0x1F24F },
     { 0x1F252, 0x1F2FF },
-    { 0x1F321, 0x1F32F },
-    { 0x1F336, 0x1F336 },
-    { 0x1F37D, 0x1F37F },
-    { 0x1F394, 0x1F39F },
-    { 0x1F3C5, 0x1F3C5 },
-    { 0x1F3CB, 0x1F3DF },
-    { 0x1F3F1, 0x1F3FF },
-    { 0x1F43F, 0x1F43F },
-    { 0x1F441, 0x1F441 },
-    { 0x1F4F8, 0x1F4F8 },
-    { 0x1F4FD, 0x1F4FF },
-    { 0x1F53E, 0x1F53F },
-    { 0x1F544, 0x1F54F },
-    { 0x1F568, 0x1F5FA },
-    { 0x1F641, 0x1F644 },
-    { 0x1F650, 0x1F67F },
-    { 0x1F6C6, 0x1F6FF },
-    { 0x1F774, 0x1FFFF },
+    { 0x1F32D, 0x1F32F },
+    { 0x1F37E, 0x1F37F },
+    { 0x1F3CF, 0x1F3D3 },
+    { 0x1F3F8, 0x1F3FF },
+    { 0x1F4FF, 0x1F4FF },
+    { 0x1F54B, 0x1F54F },
+    { 0x1F57A, 0x1F57A },
+    { 0x1F5A4, 0x1F5A4 },
+    { 0x1F643, 0x1F644 },
+    { 0x1F6D0, 0x1F6DF },
+    { 0x1F6ED, 0x1F6EF },
+    { 0x1F6F4, 0x1F6FF },
+    { 0x1F774, 0x1F77F },
+    { 0x1F7D5, 0x1F7FF },
+    { 0x1F80C, 0x1F80F },
+    { 0x1F848, 0x1F84F },
+    { 0x1F85A, 0x1F85F },
+    { 0x1F888, 0x1F88F },
+    { 0x1F8AE, 0x1FFFF },
     { 0x2A6D7, 0x2A6FF },
     { 0x2B735, 0x2B73F },
     { 0x2B81E, 0x2F7FF },
--- a/tests/unictype/test-categ_L.c
+++ b/tests/unictype/test-categ_L.c
@@ -32,13 +32,14 @@
     { 0x0370, 0x0374 },
     { 0x0376, 0x0377 },
     { 0x037A, 0x037D },
+    { 0x037F, 0x037F },
     { 0x0386, 0x0386 },
     { 0x0388, 0x038A },
     { 0x038C, 0x038C },
     { 0x038E, 0x03A1 },
     { 0x03A3, 0x03F5 },
     { 0x03F7, 0x0481 },
-    { 0x048A, 0x0527 },
+    { 0x048A, 0x052F },
     { 0x0531, 0x0556 },
     { 0x0559, 0x0559 },
     { 0x0561, 0x0587 },
@@ -64,14 +65,12 @@
     { 0x0824, 0x0824 },
     { 0x0828, 0x0828 },
     { 0x0840, 0x0858 },
-    { 0x08A0, 0x08A0 },
-    { 0x08A2, 0x08AC },
+    { 0x08A0, 0x08B2 },
     { 0x0904, 0x0939 },
     { 0x093D, 0x093D },
     { 0x0950, 0x0950 },
     { 0x0958, 0x0961 },
-    { 0x0971, 0x0977 },
-    { 0x0979, 0x097F },
+    { 0x0971, 0x0980 },
     { 0x0985, 0x098C },
     { 0x098F, 0x0990 },
     { 0x0993, 0x09A8 },
@@ -126,8 +125,7 @@
     { 0x0C05, 0x0C0C },
     { 0x0C0E, 0x0C10 },
     { 0x0C12, 0x0C28 },
-    { 0x0C2A, 0x0C33 },
-    { 0x0C35, 0x0C39 },
+    { 0x0C2A, 0x0C39 },
     { 0x0C3D, 0x0C3D },
     { 0x0C58, 0x0C59 },
     { 0x0C60, 0x0C61 },
@@ -211,6 +209,7 @@
     { 0x166F, 0x167F },
     { 0x1681, 0x169A },
     { 0x16A0, 0x16EA },
+    { 0x16F1, 0x16F8 },
     { 0x1700, 0x170C },
     { 0x170E, 0x1711 },
     { 0x1720, 0x1731 },
@@ -224,7 +223,7 @@
     { 0x1880, 0x18A8 },
     { 0x18AA, 0x18AA },
     { 0x18B0, 0x18F5 },
-    { 0x1900, 0x191C },
+    { 0x1900, 0x191E },
     { 0x1950, 0x196D },
     { 0x1970, 0x1974 },
     { 0x1980, 0x19AB },
@@ -319,14 +318,14 @@
     { 0xA610, 0xA61F },
     { 0xA62A, 0xA62B },
     { 0xA640, 0xA66E },
-    { 0xA67F, 0xA697 },
+    { 0xA67F, 0xA69D },
     { 0xA6A0, 0xA6E5 },
     { 0xA717, 0xA71F },
     { 0xA722, 0xA788 },
     { 0xA78B, 0xA78E },
-    { 0xA790, 0xA793 },
-    { 0xA7A0, 0xA7AA },
-    { 0xA7F8, 0xA801 },
+    { 0xA790, 0xA7AD },
+    { 0xA7B0, 0xA7B1 },
+    { 0xA7F7, 0xA801 },
     { 0xA803, 0xA805 },
     { 0xA807, 0xA80A },
     { 0xA80C, 0xA822 },
@@ -339,12 +338,15 @@
     { 0xA960, 0xA97C },
     { 0xA984, 0xA9B2 },
     { 0xA9CF, 0xA9CF },
+    { 0xA9E0, 0xA9E4 },
+    { 0xA9E6, 0xA9EF },
+    { 0xA9FA, 0xA9FE },
     { 0xAA00, 0xAA28 },
     { 0xAA40, 0xAA42 },
     { 0xAA44, 0xAA4B },
     { 0xAA60, 0xAA76 },
     { 0xAA7A, 0xAA7A },
-    { 0xAA80, 0xAAAF },
+    { 0xAA7E, 0xAAAF },
     { 0xAAB1, 0xAAB1 },
     { 0xAAB5, 0xAAB6 },
     { 0xAAB9, 0xAABD },
@@ -358,6 +360,9 @@
     { 0xAB11, 0xAB16 },
     { 0xAB20, 0xAB26 },
     { 0xAB28, 0xAB2E },
+    { 0xAB30, 0xAB5A },
+    { 0xAB5C, 0xAB5F },
+    { 0xAB64, 0xAB65 },
     { 0xABC0, 0xABE2 },
     { 0xAC00, 0xD7A3 },
     { 0xD7B0, 0xD7C6 },
@@ -396,19 +401,27 @@
     { 0x10080, 0x100FA },
     { 0x10280, 0x1029C },
     { 0x102A0, 0x102D0 },
-    { 0x10300, 0x1031E },
+    { 0x10300, 0x1031F },
     { 0x10330, 0x10340 },
     { 0x10342, 0x10349 },
+    { 0x10350, 0x10375 },
     { 0x10380, 0x1039D },
     { 0x103A0, 0x103C3 },
     { 0x103C8, 0x103CF },
     { 0x10400, 0x1049D },
+    { 0x10500, 0x10527 },
+    { 0x10530, 0x10563 },
+    { 0x10600, 0x10736 },
+    { 0x10740, 0x10755 },
+    { 0x10760, 0x10767 },
     { 0x10800, 0x10805 },
     { 0x10808, 0x10808 },
     { 0x1080A, 0x10835 },
     { 0x10837, 0x10838 },
     { 0x1083C, 0x1083C },
     { 0x1083F, 0x10855 },
+    { 0x10860, 0x10876 },
+    { 0x10880, 0x1089E },
     { 0x10900, 0x10915 },
     { 0x10920, 0x10939 },
     { 0x10980, 0x109B7 },
@@ -418,24 +431,61 @@
     { 0x10A15, 0x10A17 },
     { 0x10A19, 0x10A33 },
     { 0x10A60, 0x10A7C },
+    { 0x10A80, 0x10A9C },
+    { 0x10AC0, 0x10AC7 },
+    { 0x10AC9, 0x10AE4 },
     { 0x10B00, 0x10B35 },
     { 0x10B40, 0x10B55 },
     { 0x10B60, 0x10B72 },
+    { 0x10B80, 0x10B91 },
     { 0x10C00, 0x10C48 },
     { 0x11003, 0x11037 },
     { 0x11083, 0x110AF },
     { 0x110D0, 0x110E8 },
     { 0x11103, 0x11126 },
+    { 0x11150, 0x11172 },
+    { 0x11176, 0x11176 },
     { 0x11183, 0x111B2 },
     { 0x111C1, 0x111C4 },
+    { 0x111DA, 0x111DA },
+    { 0x11200, 0x11211 },
+    { 0x11213, 0x1122B },
+    { 0x112B0, 0x112DE },
+    { 0x11305, 0x1130C },
+    { 0x1130F, 0x11310 },
+    { 0x11313, 0x11328 },
+    { 0x1132A, 0x11330 },
+    { 0x11332, 0x11333 },
+    { 0x11335, 0x11339 },
+    { 0x1133D, 0x1133D },
+    { 0x1135D, 0x11361 },
+    { 0x11480, 0x114AF },
+    { 0x114C4, 0x114C5 },
+    { 0x114C7, 0x114C7 },
+    { 0x11580, 0x115AE },
+    { 0x11600, 0x1162F },
+    { 0x11644, 0x11644 },
     { 0x11680, 0x116AA },
-    { 0x12000, 0x1236E },
+    { 0x118A0, 0x118DF },
+    { 0x118FF, 0x118FF },
+    { 0x11AC0, 0x11AF8 },
+    { 0x12000, 0x12398 },
     { 0x13000, 0x1342E },
     { 0x16800, 0x16A38 },
+    { 0x16A40, 0x16A5E },
+    { 0x16AD0, 0x16AED },
+    { 0x16B00, 0x16B2F },
+    { 0x16B40, 0x16B43 },
+    { 0x16B63, 0x16B77 },
+    { 0x16B7D, 0x16B8F },
     { 0x16F00, 0x16F44 },
     { 0x16F50, 0x16F50 },
     { 0x16F93, 0x16F9F },
     { 0x1B000, 0x1B001 },
+    { 0x1BC00, 0x1BC6A },
+    { 0x1BC70, 0x1BC7C },
+    { 0x1BC80, 0x1BC88 },
+    { 0x1BC90, 0x1BC99 },
     { 0x1D400, 0x1D454 },
     { 0x1D456, 0x1D49C },
     { 0x1D49E, 0x1D49F },
@@ -466,6 +516,7 @@
     { 0x1D78A, 0x1D7A8 },
     { 0x1D7AA, 0x1D7C2 },
     { 0x1D7C4, 0x1D7CB },
+    { 0x1E800, 0x1E8C4 },
     { 0x1EE00, 0x1EE03 },
     { 0x1EE05, 0x1EE1F },
     { 0x1EE21, 0x1EE22 },
--- a/tests/unictype/test-categ_LC.c
+++ b/tests/unictype/test-categ_LC.c
@@ -29,13 +29,14 @@
     { 0x0370, 0x0373 },
     { 0x0376, 0x0377 },
     { 0x037B, 0x037D },
+    { 0x037F, 0x037F },
     { 0x0386, 0x0386 },
     { 0x0388, 0x038A },
     { 0x038C, 0x038C },
     { 0x038E, 0x03A1 },
     { 0x03A3, 0x03F5 },
     { 0x03F7, 0x0481 },
-    { 0x048A, 0x0527 },
+    { 0x048A, 0x052F },
     { 0x0531, 0x0556 },
     { 0x0561, 0x0587 },
     { 0x10A0, 0x10C5 },
@@ -88,18 +89,21 @@
     { 0x2D27, 0x2D27 },
     { 0x2D2D, 0x2D2D },
     { 0xA640, 0xA66D },
-    { 0xA680, 0xA697 },
+    { 0xA680, 0xA69B },
     { 0xA722, 0xA76F },
     { 0xA771, 0xA787 },
     { 0xA78B, 0xA78E },
-    { 0xA790, 0xA793 },
-    { 0xA7A0, 0xA7AA },
+    { 0xA790, 0xA7AD },
+    { 0xA7B0, 0xA7B1 },
     { 0xA7FA, 0xA7FA },
+    { 0xAB30, 0xAB5A },
+    { 0xAB64, 0xAB65 },
     { 0xFB00, 0xFB06 },
     { 0xFB13, 0xFB17 },
     { 0xFF21, 0xFF3A },
     { 0xFF41, 0xFF5A },
     { 0x10400, 0x1044F },
+    { 0x118A0, 0x118DF },
     { 0x1D400, 0x1D454 },
     { 0x1D456, 0x1D49C },
     { 0x1D49E, 0x1D49F },
--- a/tests/unictype/test-categ_Ll.c
+++ b/tests/unictype/test-categ_Ll.c
@@ -282,6 +282,10 @@
     { 0x0523, 0x0523 },
     { 0x0525, 0x0525 },
     { 0x0527, 0x0527 },
+    { 0x0529, 0x0529 },
+    { 0x052B, 0x052B },
+    { 0x052D, 0x052D },
+    { 0x052F, 0x052F },
     { 0x0561, 0x0587 },
     { 0x1D00, 0x1D2B },
     { 0x1D6B, 0x1D77 },
@@ -540,6 +544,8 @@
     { 0xA693, 0xA693 },
     { 0xA695, 0xA695 },
     { 0xA697, 0xA697 },
+    { 0xA699, 0xA699 },
+    { 0xA69B, 0xA69B },
     { 0xA723, 0xA723 },
     { 0xA725, 0xA725 },
     { 0xA727, 0xA727 },
@@ -589,17 +595,25 @@
     { 0xA78C, 0xA78C },
     { 0xA78E, 0xA78E },
     { 0xA791, 0xA791 },
-    { 0xA793, 0xA793 },
+    { 0xA793, 0xA795 },
+    { 0xA797, 0xA797 },
+    { 0xA799, 0xA799 },
+    { 0xA79B, 0xA79B },
+    { 0xA79D, 0xA79D },
+    { 0xA79F, 0xA79F },
     { 0xA7A1, 0xA7A1 },
     { 0xA7A3, 0xA7A3 },
     { 0xA7A5, 0xA7A5 },
     { 0xA7A7, 0xA7A7 },
     { 0xA7A9, 0xA7A9 },
     { 0xA7FA, 0xA7FA },
+    { 0xAB30, 0xAB5A },
+    { 0xAB64, 0xAB65 },
     { 0xFB00, 0xFB06 },
     { 0xFB13, 0xFB17 },
     { 0xFF41, 0xFF5A },
     { 0x10428, 0x1044F },
+    { 0x118C0, 0x118DF },
     { 0x1D41A, 0x1D433 },
     { 0x1D44E, 0x1D454 },
     { 0x1D456, 0x1D467 },
--- a/tests/unictype/test-categ_Lm.c
+++ b/tests/unictype/test-categ_Lm.c
@@ -58,16 +58,20 @@
     { 0xA4F8, 0xA4FD },
     { 0xA60C, 0xA60C },
     { 0xA67F, 0xA67F },
+    { 0xA69C, 0xA69D },
     { 0xA717, 0xA71F },
     { 0xA770, 0xA770 },
     { 0xA788, 0xA788 },
     { 0xA7F8, 0xA7F9 },
     { 0xA9CF, 0xA9CF },
+    { 0xA9E6, 0xA9E6 },
     { 0xAA70, 0xAA70 },
     { 0xAADD, 0xAADD },
     { 0xAAF3, 0xAAF4 },
+    { 0xAB5C, 0xAB5F },
     { 0xFF70, 0xFF70 },
     { 0xFF9E, 0xFF9F },
+    { 0x16B40, 0x16B43 },
     { 0x16F93, 0x16F9F }
 
 #define PREDICATE(c) uc_is_general_category (c, UC_CATEGORY_Lm)
--- a/tests/unictype/test-categ_Lo.c
+++ b/tests/unictype/test-categ_Lo.c
@@ -39,14 +39,12 @@
     { 0x07CA, 0x07EA },
     { 0x0800, 0x0815 },
     { 0x0840, 0x0858 },
-    { 0x08A0, 0x08A0 },
-    { 0x08A2, 0x08AC },
+    { 0x08A0, 0x08B2 },
     { 0x0904, 0x0939 },
     { 0x093D, 0x093D },
     { 0x0950, 0x0950 },
     { 0x0958, 0x0961 },
-    { 0x0972, 0x0977 },
-    { 0x0979, 0x097F },
+    { 0x0972, 0x0980 },
     { 0x0985, 0x098C },
     { 0x098F, 0x0990 },
     { 0x0993, 0x09A8 },
@@ -101,8 +99,7 @@
     { 0x0C05, 0x0C0C },
     { 0x0C0E, 0x0C10 },
     { 0x0C12, 0x0C28 },
-    { 0x0C2A, 0x0C33 },
-    { 0x0C35, 0x0C39 },
+    { 0x0C2A, 0x0C39 },
     { 0x0C3D, 0x0C3D },
     { 0x0C58, 0x0C59 },
     { 0x0C60, 0x0C61 },
@@ -182,6 +179,7 @@
     { 0x166F, 0x167F },
     { 0x1681, 0x169A },
     { 0x16A0, 0x16EA },
+    { 0x16F1, 0x16F8 },
     { 0x1700, 0x170C },
     { 0x170E, 0x1711 },
     { 0x1720, 0x1731 },
@@ -195,7 +193,7 @@
     { 0x1880, 0x18A8 },
     { 0x18AA, 0x18AA },
     { 0x18B0, 0x18F5 },
-    { 0x1900, 0x191C },
+    { 0x1900, 0x191E },
     { 0x1950, 0x196D },
     { 0x1970, 0x1974 },
     { 0x1980, 0x19AB },
@@ -244,6 +242,7 @@
     { 0xA62A, 0xA62B },
     { 0xA66E, 0xA66E },
     { 0xA6A0, 0xA6E5 },
+    { 0xA7F7, 0xA7F7 },
     { 0xA7FB, 0xA801 },
     { 0xA803, 0xA805 },
     { 0xA807, 0xA80A },
@@ -256,13 +255,16 @@
     { 0xA930, 0xA946 },
     { 0xA960, 0xA97C },
     { 0xA984, 0xA9B2 },
+    { 0xA9E0, 0xA9E4 },
+    { 0xA9E7, 0xA9EF },
+    { 0xA9FA, 0xA9FE },
     { 0xAA00, 0xAA28 },
     { 0xAA40, 0xAA42 },
     { 0xAA44, 0xAA4B },
     { 0xAA60, 0xAA6F },
     { 0xAA71, 0xAA76 },
     { 0xAA7A, 0xAA7A },
-    { 0xAA80, 0xAAAF },
+    { 0xAA7E, 0xAAAF },
     { 0xAAB1, 0xAAB1 },
     { 0xAAB5, 0xAAB6 },
     { 0xAAB9, 0xAABD },
@@ -312,19 +314,27 @@
     { 0x10080, 0x100FA },
     { 0x10280, 0x1029C },
     { 0x102A0, 0x102D0 },
-    { 0x10300, 0x1031E },
+    { 0x10300, 0x1031F },
     { 0x10330, 0x10340 },
     { 0x10342, 0x10349 },
+    { 0x10350, 0x10375 },
     { 0x10380, 0x1039D },
     { 0x103A0, 0x103C3 },
     { 0x103C8, 0x103CF },
     { 0x10450, 0x1049D },
+    { 0x10500, 0x10527 },
+    { 0x10530, 0x10563 },
+    { 0x10600, 0x10736 },
+    { 0x10740, 0x10755 },
+    { 0x10760, 0x10767 },
     { 0x10800, 0x10805 },
     { 0x10808, 0x10808 },
     { 0x1080A, 0x10835 },
     { 0x10837, 0x10838 },
     { 0x1083C, 0x1083C },
     { 0x1083F, 0x10855 },
+    { 0x10860, 0x10876 },
+    { 0x10880, 0x1089E },
     { 0x10900, 0x10915 },
     { 0x10920, 0x10939 },
     { 0x10980, 0x109B7 },
@@ -334,23 +344,59 @@
     { 0x10A15, 0x10A17 },
     { 0x10A19, 0x10A33 },
     { 0x10A60, 0x10A7C },
+    { 0x10A80, 0x10A9C },
+    { 0x10AC0, 0x10AC7 },
+    { 0x10AC9, 0x10AE4 },
     { 0x10B00, 0x10B35 },
     { 0x10B40, 0x10B55 },
     { 0x10B60, 0x10B72 },
+    { 0x10B80, 0x10B91 },
     { 0x10C00, 0x10C48 },
     { 0x11003, 0x11037 },
     { 0x11083, 0x110AF },
     { 0x110D0, 0x110E8 },
     { 0x11103, 0x11126 },
+    { 0x11150, 0x11172 },
+    { 0x11176, 0x11176 },
     { 0x11183, 0x111B2 },
     { 0x111C1, 0x111C4 },
+    { 0x111DA, 0x111DA },
+    { 0x11200, 0x11211 },
+    { 0x11213, 0x1122B },
+    { 0x112B0, 0x112DE },
+    { 0x11305, 0x1130C },
+    { 0x1130F, 0x11310 },
+    { 0x11313, 0x11328 },
+    { 0x1132A, 0x11330 },
+    { 0x11332, 0x11333 },
+    { 0x11335, 0x11339 },
+    { 0x1133D, 0x1133D },
+    { 0x1135D, 0x11361 },
+    { 0x11480, 0x114AF },
+    { 0x114C4, 0x114C5 },
+    { 0x114C7, 0x114C7 },
+    { 0x11580, 0x115AE },
+    { 0x11600, 0x1162F },
+    { 0x11644, 0x11644 },
     { 0x11680, 0x116AA },
-    { 0x12000, 0x1236E },
+    { 0x118FF, 0x118FF },
+    { 0x11AC0, 0x11AF8 },
+    { 0x12000, 0x12398 },
     { 0x13000, 0x1342E },
     { 0x16800, 0x16A38 },
+    { 0x16A40, 0x16A5E },
+    { 0x16AD0, 0x16AED },
+    { 0x16B00, 0x16B2F },
+    { 0x16B63, 0x16B77 },
+    { 0x16B7D, 0x16B8F },
     { 0x16F00, 0x16F44 },
     { 0x16F50, 0x16F50 },
     { 0x1B000, 0x1B001 },
+    { 0x1BC00, 0x1BC6A },
+    { 0x1BC70, 0x1BC7C },
+    { 0x1BC80, 0x1BC88 },
+    { 0x1BC90, 0x1BC99 },
+    { 0x1E800, 0x1E8C4 },
     { 0x1EE00, 0x1EE03 },
     { 0x1EE05, 0x1EE1F },
     { 0x1EE21, 0x1EE22 },
--- a/tests/unictype/test-categ_Lu.c
+++ b/tests/unictype/test-categ_Lu.c
@@ -164,6 +164,7 @@
     { 0x0370, 0x0370 },
     { 0x0372, 0x0372 },
     { 0x0376, 0x0376 },
+    { 0x037F, 0x037F },
     { 0x0386, 0x0386 },
     { 0x0388, 0x038A },
     { 0x038C, 0x038C },
@@ -283,6 +284,10 @@
     { 0x0522, 0x0522 },
     { 0x0524, 0x0524 },
     { 0x0526, 0x0526 },
+    { 0x0528, 0x0528 },
+    { 0x052A, 0x052A },
+    { 0x052C, 0x052C },
+    { 0x052E, 0x052E },
     { 0x0531, 0x0556 },
     { 0x10A0, 0x10C5 },
     { 0x10C7, 0x10C7 },
@@ -537,6 +542,8 @@
     { 0xA692, 0xA692 },
     { 0xA694, 0xA694 },
     { 0xA696, 0xA696 },
+    { 0xA698, 0xA698 },
+    { 0xA69A, 0xA69A },
     { 0xA722, 0xA722 },
     { 0xA724, 0xA724 },
     { 0xA726, 0xA726 },
@@ -586,14 +593,21 @@
     { 0xA78D, 0xA78D },
     { 0xA790, 0xA790 },
     { 0xA792, 0xA792 },
+    { 0xA796, 0xA796 },
+    { 0xA798, 0xA798 },
+    { 0xA79A, 0xA79A },
+    { 0xA79C, 0xA79C },
+    { 0xA79E, 0xA79E },
     { 0xA7A0, 0xA7A0 },
     { 0xA7A2, 0xA7A2 },
     { 0xA7A4, 0xA7A4 },
     { 0xA7A6, 0xA7A6 },
     { 0xA7A8, 0xA7A8 },
-    { 0xA7AA, 0xA7AA },
+    { 0xA7AA, 0xA7AD },
+    { 0xA7B0, 0xA7B1 },
     { 0xFF21, 0xFF3A },
     { 0x10400, 0x10427 },
+    { 0x118A0, 0x118BF },
     { 0x1D400, 0x1D419 },
     { 0x1D434, 0x1D44D },
     { 0x1D468, 0x1D481 },
--- a/tests/unictype/test-categ_M.c
+++ b/tests/unictype/test-categ_M.c
@@ -40,8 +40,7 @@
     { 0x0825, 0x0827 },
     { 0x0829, 0x082D },
     { 0x0859, 0x085B },
-    { 0x08E4, 0x08FE },
-    { 0x0900, 0x0903 },
+    { 0x08E4, 0x0903 },
     { 0x093A, 0x093C },
     { 0x093E, 0x094F },
     { 0x0951, 0x0957 },
@@ -79,20 +78,20 @@
     { 0x0BC6, 0x0BC8 },
     { 0x0BCA, 0x0BCD },
     { 0x0BD7, 0x0BD7 },
-    { 0x0C01, 0x0C03 },
+    { 0x0C00, 0x0C03 },
     { 0x0C3E, 0x0C44 },
     { 0x0C46, 0x0C48 },
     { 0x0C4A, 0x0C4D },
     { 0x0C55, 0x0C56 },
     { 0x0C62, 0x0C63 },
-    { 0x0C82, 0x0C83 },
+    { 0x0C81, 0x0C83 },
     { 0x0CBC, 0x0CBC },
     { 0x0CBE, 0x0CC4 },
     { 0x0CC6, 0x0CC8 },
     { 0x0CCA, 0x0CCD },
     { 0x0CD5, 0x0CD6 },
     { 0x0CE2, 0x0CE3 },
-    { 0x0D02, 0x0D03 },
+    { 0x0D01, 0x0D03 },
     { 0x0D3E, 0x0D44 },
     { 0x0D46, 0x0D48 },
     { 0x0D4A, 0x0D4D },
@@ -147,6 +146,7 @@
     { 0x1A55, 0x1A5E },
     { 0x1A60, 0x1A7C },
     { 0x1A7F, 0x1A7F },
+    { 0x1AB0, 0x1ABE },
     { 0x1B00, 0x1B04 },
     { 0x1B34, 0x1B44 },
     { 0x1B6B, 0x1B73 },
@@ -158,7 +158,8 @@
     { 0x1CD4, 0x1CE8 },
     { 0x1CED, 0x1CED },
     { 0x1CF2, 0x1CF4 },
-    { 0x1DC0, 0x1DE6 },
+    { 0x1CF8, 0x1CF9 },
+    { 0x1DC0, 0x1DF5 },
     { 0x1DFC, 0x1DFF },
     { 0x20D0, 0x20F0 },
     { 0x2CEF, 0x2CF1 },
@@ -181,10 +182,11 @@
     { 0xA947, 0xA953 },
     { 0xA980, 0xA983 },
     { 0xA9B3, 0xA9C0 },
+    { 0xA9E5, 0xA9E5 },
     { 0xAA29, 0xAA36 },
     { 0xAA43, 0xAA43 },
     { 0xAA4C, 0xAA4D },
-    { 0xAA7B, 0xAA7B },
+    { 0xAA7B, 0xAA7D },
     { 0xAAB0, 0xAAB0 },
     { 0xAAB2, 0xAAB4 },
     { 0xAAB7, 0xAAB8 },
@@ -196,30 +198,53 @@
     { 0xABEC, 0xABED },
     { 0xFB1E, 0xFB1E },
     { 0xFE00, 0xFE0F },
-    { 0xFE20, 0xFE26 },
+    { 0xFE20, 0xFE2D },
     { 0x101FD, 0x101FD },
+    { 0x102E0, 0x102E0 },
+    { 0x10376, 0x1037A },
     { 0x10A01, 0x10A03 },
     { 0x10A05, 0x10A06 },
     { 0x10A0C, 0x10A0F },
     { 0x10A38, 0x10A3A },
     { 0x10A3F, 0x10A3F },
+    { 0x10AE5, 0x10AE6 },
     { 0x11000, 0x11002 },
     { 0x11038, 0x11046 },
-    { 0x11080, 0x11082 },
+    { 0x1107F, 0x11082 },
     { 0x110B0, 0x110BA },
     { 0x11100, 0x11102 },
     { 0x11127, 0x11134 },
+    { 0x11173, 0x11173 },
     { 0x11180, 0x11182 },
     { 0x111B3, 0x111C0 },
+    { 0x1122C, 0x11237 },
+    { 0x112DF, 0x112EA },
+    { 0x11301, 0x11303 },
+    { 0x1133C, 0x1133C },
+    { 0x1133E, 0x11344 },
+    { 0x11347, 0x11348 },
+    { 0x1134B, 0x1134D },
+    { 0x11357, 0x11357 },
+    { 0x11362, 0x11363 },
+    { 0x11366, 0x1136C },
+    { 0x11370, 0x11374 },
+    { 0x114B0, 0x114C3 },
+    { 0x115AF, 0x115B5 },
+    { 0x115B8, 0x115C0 },
+    { 0x11630, 0x11640 },
     { 0x116AB, 0x116B7 },
+    { 0x16AF0, 0x16AF4 },
+    { 0x16B30, 0x16B36 },
     { 0x16F51, 0x16F7E },
     { 0x16F8F, 0x16F92 },
+    { 0x1BC9D, 0x1BC9E },
     { 0x1D165, 0x1D169 },
     { 0x1D16D, 0x1D172 },
     { 0x1D17B, 0x1D182 },
     { 0x1D185, 0x1D18B },
     { 0x1D1AA, 0x1D1AD },
     { 0x1D242, 0x1D244 },
+    { 0x1E8D0, 0x1E8D6 },
     { 0xE0100, 0xE01EF }
 
 #define PREDICATE(c) uc_is_general_category (c, UC_CATEGORY_M)
--- a/tests/unictype/test-categ_Mc.c
+++ b/tests/unictype/test-categ_Mc.c
@@ -98,7 +98,6 @@
     { 0x1BA1, 0x1BA1 },
     { 0x1BA6, 0x1BA7 },
     { 0x1BAA, 0x1BAA },
-    { 0x1BAC, 0x1BAD },
     { 0x1BE7, 0x1BE7 },
     { 0x1BEA, 0x1BEC },
     { 0x1BEE, 0x1BEE },
@@ -121,6 +120,7 @@
     { 0xAA33, 0xAA34 },
     { 0xAA4D, 0xAA4D },
     { 0xAA7B, 0xAA7B },
+    { 0xAA7D, 0xAA7D },
     { 0xAAEB, 0xAAEB },
     { 0xAAEE, 0xAAEF },
     { 0xAAF5, 0xAAF5 },
@@ -137,6 +137,27 @@
     { 0x11182, 0x11182 },
     { 0x111B3, 0x111B5 },
     { 0x111BF, 0x111C0 },
+    { 0x1122C, 0x1122E },
+    { 0x11232, 0x11233 },
+    { 0x11235, 0x11235 },
+    { 0x112E0, 0x112E2 },
+    { 0x11302, 0x11303 },
+    { 0x1133E, 0x1133F },
+    { 0x11341, 0x11344 },
+    { 0x11347, 0x11348 },
+    { 0x1134B, 0x1134D },
+    { 0x11357, 0x11357 },
+    { 0x11362, 0x11363 },
+    { 0x114B0, 0x114B2 },
+    { 0x114B9, 0x114B9 },
+    { 0x114BB, 0x114BE },
+    { 0x114C1, 0x114C1 },
+    { 0x115AF, 0x115B1 },
+    { 0x115B8, 0x115BB },
+    { 0x115BE, 0x115BE },
+    { 0x11630, 0x11632 },
+    { 0x1163B, 0x1163C },
+    { 0x1163E, 0x1163E },
     { 0x116AC, 0x116AC },
     { 0x116AE, 0x116AF },
     { 0x116B6, 0x116B6 },
--- a/tests/unictype/test-categ_Me.c
+++ b/tests/unictype/test-categ_Me.c
@@ -18,6 +18,7 @@
 #include "test-predicate-part1.h"
 
     { 0x0488, 0x0489 },
+    { 0x1ABE, 0x1ABE },
     { 0x20DD, 0x20E0 },
     { 0x20E2, 0x20E4 },
     { 0xA670, 0xA672 }
--- a/tests/unictype/test-categ_Mn.c
+++ b/tests/unictype/test-categ_Mn.c
@@ -40,8 +40,7 @@
     { 0x0825, 0x0827 },
     { 0x0829, 0x082D },
     { 0x0859, 0x085B },
-    { 0x08E4, 0x08FE },
-    { 0x0900, 0x0902 },
+    { 0x08E4, 0x0902 },
     { 0x093A, 0x093A },
     { 0x093C, 0x093C },
     { 0x0941, 0x0948 },
@@ -77,16 +76,19 @@
     { 0x0B82, 0x0B82 },
     { 0x0BC0, 0x0BC0 },
     { 0x0BCD, 0x0BCD },
+    { 0x0C00, 0x0C00 },
     { 0x0C3E, 0x0C40 },
     { 0x0C46, 0x0C48 },
     { 0x0C4A, 0x0C4D },
     { 0x0C55, 0x0C56 },
     { 0x0C62, 0x0C63 },
+    { 0x0C81, 0x0C81 },
     { 0x0CBC, 0x0CBC },
     { 0x0CBF, 0x0CBF },
     { 0x0CC6, 0x0CC6 },
     { 0x0CCC, 0x0CCD },
     { 0x0CE2, 0x0CE3 },
+    { 0x0D01, 0x0D01 },
     { 0x0D41, 0x0D44 },
     { 0x0D4D, 0x0D4D },
     { 0x0D62, 0x0D63 },
@@ -146,6 +148,7 @@
     { 0x1A65, 0x1A6C },
     { 0x1A73, 0x1A7C },
     { 0x1A7F, 0x1A7F },
+    { 0x1AB0, 0x1ABD },
     { 0x1B00, 0x1B03 },
     { 0x1B34, 0x1B34 },
     { 0x1B36, 0x1B3A },
@@ -155,7 +158,7 @@
     { 0x1B80, 0x1B81 },
     { 0x1BA2, 0x1BA5 },
     { 0x1BA8, 0x1BA9 },
-    { 0x1BAB, 0x1BAB },
+    { 0x1BAB, 0x1BAD },
     { 0x1BE6, 0x1BE6 },
     { 0x1BE8, 0x1BE9 },
     { 0x1BED, 0x1BED },
@@ -167,7 +170,8 @@
     { 0x1CE2, 0x1CE8 },
     { 0x1CED, 0x1CED },
     { 0x1CF4, 0x1CF4 },
-    { 0x1DC0, 0x1DE6 },
+    { 0x1CF8, 0x1CF9 },
+    { 0x1DC0, 0x1DF5 },
     { 0x1DFC, 0x1DFF },
     { 0x20D0, 0x20DC },
     { 0x20E1, 0x20E1 },
@@ -193,11 +197,13 @@
     { 0xA9B3, 0xA9B3 },
     { 0xA9B6, 0xA9B9 },
     { 0xA9BC, 0xA9BC },
+    { 0xA9E5, 0xA9E5 },
     { 0xAA29, 0xAA2E },
     { 0xAA31, 0xAA32 },
     { 0xAA35, 0xAA36 },
     { 0xAA43, 0xAA43 },
     { 0xAA4C, 0xAA4C },
+    { 0xAA7C, 0xAA7C },
     { 0xAAB0, 0xAAB0 },
     { 0xAAB2, 0xAAB4 },
     { 0xAAB7, 0xAAB8 },
@@ -210,33 +216,61 @@
     { 0xABED, 0xABED },
     { 0xFB1E, 0xFB1E },
     { 0xFE00, 0xFE0F },
-    { 0xFE20, 0xFE26 },
+    { 0xFE20, 0xFE2D },
     { 0x101FD, 0x101FD },
+    { 0x102E0, 0x102E0 },
+    { 0x10376, 0x1037A },
     { 0x10A01, 0x10A03 },
     { 0x10A05, 0x10A06 },
     { 0x10A0C, 0x10A0F },
     { 0x10A38, 0x10A3A },
     { 0x10A3F, 0x10A3F },
+    { 0x10AE5, 0x10AE6 },
     { 0x11001, 0x11001 },
     { 0x11038, 0x11046 },
-    { 0x11080, 0x11081 },
+    { 0x1107F, 0x11081 },
     { 0x110B3, 0x110B6 },
     { 0x110B9, 0x110BA },
     { 0x11100, 0x11102 },
     { 0x11127, 0x1112B },
     { 0x1112D, 0x11134 },
+    { 0x11173, 0x11173 },
     { 0x11180, 0x11181 },
     { 0x111B6, 0x111BE },
+    { 0x1122F, 0x11231 },
+    { 0x11234, 0x11234 },
+    { 0x11236, 0x11237 },
+    { 0x112DF, 0x112DF },
+    { 0x112E3, 0x112EA },
+    { 0x11301, 0x11301 },
+    { 0x1133C, 0x1133C },
+    { 0x11340, 0x11340 },
+    { 0x11366, 0x1136C },
+    { 0x11370, 0x11374 },
+    { 0x114B3, 0x114B8 },
+    { 0x114BA, 0x114BA },
+    { 0x114BF, 0x114C0 },
+    { 0x114C2, 0x114C3 },
+    { 0x115B2, 0x115B5 },
+    { 0x115BC, 0x115BD },
+    { 0x115BF, 0x115C0 },
+    { 0x11633, 0x1163A },
+    { 0x1163D, 0x1163D },
+    { 0x1163F, 0x11640 },
     { 0x116AB, 0x116AB },
     { 0x116AD, 0x116AD },
     { 0x116B0, 0x116B5 },
     { 0x116B7, 0x116B7 },
+    { 0x16AF0, 0x16AF4 },
+    { 0x16B30, 0x16B36 },
     { 0x16F8F, 0x16F92 },
+    { 0x1BC9D, 0x1BC9E },
     { 0x1D167, 0x1D169 },
     { 0x1D17B, 0x1D182 },
     { 0x1D185, 0x1D18B },
     { 0x1D1AA, 0x1D1AD },
     { 0x1D242, 0x1D244 },
+    { 0x1E8D0, 0x1E8D6 },
     { 0xE0100, 0xE01EF }
 
 #define PREDICATE(c) uc_is_general_category (c, UC_CATEGORY_Mn)
--- a/tests/unictype/test-categ_N.c
+++ b/tests/unictype/test-categ_N.c
@@ -36,6 +36,7 @@
     { 0x0C78, 0x0C7E },
     { 0x0CE6, 0x0CEF },
     { 0x0D66, 0x0D75 },
+    { 0x0DE6, 0x0DEF },
     { 0x0E50, 0x0E59 },
     { 0x0ED0, 0x0ED9 },
     { 0x0F20, 0x0F33 },
@@ -78,33 +79,49 @@
     { 0xA8D0, 0xA8D9 },
     { 0xA900, 0xA909 },
     { 0xA9D0, 0xA9D9 },
+    { 0xA9F0, 0xA9F9 },
     { 0xAA50, 0xAA59 },
     { 0xABF0, 0xABF9 },
     { 0xFF10, 0xFF19 },
     { 0x10107, 0x10133 },
     { 0x10140, 0x10178 },
-    { 0x1018A, 0x1018A },
+    { 0x1018A, 0x1018B },
+    { 0x102E1, 0x102FB },
     { 0x10320, 0x10323 },
     { 0x10341, 0x10341 },
     { 0x1034A, 0x1034A },
     { 0x103D1, 0x103D5 },
     { 0x104A0, 0x104A9 },
     { 0x10858, 0x1085F },
+    { 0x10879, 0x1087F },
+    { 0x108A7, 0x108AF },
     { 0x10916, 0x1091B },
     { 0x10A40, 0x10A47 },
     { 0x10A7D, 0x10A7E },
+    { 0x10A9D, 0x10A9F },
+    { 0x10AEB, 0x10AEF },
     { 0x10B58, 0x10B5F },
     { 0x10B78, 0x10B7F },
+    { 0x10BA9, 0x10BAF },
     { 0x10E60, 0x10E7E },
     { 0x11052, 0x1106F },
     { 0x110F0, 0x110F9 },
     { 0x11136, 0x1113F },
     { 0x111D0, 0x111D9 },
+    { 0x111E1, 0x111F4 },
+    { 0x112F0, 0x112F9 },
+    { 0x114D0, 0x114D9 },
+    { 0x11650, 0x11659 },
     { 0x116C0, 0x116C9 },
-    { 0x12400, 0x12462 },
+    { 0x118E0, 0x118F2 },
+    { 0x12400, 0x1246E },
+    { 0x16A60, 0x16A69 },
+    { 0x16B50, 0x16B59 },
+    { 0x16B5B, 0x16B61 },
     { 0x1D360, 0x1D371 },
     { 0x1D7CE, 0x1D7FF },
-    { 0x1F100, 0x1F10A }
+    { 0x1E8C7, 0x1E8CF },
+    { 0x1F100, 0x1F10C }
 
 #define PREDICATE(c) uc_is_general_category (c, UC_CATEGORY_N)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-categ_Nd.c
+++ b/tests/unictype/test-categ_Nd.c
@@ -30,6 +30,7 @@
     { 0x0C66, 0x0C6F },
     { 0x0CE6, 0x0CEF },
     { 0x0D66, 0x0D6F },
+    { 0x0DE6, 0x0DEF },
     { 0x0E50, 0x0E59 },
     { 0x0ED0, 0x0ED9 },
     { 0x0F20, 0x0F29 },
@@ -49,6 +50,7 @@
     { 0xA8D0, 0xA8D9 },
     { 0xA900, 0xA909 },
     { 0xA9D0, 0xA9D9 },
+    { 0xA9F0, 0xA9F9 },
     { 0xAA50, 0xAA59 },
     { 0xABF0, 0xABF9 },
     { 0xFF10, 0xFF19 },
@@ -57,7 +59,13 @@
     { 0x110F0, 0x110F9 },
     { 0x11136, 0x1113F },
     { 0x111D0, 0x111D9 },
+    { 0x112F0, 0x112F9 },
+    { 0x114D0, 0x114D9 },
+    { 0x11650, 0x11659 },
     { 0x116C0, 0x116C9 },
+    { 0x118E0, 0x118E9 },
+    { 0x16A60, 0x16A69 },
+    { 0x16B50, 0x16B59 },
     { 0x1D7CE, 0x1D7FF }
 
 #define PREDICATE(c) uc_is_general_category (c, UC_CATEGORY_Nd)
--- a/tests/unictype/test-categ_Nl.c
+++ b/tests/unictype/test-categ_Nl.c
@@ -28,7 +28,7 @@
     { 0x10341, 0x10341 },
     { 0x1034A, 0x1034A },
     { 0x103D1, 0x103D5 },
-    { 0x12400, 0x12462 }
+    { 0x12400, 0x1246E }
 
 #define PREDICATE(c) uc_is_general_category (c, UC_CATEGORY_Nl)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-categ_No.c
+++ b/tests/unictype/test-categ_No.c
@@ -47,18 +47,28 @@
     { 0xA830, 0xA835 },
     { 0x10107, 0x10133 },
     { 0x10175, 0x10178 },
-    { 0x1018A, 0x1018A },
+    { 0x1018A, 0x1018B },
+    { 0x102E1, 0x102FB },
     { 0x10320, 0x10323 },
     { 0x10858, 0x1085F },
+    { 0x10879, 0x1087F },
+    { 0x108A7, 0x108AF },
     { 0x10916, 0x1091B },
     { 0x10A40, 0x10A47 },
     { 0x10A7D, 0x10A7E },
+    { 0x10A9D, 0x10A9F },
+    { 0x10AEB, 0x10AEF },
     { 0x10B58, 0x10B5F },
     { 0x10B78, 0x10B7F },
+    { 0x10BA9, 0x10BAF },
     { 0x10E60, 0x10E7E },
     { 0x11052, 0x11065 },
+    { 0x111E1, 0x111F4 },
+    { 0x118EA, 0x118F2 },
+    { 0x16B5B, 0x16B61 },
     { 0x1D360, 0x1D371 },
-    { 0x1F100, 0x1F10A }
+    { 0x1E8C7, 0x1E8CF },
+    { 0x1F100, 0x1F10C }
 
 #define PREDICATE(c) uc_is_general_category (c, UC_CATEGORY_No)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-categ_P.c
+++ b/tests/unictype/test-categ_P.c
@@ -102,7 +102,7 @@
     { 0x2CFE, 0x2CFF },
     { 0x2D70, 0x2D70 },
     { 0x2E00, 0x2E2E },
-    { 0x2E30, 0x2E3B },
+    { 0x2E30, 0x2E42 },
     { 0x3001, 0x3003 },
     { 0x3008, 0x3011 },
     { 0x3014, 0x301F },
@@ -146,18 +146,32 @@
     { 0x10100, 0x10102 },
     { 0x1039F, 0x1039F },
     { 0x103D0, 0x103D0 },
+    { 0x1056F, 0x1056F },
     { 0x10857, 0x10857 },
     { 0x1091F, 0x1091F },
     { 0x1093F, 0x1093F },
     { 0x10A50, 0x10A58 },
     { 0x10A7F, 0x10A7F },
+    { 0x10AF0, 0x10AF6 },
     { 0x10B39, 0x10B3F },
+    { 0x10B99, 0x10B9C },
     { 0x11047, 0x1104D },
     { 0x110BB, 0x110BC },
     { 0x110BE, 0x110C1 },
     { 0x11140, 0x11143 },
+    { 0x11174, 0x11175 },
     { 0x111C5, 0x111C8 },
-    { 0x12470, 0x12473 }
+    { 0x111CD, 0x111CD },
+    { 0x11238, 0x1123D },
+    { 0x114C6, 0x114C6 },
+    { 0x115C1, 0x115C9 },
+    { 0x11641, 0x11643 },
+    { 0x12470, 0x12474 },
+    { 0x16A6E, 0x16A6F },
+    { 0x16AF5, 0x16AF5 },
+    { 0x16B37, 0x16B3B },
+    { 0x16B44, 0x16B44 },
+    { 0x1BC9F, 0x1BC9F }
 
 #define PREDICATE(c) uc_is_general_category (c, UC_CATEGORY_P)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-categ_Pd.c
+++ b/tests/unictype/test-categ_Pd.c
@@ -26,6 +26,7 @@
     { 0x2E17, 0x2E17 },
     { 0x2E1A, 0x2E1A },
     { 0x2E3A, 0x2E3B },
+    { 0x2E40, 0x2E40 },
     { 0x301C, 0x301C },
     { 0x3030, 0x3030 },
     { 0x30A0, 0x30A0 },
--- a/tests/unictype/test-categ_Pe.c
+++ b/tests/unictype/test-categ_Pe.c
@@ -70,7 +70,7 @@
     { 0x3019, 0x3019 },
     { 0x301B, 0x301B },
     { 0x301E, 0x301F },
-    { 0xFD3F, 0xFD3F },
+    { 0xFD3E, 0xFD3E },
     { 0xFE18, 0xFE18 },
     { 0xFE36, 0xFE36 },
     { 0xFE38, 0xFE38 },
--- a/tests/unictype/test-categ_Po.c
+++ b/tests/unictype/test-categ_Po.c
@@ -98,6 +98,8 @@
     { 0x2E1E, 0x2E1F },
     { 0x2E2A, 0x2E2E },
     { 0x2E30, 0x2E39 },
+    { 0x2E3C, 0x2E3F },
+    { 0x2E41, 0x2E41 },
     { 0x3001, 0x3003 },
     { 0x303D, 0x303D },
     { 0x30FB, 0x30FB },
@@ -140,18 +142,32 @@
     { 0x10100, 0x10102 },
     { 0x1039F, 0x1039F },
     { 0x103D0, 0x103D0 },
+    { 0x1056F, 0x1056F },
     { 0x10857, 0x10857 },
     { 0x1091F, 0x1091F },
     { 0x1093F, 0x1093F },
     { 0x10A50, 0x10A58 },
     { 0x10A7F, 0x10A7F },
+    { 0x10AF0, 0x10AF6 },
     { 0x10B39, 0x10B3F },
+    { 0x10B99, 0x10B9C },
     { 0x11047, 0x1104D },
     { 0x110BB, 0x110BC },
     { 0x110BE, 0x110C1 },
     { 0x11140, 0x11143 },
+    { 0x11174, 0x11175 },
     { 0x111C5, 0x111C8 },
-    { 0x12470, 0x12473 }
+    { 0x111CD, 0x111CD },
+    { 0x11238, 0x1123D },
+    { 0x114C6, 0x114C6 },
+    { 0x115C1, 0x115C9 },
+    { 0x11641, 0x11643 },
+    { 0x12470, 0x12474 },
+    { 0x16A6E, 0x16A6F },
+    { 0x16AF5, 0x16AF5 },
+    { 0x16B37, 0x16B3B },
+    { 0x16B44, 0x16B44 },
+    { 0x1BC9F, 0x1BC9F }
 
 #define PREDICATE(c) uc_is_general_category (c, UC_CATEGORY_Po)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-categ_Ps.c
+++ b/tests/unictype/test-categ_Ps.c
@@ -62,6 +62,7 @@
     { 0x2E24, 0x2E24 },
     { 0x2E26, 0x2E26 },
     { 0x2E28, 0x2E28 },
+    { 0x2E42, 0x2E42 },
     { 0x3008, 0x3008 },
     { 0x300A, 0x300A },
     { 0x300C, 0x300C },
@@ -72,7 +73,7 @@
     { 0x3018, 0x3018 },
     { 0x301A, 0x301A },
     { 0x301D, 0x301D },
-    { 0xFD3E, 0xFD3E },
+    { 0xFD3F, 0xFD3F },
     { 0xFE17, 0xFE17 },
     { 0xFE35, 0xFE35 },
     { 0xFE37, 0xFE37 },
--- a/tests/unictype/test-categ_S.c
+++ b/tests/unictype/test-categ_S.c
@@ -41,7 +41,7 @@
     { 0x0384, 0x0385 },
     { 0x03F6, 0x03F6 },
     { 0x0482, 0x0482 },
-    { 0x058F, 0x058F },
+    { 0x058D, 0x058F },
     { 0x0606, 0x0608 },
     { 0x060B, 0x060B },
     { 0x060E, 0x060F },
@@ -85,7 +85,7 @@
     { 0x2052, 0x2052 },
     { 0x207A, 0x207C },
     { 0x208A, 0x208C },
-    { 0x20A0, 0x20BA },
+    { 0x20A0, 0x20BD },
     { 0x2100, 0x2101 },
     { 0x2103, 0x2106 },
     { 0x2108, 0x2109 },
@@ -102,19 +102,21 @@
     { 0x214F, 0x214F },
     { 0x2190, 0x2307 },
     { 0x230C, 0x2328 },
-    { 0x232B, 0x23F3 },
+    { 0x232B, 0x23FA },
     { 0x2400, 0x2426 },
     { 0x2440, 0x244A },
     { 0x249C, 0x24E9 },
-    { 0x2500, 0x26FF },
-    { 0x2701, 0x2767 },
+    { 0x2500, 0x2767 },
     { 0x2794, 0x27C4 },
     { 0x27C7, 0x27E5 },
     { 0x27F0, 0x2982 },
     { 0x2999, 0x29D7 },
     { 0x29DC, 0x29FB },
-    { 0x29FE, 0x2B4C },
-    { 0x2B50, 0x2B59 },
+    { 0x29FE, 0x2B73 },
+    { 0x2B76, 0x2B95 },
+    { 0x2B98, 0x2BB9 },
+    { 0x2BBD, 0x2BC8 },
+    { 0x2BCA, 0x2BD1 },
     { 0x2CE5, 0x2CEA },
     { 0x2E80, 0x2E99 },
     { 0x2E9B, 0x2EF3 },
@@ -144,6 +146,7 @@
     { 0xA828, 0xA82B },
     { 0xA836, 0xA839 },
     { 0xAA77, 0xAA79 },
+    { 0xAB5B, 0xAB5B },
     { 0xFB29, 0xFB29 },
     { 0xFBB2, 0xFBC1 },
     { 0xFDFC, 0xFDFD },
@@ -162,8 +165,15 @@
     { 0xFFFC, 0xFFFD },
     { 0x10137, 0x1013F },
     { 0x10179, 0x10189 },
+    { 0x1018C, 0x1018C },
     { 0x10190, 0x1019B },
+    { 0x101A0, 0x101A0 },
     { 0x101D0, 0x101FC },
+    { 0x10877, 0x10878 },
+    { 0x10AC8, 0x10AC8 },
+    { 0x16B3C, 0x16B3F },
+    { 0x16B45, 0x16B45 },
+    { 0x1BC9C, 0x1BC9C },
     { 0x1D000, 0x1D0F5 },
     { 0x1D100, 0x1D126 },
     { 0x1D129, 0x1D164 },
@@ -188,9 +198,9 @@
     { 0x1F000, 0x1F02B },
     { 0x1F030, 0x1F093 },
     { 0x1F0A0, 0x1F0AE },
-    { 0x1F0B1, 0x1F0BE },
+    { 0x1F0B1, 0x1F0BF },
     { 0x1F0C1, 0x1F0CF },
-    { 0x1F0D1, 0x1F0DF },
+    { 0x1F0D1, 0x1F0F5 },
     { 0x1F110, 0x1F12E },
     { 0x1F130, 0x1F16B },
     { 0x1F170, 0x1F19A },
@@ -198,24 +208,25 @@
     { 0x1F210, 0x1F23A },
     { 0x1F240, 0x1F248 },
     { 0x1F250, 0x1F251 },
-    { 0x1F300, 0x1F320 },
-    { 0x1F330, 0x1F335 },
-    { 0x1F337, 0x1F37C },
-    { 0x1F380, 0x1F393 },
-    { 0x1F3A0, 0x1F3C4 },
-    { 0x1F3C6, 0x1F3CA },
-    { 0x1F3E0, 0x1F3F0 },
-    { 0x1F400, 0x1F43E },
-    { 0x1F440, 0x1F440 },
-    { 0x1F442, 0x1F4F7 },
-    { 0x1F4F9, 0x1F4FC },
-    { 0x1F500, 0x1F53D },
-    { 0x1F540, 0x1F543 },
-    { 0x1F550, 0x1F567 },
-    { 0x1F5FB, 0x1F640 },
-    { 0x1F645, 0x1F64F },
-    { 0x1F680, 0x1F6C5 },
-    { 0x1F700, 0x1F773 }
+    { 0x1F300, 0x1F32C },
+    { 0x1F330, 0x1F37D },
+    { 0x1F380, 0x1F3CE },
+    { 0x1F3D4, 0x1F3F7 },
+    { 0x1F400, 0x1F4FE },
+    { 0x1F500, 0x1F54A },
+    { 0x1F550, 0x1F579 },
+    { 0x1F57B, 0x1F5A3 },
+    { 0x1F5A5, 0x1F642 },
+    { 0x1F645, 0x1F6CF },
+    { 0x1F6E0, 0x1F6EC },
+    { 0x1F6F0, 0x1F6F3 },
+    { 0x1F700, 0x1F773 },
+    { 0x1F780, 0x1F7D4 },
+    { 0x1F800, 0x1F80B },
+    { 0x1F810, 0x1F847 },
+    { 0x1F850, 0x1F859 },
+    { 0x1F860, 0x1F887 },
+    { 0x1F890, 0x1F8AD }
 
 #define PREDICATE(c) uc_is_general_category (c, UC_CATEGORY_S)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-categ_Sc.c
+++ b/tests/unictype/test-categ_Sc.c
@@ -27,7 +27,7 @@
     { 0x0BF9, 0x0BF9 },
     { 0x0E3F, 0x0E3F },
     { 0x17DB, 0x17DB },
-    { 0x20A0, 0x20BA },
+    { 0x20A0, 0x20BD },
     { 0xA838, 0xA838 },
     { 0xFDFC, 0xFDFC },
     { 0xFE69, 0xFE69 },
--- a/tests/unictype/test-categ_Sk.c
+++ b/tests/unictype/test-categ_Sk.c
@@ -40,6 +40,7 @@
     { 0xA700, 0xA716 },
     { 0xA720, 0xA721 },
     { 0xA789, 0xA78A },
+    { 0xAB5B, 0xAB5B },
     { 0xFBB2, 0xFBC1 },
     { 0xFF3E, 0xFF3E },
     { 0xFF40, 0xFF40 },
--- a/tests/unictype/test-categ_So.c
+++ b/tests/unictype/test-categ_So.c
@@ -22,6 +22,7 @@
     { 0x00AE, 0x00AE },
     { 0x00B0, 0x00B0 },
     { 0x0482, 0x0482 },
+    { 0x058D, 0x058E },
     { 0x060E, 0x060F },
     { 0x06DE, 0x06DE },
     { 0x06E9, 0x06E9 },
@@ -79,7 +80,7 @@
     { 0x232B, 0x237B },
     { 0x237D, 0x239A },
     { 0x23B4, 0x23DB },
-    { 0x23E2, 0x23F3 },
+    { 0x23E2, 0x23FA },
     { 0x2400, 0x2426 },
     { 0x2440, 0x244A },
     { 0x249C, 0x24E9 },
@@ -87,13 +88,16 @@
     { 0x25B8, 0x25C0 },
     { 0x25C2, 0x25F7 },
     { 0x2600, 0x266E },
-    { 0x2670, 0x26FF },
-    { 0x2701, 0x2767 },
+    { 0x2670, 0x2767 },
     { 0x2794, 0x27BF },
     { 0x2800, 0x28FF },
     { 0x2B00, 0x2B2F },
     { 0x2B45, 0x2B46 },
-    { 0x2B50, 0x2B59 },
+    { 0x2B4D, 0x2B73 },
+    { 0x2B76, 0x2B95 },
+    { 0x2B98, 0x2BB9 },
+    { 0x2BBD, 0x2BC8 },
+    { 0x2BCA, 0x2BD1 },
     { 0x2CE5, 0x2CEA },
     { 0x2E80, 0x2E99 },
     { 0x2E9B, 0x2EF3 },
@@ -127,8 +131,15 @@
     { 0xFFFC, 0xFFFD },
     { 0x10137, 0x1013F },
     { 0x10179, 0x10189 },
+    { 0x1018C, 0x1018C },
     { 0x10190, 0x1019B },
+    { 0x101A0, 0x101A0 },
     { 0x101D0, 0x101FC },
+    { 0x10877, 0x10878 },
+    { 0x10AC8, 0x10AC8 },
+    { 0x16B3C, 0x16B3F },
+    { 0x16B45, 0x16B45 },
+    { 0x1BC9C, 0x1BC9C },
     { 0x1D000, 0x1D0F5 },
     { 0x1D100, 0x1D126 },
     { 0x1D129, 0x1D164 },
@@ -142,9 +153,9 @@
     { 0x1F000, 0x1F02B },
     { 0x1F030, 0x1F093 },
     { 0x1F0A0, 0x1F0AE },
-    { 0x1F0B1, 0x1F0BE },
+    { 0x1F0B1, 0x1F0BF },
     { 0x1F0C1, 0x1F0CF },
-    { 0x1F0D1, 0x1F0DF },
+    { 0x1F0D1, 0x1F0F5 },
     { 0x1F110, 0x1F12E },
     { 0x1F130, 0x1F16B },
     { 0x1F170, 0x1F19A },
@@ -152,24 +163,25 @@
     { 0x1F210, 0x1F23A },
     { 0x1F240, 0x1F248 },
     { 0x1F250, 0x1F251 },
-    { 0x1F300, 0x1F320 },
-    { 0x1F330, 0x1F335 },
-    { 0x1F337, 0x1F37C },
-    { 0x1F380, 0x1F393 },
-    { 0x1F3A0, 0x1F3C4 },
-    { 0x1F3C6, 0x1F3CA },
-    { 0x1F3E0, 0x1F3F0 },
-    { 0x1F400, 0x1F43E },
-    { 0x1F440, 0x1F440 },
-    { 0x1F442, 0x1F4F7 },
-    { 0x1F4F9, 0x1F4FC },
-    { 0x1F500, 0x1F53D },
-    { 0x1F540, 0x1F543 },
-    { 0x1F550, 0x1F567 },
-    { 0x1F5FB, 0x1F640 },
-    { 0x1F645, 0x1F64F },
-    { 0x1F680, 0x1F6C5 },
-    { 0x1F700, 0x1F773 }
+    { 0x1F300, 0x1F32C },
+    { 0x1F330, 0x1F37D },
+    { 0x1F380, 0x1F3CE },
+    { 0x1F3D4, 0x1F3F7 },
+    { 0x1F400, 0x1F4FE },
+    { 0x1F500, 0x1F54A },
+    { 0x1F550, 0x1F579 },
+    { 0x1F57B, 0x1F5A3 },
+    { 0x1F5A5, 0x1F642 },
+    { 0x1F645, 0x1F6CF },
+    { 0x1F6E0, 0x1F6EC },
+    { 0x1F6F0, 0x1F6F3 },
+    { 0x1F700, 0x1F773 },
+    { 0x1F780, 0x1F7D4 },
+    { 0x1F800, 0x1F80B },
+    { 0x1F810, 0x1F847 },
+    { 0x1F850, 0x1F859 },
+    { 0x1F860, 0x1F887 },
+    { 0x1F890, 0x1F8AD }
 
 #define PREDICATE(c) uc_is_general_category (c, UC_CATEGORY_So)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-ctype_alnum.c
+++ b/tests/unictype/test-ctype_alnum.c
@@ -34,13 +34,14 @@
     { 0x0370, 0x0374 },
     { 0x0376, 0x0377 },
     { 0x037A, 0x037D },
+    { 0x037F, 0x037F },
     { 0x0386, 0x0386 },
     { 0x0388, 0x038A },
     { 0x038C, 0x038C },
     { 0x038E, 0x03A1 },
     { 0x03A3, 0x03F5 },
     { 0x03F7, 0x0481 },
-    { 0x048A, 0x0527 },
+    { 0x048A, 0x052F },
     { 0x0531, 0x0556 },
     { 0x0559, 0x0559 },
     { 0x0561, 0x0587 },
@@ -66,15 +67,13 @@
     { 0x0824, 0x0824 },
     { 0x0828, 0x0828 },
     { 0x0840, 0x0858 },
-    { 0x08A0, 0x08A0 },
-    { 0x08A2, 0x08AC },
+    { 0x08A0, 0x08B2 },
     { 0x0904, 0x0939 },
     { 0x093D, 0x093D },
     { 0x0950, 0x0950 },
     { 0x0958, 0x0961 },
     { 0x0966, 0x096F },
-    { 0x0971, 0x0977 },
-    { 0x0979, 0x097F },
+    { 0x0971, 0x0980 },
     { 0x0985, 0x098C },
     { 0x098F, 0x0990 },
     { 0x0993, 0x09A8 },
@@ -133,8 +132,7 @@
     { 0x0C05, 0x0C0C },
     { 0x0C0E, 0x0C10 },
     { 0x0C12, 0x0C28 },
-    { 0x0C2A, 0x0C33 },
-    { 0x0C35, 0x0C39 },
+    { 0x0C2A, 0x0C39 },
     { 0x0C3D, 0x0C3D },
     { 0x0C58, 0x0C59 },
     { 0x0C60, 0x0C61 },
@@ -162,6 +160,7 @@
     { 0x0DB3, 0x0DBB },
     { 0x0DBD, 0x0DBD },
     { 0x0DC0, 0x0DC6 },
+    { 0x0DE6, 0x0DEF },
     { 0x0E01, 0x0E2E },
     { 0x0E30, 0x0E3A },
     { 0x0E40, 0x0E45 },
@@ -226,7 +225,7 @@
     { 0x166F, 0x167F },
     { 0x1681, 0x169A },
     { 0x16A0, 0x16EA },
-    { 0x16EE, 0x16F0 },
+    { 0x16EE, 0x16F8 },
     { 0x1700, 0x170C },
     { 0x170E, 0x1711 },
     { 0x1720, 0x1731 },
@@ -242,7 +241,7 @@
     { 0x1880, 0x18A8 },
     { 0x18AA, 0x18AA },
     { 0x18B0, 0x18F5 },
-    { 0x1900, 0x191C },
+    { 0x1900, 0x191E },
     { 0x1946, 0x196D },
     { 0x1970, 0x1974 },
     { 0x1980, 0x19AB },
@@ -340,14 +339,14 @@
     { 0xA500, 0xA60C },
     { 0xA610, 0xA62B },
     { 0xA640, 0xA66E },
-    { 0xA67F, 0xA697 },
+    { 0xA67F, 0xA69D },
     { 0xA6A0, 0xA6EF },
     { 0xA717, 0xA71F },
     { 0xA722, 0xA788 },
     { 0xA78B, 0xA78E },
-    { 0xA790, 0xA793 },
-    { 0xA7A0, 0xA7AA },
-    { 0xA7F8, 0xA801 },
+    { 0xA790, 0xA7AD },
+    { 0xA7B0, 0xA7B1 },
+    { 0xA7F7, 0xA801 },
     { 0xA803, 0xA805 },
     { 0xA807, 0xA80A },
     { 0xA80C, 0xA822 },
@@ -361,13 +360,15 @@
     { 0xA960, 0xA97C },
     { 0xA984, 0xA9B2 },
     { 0xA9CF, 0xA9D9 },
+    { 0xA9E0, 0xA9E4 },
+    { 0xA9E6, 0xA9FE },
     { 0xAA00, 0xAA28 },
     { 0xAA40, 0xAA42 },
     { 0xAA44, 0xAA4B },
     { 0xAA50, 0xAA59 },
     { 0xAA60, 0xAA76 },
     { 0xAA7A, 0xAA7A },
-    { 0xAA80, 0xAAAF },
+    { 0xAA7E, 0xAAAF },
     { 0xAAB1, 0xAAB1 },
     { 0xAAB5, 0xAAB6 },
     { 0xAAB9, 0xAABD },
@@ -381,6 +382,9 @@
     { 0xAB11, 0xAB16 },
     { 0xAB20, 0xAB26 },
     { 0xAB28, 0xAB2E },
+    { 0xAB30, 0xAB5A },
+    { 0xAB5C, 0xAB5F },
+    { 0xAB64, 0xAB65 },
     { 0xABC0, 0xABE2 },
     { 0xABF0, 0xABF9 },
     { 0xAC00, 0xD7A3 },
@@ -422,20 +426,28 @@
     { 0x10140, 0x10174 },
     { 0x10280, 0x1029C },
     { 0x102A0, 0x102D0 },
-    { 0x10300, 0x1031E },
+    { 0x10300, 0x1031F },
     { 0x10330, 0x1034A },
+    { 0x10350, 0x10375 },
     { 0x10380, 0x1039D },
     { 0x103A0, 0x103C3 },
     { 0x103C8, 0x103CF },
     { 0x103D1, 0x103D5 },
     { 0x10400, 0x1049D },
     { 0x104A0, 0x104A9 },
+    { 0x10500, 0x10527 },
+    { 0x10530, 0x10563 },
+    { 0x10600, 0x10736 },
+    { 0x10740, 0x10755 },
+    { 0x10760, 0x10767 },
     { 0x10800, 0x10805 },
     { 0x10808, 0x10808 },
     { 0x1080A, 0x10835 },
     { 0x10837, 0x10838 },
     { 0x1083C, 0x1083C },
     { 0x1083F, 0x10855 },
+    { 0x10860, 0x10876 },
+    { 0x10880, 0x1089E },
     { 0x10900, 0x10915 },
     { 0x10920, 0x10939 },
     { 0x10980, 0x109B7 },
@@ -445,9 +457,13 @@
     { 0x10A15, 0x10A17 },
     { 0x10A19, 0x10A33 },
     { 0x10A60, 0x10A7C },
+    { 0x10A80, 0x10A9C },
+    { 0x10AC0, 0x10AC7 },
+    { 0x10AC9, 0x10AE4 },
     { 0x10B00, 0x10B35 },
     { 0x10B40, 0x10B55 },
     { 0x10B60, 0x10B72 },
+    { 0x10B80, 0x10B91 },
     { 0x10C00, 0x10C48 },
     { 0x11003, 0x11037 },
     { 0x11066, 0x1106F },
@@ -456,19 +472,56 @@
     { 0x110F0, 0x110F9 },
     { 0x11103, 0x11126 },
     { 0x11136, 0x1113F },
+    { 0x11150, 0x11172 },
+    { 0x11176, 0x11176 },
     { 0x11183, 0x111B2 },
     { 0x111C1, 0x111C4 },
-    { 0x111D0, 0x111D9 },
+    { 0x111D0, 0x111DA },
+    { 0x11200, 0x11211 },
+    { 0x11213, 0x1122B },
+    { 0x112B0, 0x112DE },
+    { 0x112F0, 0x112F9 },
+    { 0x11305, 0x1130C },
+    { 0x1130F, 0x11310 },
+    { 0x11313, 0x11328 },
+    { 0x1132A, 0x11330 },
+    { 0x11332, 0x11333 },
+    { 0x11335, 0x11339 },
+    { 0x1133D, 0x1133D },
+    { 0x1135D, 0x11361 },
+    { 0x11480, 0x114AF },
+    { 0x114C4, 0x114C5 },
+    { 0x114C7, 0x114C7 },
+    { 0x114D0, 0x114D9 },
+    { 0x11580, 0x115AE },
+    { 0x11600, 0x1162F },
+    { 0x11644, 0x11644 },
+    { 0x11650, 0x11659 },
     { 0x11680, 0x116AA },
     { 0x116C0, 0x116C9 },
-    { 0x12000, 0x1236E },
-    { 0x12400, 0x12462 },
+    { 0x118A0, 0x118E9 },
+    { 0x118FF, 0x118FF },
+    { 0x11AC0, 0x11AF8 },
+    { 0x12000, 0x12398 },
+    { 0x12400, 0x1246E },
     { 0x13000, 0x1342E },
     { 0x16800, 0x16A38 },
+    { 0x16A40, 0x16A5E },
+    { 0x16A60, 0x16A69 },
+    { 0x16AD0, 0x16AED },
+    { 0x16B00, 0x16B2F },
+    { 0x16B40, 0x16B43 },
+    { 0x16B50, 0x16B59 },
+    { 0x16B63, 0x16B77 },
+    { 0x16B7D, 0x16B8F },
     { 0x16F00, 0x16F44 },
     { 0x16F50, 0x16F50 },
     { 0x16F93, 0x16F9F },
     { 0x1B000, 0x1B001 },
+    { 0x1BC00, 0x1BC6A },
+    { 0x1BC70, 0x1BC7C },
+    { 0x1BC80, 0x1BC88 },
+    { 0x1BC90, 0x1BC99 },
     { 0x1D400, 0x1D454 },
     { 0x1D456, 0x1D49C },
     { 0x1D49E, 0x1D49F },
@@ -500,6 +553,7 @@
     { 0x1D7AA, 0x1D7C2 },
     { 0x1D7C4, 0x1D7CB },
     { 0x1D7CE, 0x1D7FF },
+    { 0x1E800, 0x1E8C4 },
     { 0x1EE00, 0x1EE03 },
     { 0x1EE05, 0x1EE1F },
     { 0x1EE21, 0x1EE22 },
--- a/tests/unictype/test-ctype_alpha.c
+++ b/tests/unictype/test-ctype_alpha.c
@@ -33,13 +33,14 @@
     { 0x0370, 0x0374 },
     { 0x0376, 0x0377 },
     { 0x037A, 0x037D },
+    { 0x037F, 0x037F },
     { 0x0386, 0x0386 },
     { 0x0388, 0x038A },
     { 0x038C, 0x038C },
     { 0x038E, 0x03A1 },
     { 0x03A3, 0x03F5 },
     { 0x03F7, 0x0481 },
-    { 0x048A, 0x0527 },
+    { 0x048A, 0x052F },
     { 0x0531, 0x0556 },
     { 0x0559, 0x0559 },
     { 0x0561, 0x0587 },
@@ -65,15 +66,13 @@
     { 0x0824, 0x0824 },
     { 0x0828, 0x0828 },
     { 0x0840, 0x0858 },
-    { 0x08A0, 0x08A0 },
-    { 0x08A2, 0x08AC },
+    { 0x08A0, 0x08B2 },
     { 0x0904, 0x0939 },
     { 0x093D, 0x093D },
     { 0x0950, 0x0950 },
     { 0x0958, 0x0961 },
     { 0x0966, 0x096F },
-    { 0x0971, 0x0977 },
-    { 0x0979, 0x097F },
+    { 0x0971, 0x0980 },
     { 0x0985, 0x098C },
     { 0x098F, 0x0990 },
     { 0x0993, 0x09A8 },
@@ -132,8 +131,7 @@
     { 0x0C05, 0x0C0C },
     { 0x0C0E, 0x0C10 },
     { 0x0C12, 0x0C28 },
-    { 0x0C2A, 0x0C33 },
-    { 0x0C35, 0x0C39 },
+    { 0x0C2A, 0x0C39 },
     { 0x0C3D, 0x0C3D },
     { 0x0C58, 0x0C59 },
     { 0x0C60, 0x0C61 },
@@ -161,6 +159,7 @@
     { 0x0DB3, 0x0DBB },
     { 0x0DBD, 0x0DBD },
     { 0x0DC0, 0x0DC6 },
+    { 0x0DE6, 0x0DEF },
     { 0x0E01, 0x0E2E },
     { 0x0E30, 0x0E3A },
     { 0x0E40, 0x0E45 },
@@ -225,7 +224,7 @@
     { 0x166F, 0x167F },
     { 0x1681, 0x169A },
     { 0x16A0, 0x16EA },
-    { 0x16EE, 0x16F0 },
+    { 0x16EE, 0x16F8 },
     { 0x1700, 0x170C },
     { 0x170E, 0x1711 },
     { 0x1720, 0x1731 },
@@ -241,7 +240,7 @@
     { 0x1880, 0x18A8 },
     { 0x18AA, 0x18AA },
     { 0x18B0, 0x18F5 },
-    { 0x1900, 0x191C },
+    { 0x1900, 0x191E },
     { 0x1946, 0x196D },
     { 0x1970, 0x1974 },
     { 0x1980, 0x19AB },
@@ -339,14 +338,14 @@
     { 0xA500, 0xA60C },
     { 0xA610, 0xA62B },
     { 0xA640, 0xA66E },
-    { 0xA67F, 0xA697 },
+    { 0xA67F, 0xA69D },
     { 0xA6A0, 0xA6EF },
     { 0xA717, 0xA71F },
     { 0xA722, 0xA788 },
     { 0xA78B, 0xA78E },
-    { 0xA790, 0xA793 },
-    { 0xA7A0, 0xA7AA },
-    { 0xA7F8, 0xA801 },
+    { 0xA790, 0xA7AD },
+    { 0xA7B0, 0xA7B1 },
+    { 0xA7F7, 0xA801 },
     { 0xA803, 0xA805 },
     { 0xA807, 0xA80A },
     { 0xA80C, 0xA822 },
@@ -360,13 +359,15 @@
     { 0xA960, 0xA97C },
     { 0xA984, 0xA9B2 },
     { 0xA9CF, 0xA9D9 },
+    { 0xA9E0, 0xA9E4 },
+    { 0xA9E6, 0xA9FE },
     { 0xAA00, 0xAA28 },
     { 0xAA40, 0xAA42 },
     { 0xAA44, 0xAA4B },
     { 0xAA50, 0xAA59 },
     { 0xAA60, 0xAA76 },
     { 0xAA7A, 0xAA7A },
-    { 0xAA80, 0xAAAF },
+    { 0xAA7E, 0xAAAF },
     { 0xAAB1, 0xAAB1 },
     { 0xAAB5, 0xAAB6 },
     { 0xAAB9, 0xAABD },
@@ -380,6 +381,9 @@
     { 0xAB11, 0xAB16 },
     { 0xAB20, 0xAB26 },
     { 0xAB28, 0xAB2E },
+    { 0xAB30, 0xAB5A },
+    { 0xAB5C, 0xAB5F },
+    { 0xAB64, 0xAB65 },
     { 0xABC0, 0xABE2 },
     { 0xABF0, 0xABF9 },
     { 0xAC00, 0xD7A3 },
@@ -421,20 +425,28 @@
     { 0x10140, 0x10174 },
     { 0x10280, 0x1029C },
     { 0x102A0, 0x102D0 },
-    { 0x10300, 0x1031E },
+    { 0x10300, 0x1031F },
     { 0x10330, 0x1034A },
+    { 0x10350, 0x10375 },
     { 0x10380, 0x1039D },
     { 0x103A0, 0x103C3 },
     { 0x103C8, 0x103CF },
     { 0x103D1, 0x103D5 },
     { 0x10400, 0x1049D },
     { 0x104A0, 0x104A9 },
+    { 0x10500, 0x10527 },
+    { 0x10530, 0x10563 },
+    { 0x10600, 0x10736 },
+    { 0x10740, 0x10755 },
+    { 0x10760, 0x10767 },
     { 0x10800, 0x10805 },
     { 0x10808, 0x10808 },
     { 0x1080A, 0x10835 },
     { 0x10837, 0x10838 },
     { 0x1083C, 0x1083C },
     { 0x1083F, 0x10855 },
+    { 0x10860, 0x10876 },
+    { 0x10880, 0x1089E },
     { 0x10900, 0x10915 },
     { 0x10920, 0x10939 },
     { 0x10980, 0x109B7 },
@@ -444,9 +456,13 @@
     { 0x10A15, 0x10A17 },
     { 0x10A19, 0x10A33 },
     { 0x10A60, 0x10A7C },
+    { 0x10A80, 0x10A9C },
+    { 0x10AC0, 0x10AC7 },
+    { 0x10AC9, 0x10AE4 },
     { 0x10B00, 0x10B35 },
     { 0x10B40, 0x10B55 },
     { 0x10B60, 0x10B72 },
+    { 0x10B80, 0x10B91 },
     { 0x10C00, 0x10C48 },
     { 0x11003, 0x11037 },
     { 0x11066, 0x1106F },
@@ -455,19 +471,56 @@
     { 0x110F0, 0x110F9 },
     { 0x11103, 0x11126 },
     { 0x11136, 0x1113F },
+    { 0x11150, 0x11172 },
+    { 0x11176, 0x11176 },
     { 0x11183, 0x111B2 },
     { 0x111C1, 0x111C4 },
-    { 0x111D0, 0x111D9 },
+    { 0x111D0, 0x111DA },
+    { 0x11200, 0x11211 },
+    { 0x11213, 0x1122B },
+    { 0x112B0, 0x112DE },
+    { 0x112F0, 0x112F9 },
+    { 0x11305, 0x1130C },
+    { 0x1130F, 0x11310 },
+    { 0x11313, 0x11328 },
+    { 0x1132A, 0x11330 },
+    { 0x11332, 0x11333 },
+    { 0x11335, 0x11339 },
+    { 0x1133D, 0x1133D },
+    { 0x1135D, 0x11361 },
+    { 0x11480, 0x114AF },
+    { 0x114C4, 0x114C5 },
+    { 0x114C7, 0x114C7 },
+    { 0x114D0, 0x114D9 },
+    { 0x11580, 0x115AE },
+    { 0x11600, 0x1162F },
+    { 0x11644, 0x11644 },
+    { 0x11650, 0x11659 },
     { 0x11680, 0x116AA },
     { 0x116C0, 0x116C9 },
-    { 0x12000, 0x1236E },
-    { 0x12400, 0x12462 },
+    { 0x118A0, 0x118E9 },
+    { 0x118FF, 0x118FF },
+    { 0x11AC0, 0x11AF8 },
+    { 0x12000, 0x12398 },
+    { 0x12400, 0x1246E },
     { 0x13000, 0x1342E },
     { 0x16800, 0x16A38 },
+    { 0x16A40, 0x16A5E },
+    { 0x16A60, 0x16A69 },
+    { 0x16AD0, 0x16AED },
+    { 0x16B00, 0x16B2F },
+    { 0x16B40, 0x16B43 },
+    { 0x16B50, 0x16B59 },
+    { 0x16B63, 0x16B77 },
+    { 0x16B7D, 0x16B8F },
     { 0x16F00, 0x16F44 },
     { 0x16F50, 0x16F50 },
     { 0x16F93, 0x16F9F },
     { 0x1B000, 0x1B001 },
+    { 0x1BC00, 0x1BC6A },
+    { 0x1BC70, 0x1BC7C },
+    { 0x1BC80, 0x1BC88 },
+    { 0x1BC90, 0x1BC99 },
     { 0x1D400, 0x1D454 },
     { 0x1D456, 0x1D49C },
     { 0x1D49E, 0x1D49F },
@@ -499,6 +552,7 @@
     { 0x1D7AA, 0x1D7C2 },
     { 0x1D7C4, 0x1D7CB },
     { 0x1D7CE, 0x1D7FF },
+    { 0x1E800, 0x1E8C4 },
     { 0x1EE00, 0x1EE03 },
     { 0x1EE05, 0x1EE1F },
     { 0x1EE21, 0x1EE22 },
--- a/tests/unictype/test-ctype_graph.c
+++ b/tests/unictype/test-ctype_graph.c
@@ -19,21 +19,20 @@
 
     { 0x0021, 0x007E },
     { 0x00A0, 0x0377 },
-    { 0x037A, 0x037E },
+    { 0x037A, 0x037F },
     { 0x0384, 0x038A },
     { 0x038C, 0x038C },
     { 0x038E, 0x03A1 },
-    { 0x03A3, 0x0527 },
+    { 0x03A3, 0x052F },
     { 0x0531, 0x0556 },
     { 0x0559, 0x055F },
     { 0x0561, 0x0587 },
     { 0x0589, 0x058A },
-    { 0x058F, 0x058F },
+    { 0x058D, 0x058F },
     { 0x0591, 0x05C7 },
     { 0x05D0, 0x05EA },
     { 0x05F0, 0x05F4 },
-    { 0x0600, 0x0604 },
-    { 0x0606, 0x061C },
+    { 0x0600, 0x061C },
     { 0x061E, 0x070D },
     { 0x070F, 0x074A },
     { 0x074D, 0x07B1 },
@@ -42,12 +41,8 @@
     { 0x0830, 0x083E },
     { 0x0840, 0x085B },
     { 0x085E, 0x085E },
-    { 0x08A0, 0x08A0 },
-    { 0x08A2, 0x08AC },
-    { 0x08E4, 0x08FE },
-    { 0x0900, 0x0977 },
-    { 0x0979, 0x097F },
-    { 0x0981, 0x0983 },
+    { 0x08A0, 0x08B2 },
+    { 0x08E4, 0x0983 },
     { 0x0985, 0x098C },
     { 0x098F, 0x0990 },
     { 0x0993, 0x09A8 },
@@ -120,12 +115,11 @@
     { 0x0BD0, 0x0BD0 },
     { 0x0BD7, 0x0BD7 },
     { 0x0BE6, 0x0BFA },
-    { 0x0C01, 0x0C03 },
+    { 0x0C00, 0x0C03 },
     { 0x0C05, 0x0C0C },
     { 0x0C0E, 0x0C10 },
     { 0x0C12, 0x0C28 },
-    { 0x0C2A, 0x0C33 },
-    { 0x0C35, 0x0C39 },
+    { 0x0C2A, 0x0C39 },
     { 0x0C3D, 0x0C44 },
     { 0x0C46, 0x0C48 },
     { 0x0C4A, 0x0C4D },
@@ -134,7 +128,7 @@
     { 0x0C60, 0x0C63 },
     { 0x0C66, 0x0C6F },
     { 0x0C78, 0x0C7F },
-    { 0x0C82, 0x0C83 },
+    { 0x0C81, 0x0C83 },
     { 0x0C85, 0x0C8C },
     { 0x0C8E, 0x0C90 },
     { 0x0C92, 0x0CA8 },
@@ -148,7 +142,7 @@
     { 0x0CE0, 0x0CE3 },
     { 0x0CE6, 0x0CEF },
     { 0x0CF1, 0x0CF2 },
-    { 0x0D02, 0x0D03 },
+    { 0x0D01, 0x0D03 },
     { 0x0D05, 0x0D0C },
     { 0x0D0E, 0x0D10 },
     { 0x0D12, 0x0D3A },
@@ -169,6 +163,7 @@
     { 0x0DCF, 0x0DD4 },
     { 0x0DD6, 0x0DD6 },
     { 0x0DD8, 0x0DDF },
+    { 0x0DE6, 0x0DEF },
     { 0x0DF2, 0x0DF4 },
     { 0x0E01, 0x0E3A },
     { 0x0E3F, 0x0E5B },
@@ -220,7 +215,7 @@
     { 0x13A0, 0x13F4 },
     { 0x1400, 0x167F },
     { 0x1681, 0x169C },
-    { 0x16A0, 0x16F0 },
+    { 0x16A0, 0x16F8 },
     { 0x1700, 0x170C },
     { 0x170E, 0x1714 },
     { 0x1720, 0x1736 },
@@ -236,7 +231,7 @@
     { 0x1820, 0x1877 },
     { 0x1880, 0x18AA },
     { 0x18B0, 0x18F5 },
-    { 0x1900, 0x191C },
+    { 0x1900, 0x191E },
     { 0x1920, 0x192B },
     { 0x1930, 0x193B },
     { 0x1940, 0x1940 },
@@ -251,6 +246,7 @@
     { 0x1A7F, 0x1A89 },
     { 0x1A90, 0x1A99 },
     { 0x1AA0, 0x1AAD },
+    { 0x1AB0, 0x1ABE },
     { 0x1B00, 0x1B4B },
     { 0x1B50, 0x1B7C },
     { 0x1B80, 0x1BF3 },
@@ -259,7 +255,8 @@
     { 0x1C4D, 0x1C7F },
     { 0x1CC0, 0x1CC7 },
     { 0x1CD0, 0x1CF6 },
-    { 0x1D00, 0x1DE6 },
+    { 0x1CF8, 0x1CF9 },
+    { 0x1D00, 0x1DF5 },
     { 0x1DFC, 0x1F15 },
     { 0x1F18, 0x1F1D },
     { 0x1F20, 0x1F45 },
@@ -283,15 +280,17 @@
     { 0x2066, 0x2071 },
     { 0x2074, 0x208E },
     { 0x2090, 0x209C },
-    { 0x20A0, 0x20BA },
+    { 0x20A0, 0x20BD },
     { 0x20D0, 0x20F0 },
     { 0x2100, 0x2189 },
-    { 0x2190, 0x23F3 },
+    { 0x2190, 0x23FA },
     { 0x2400, 0x2426 },
     { 0x2440, 0x244A },
-    { 0x2460, 0x26FF },
-    { 0x2701, 0x2B4C },
-    { 0x2B50, 0x2B59 },
+    { 0x2460, 0x2B73 },
+    { 0x2B76, 0x2B95 },
+    { 0x2B98, 0x2BB9 },
+    { 0x2BBD, 0x2BC8 },
+    { 0x2BCA, 0x2BD1 },
     { 0x2C00, 0x2C2E },
     { 0x2C30, 0x2C5E },
     { 0x2C60, 0x2CF3 },
@@ -309,7 +308,7 @@
     { 0x2DC8, 0x2DCE },
     { 0x2DD0, 0x2DD6 },
     { 0x2DD8, 0x2DDE },
-    { 0x2DE0, 0x2E3B },
+    { 0x2DE0, 0x2E42 },
     { 0x2E80, 0x2E99 },
     { 0x2E9B, 0x2EF3 },
     { 0x2F00, 0x2FD5 },
@@ -328,12 +327,12 @@
     { 0xA000, 0xA48C },
     { 0xA490, 0xA4C6 },
     { 0xA4D0, 0xA62B },
-    { 0xA640, 0xA697 },
+    { 0xA640, 0xA69D },
     { 0xA69F, 0xA6F7 },
     { 0xA700, 0xA78E },
-    { 0xA790, 0xA793 },
-    { 0xA7A0, 0xA7AA },
-    { 0xA7F8, 0xA82B },
+    { 0xA790, 0xA7AD },
+    { 0xA7B0, 0xA7B1 },
+    { 0xA7F7, 0xA82B },
     { 0xA830, 0xA839 },
     { 0xA840, 0xA877 },
     { 0xA880, 0xA8C4 },
@@ -343,18 +342,19 @@
     { 0xA95F, 0xA97C },
     { 0xA980, 0xA9CD },
     { 0xA9CF, 0xA9D9 },
-    { 0xA9DE, 0xA9DF },
+    { 0xA9DE, 0xA9FE },
     { 0xAA00, 0xAA36 },
     { 0xAA40, 0xAA4D },
     { 0xAA50, 0xAA59 },
-    { 0xAA5C, 0xAA7B },
-    { 0xAA80, 0xAAC2 },
+    { 0xAA5C, 0xAAC2 },
     { 0xAADB, 0xAAF6 },
     { 0xAB01, 0xAB06 },
     { 0xAB09, 0xAB0E },
     { 0xAB11, 0xAB16 },
     { 0xAB20, 0xAB26 },
     { 0xAB28, 0xAB2E },
+    { 0xAB30, 0xAB5F },
+    { 0xAB64, 0xAB65 },
     { 0xABC0, 0xABED },
     { 0xABF0, 0xABF9 },
     { 0xAC00, 0xD7A3 },
@@ -375,7 +375,7 @@
     { 0xFD92, 0xFDC7 },
     { 0xFDF0, 0xFDFD },
     { 0xFE00, 0xFE19 },
-    { 0xFE20, 0xFE26 },
+    { 0xFE20, 0xFE2D },
     { 0xFE30, 0xFE52 },
     { 0xFE54, 0xFE66 },
     { 0xFE68, 0xFE6B },
@@ -399,26 +399,35 @@
     { 0x10080, 0x100FA },
     { 0x10100, 0x10102 },
     { 0x10107, 0x10133 },
-    { 0x10137, 0x1018A },
+    { 0x10137, 0x1018C },
     { 0x10190, 0x1019B },
+    { 0x101A0, 0x101A0 },
     { 0x101D0, 0x101FD },
     { 0x10280, 0x1029C },
     { 0x102A0, 0x102D0 },
-    { 0x10300, 0x1031E },
-    { 0x10320, 0x10323 },
+    { 0x102E0, 0x102FB },
+    { 0x10300, 0x10323 },
     { 0x10330, 0x1034A },
+    { 0x10350, 0x1037A },
     { 0x10380, 0x1039D },
     { 0x1039F, 0x103C3 },
     { 0x103C8, 0x103D5 },
     { 0x10400, 0x1049D },
     { 0x104A0, 0x104A9 },
+    { 0x10500, 0x10527 },
+    { 0x10530, 0x10563 },
+    { 0x1056F, 0x1056F },
+    { 0x10600, 0x10736 },
+    { 0x10740, 0x10755 },
+    { 0x10760, 0x10767 },
     { 0x10800, 0x10805 },
     { 0x10808, 0x10808 },
     { 0x1080A, 0x10835 },
     { 0x10837, 0x10838 },
     { 0x1083C, 0x1083C },
     { 0x1083F, 0x10855 },
-    { 0x10857, 0x1085F },
+    { 0x10857, 0x1089E },
+    { 0x108A7, 0x108AF },
     { 0x10900, 0x1091B },
     { 0x1091F, 0x10939 },
     { 0x1093F, 0x1093F },
@@ -432,33 +441,82 @@
     { 0x10A38, 0x10A3A },
     { 0x10A3F, 0x10A47 },
     { 0x10A50, 0x10A58 },
-    { 0x10A60, 0x10A7F },
+    { 0x10A60, 0x10A9F },
+    { 0x10AC0, 0x10AE6 },
+    { 0x10AEB, 0x10AF6 },
     { 0x10B00, 0x10B35 },
     { 0x10B39, 0x10B55 },
     { 0x10B58, 0x10B72 },
-    { 0x10B78, 0x10B7F },
+    { 0x10B78, 0x10B91 },
+    { 0x10B99, 0x10B9C },
+    { 0x10BA9, 0x10BAF },
     { 0x10C00, 0x10C48 },
     { 0x10E60, 0x10E7E },
     { 0x11000, 0x1104D },
     { 0x11052, 0x1106F },
-    { 0x11080, 0x110C1 },
+    { 0x1107F, 0x110C1 },
     { 0x110D0, 0x110E8 },
     { 0x110F0, 0x110F9 },
     { 0x11100, 0x11134 },
     { 0x11136, 0x11143 },
+    { 0x11150, 0x11176 },
     { 0x11180, 0x111C8 },
-    { 0x111D0, 0x111D9 },
+    { 0x111CD, 0x111CD },
+    { 0x111D0, 0x111DA },
+    { 0x111E1, 0x111F4 },
+    { 0x11200, 0x11211 },
+    { 0x11213, 0x1123D },
+    { 0x112B0, 0x112EA },
+    { 0x112F0, 0x112F9 },
+    { 0x11301, 0x11303 },
+    { 0x11305, 0x1130C },
+    { 0x1130F, 0x11310 },
+    { 0x11313, 0x11328 },
+    { 0x1132A, 0x11330 },
+    { 0x11332, 0x11333 },
+    { 0x11335, 0x11339 },
+    { 0x1133C, 0x11344 },
+    { 0x11347, 0x11348 },
+    { 0x1134B, 0x1134D },
+    { 0x11357, 0x11357 },
+    { 0x1135D, 0x11363 },
+    { 0x11366, 0x1136C },
+    { 0x11370, 0x11374 },
+    { 0x11480, 0x114C7 },
+    { 0x114D0, 0x114D9 },
+    { 0x11580, 0x115B5 },
+    { 0x115B8, 0x115C9 },
+    { 0x11600, 0x11644 },
+    { 0x11650, 0x11659 },
     { 0x11680, 0x116B7 },
     { 0x116C0, 0x116C9 },
-    { 0x12000, 0x1236E },
-    { 0x12400, 0x12462 },
-    { 0x12470, 0x12473 },
+    { 0x118A0, 0x118F2 },
+    { 0x118FF, 0x118FF },
+    { 0x11AC0, 0x11AF8 },
+    { 0x12000, 0x12398 },
+    { 0x12400, 0x1246E },
+    { 0x12470, 0x12474 },
     { 0x13000, 0x1342E },
     { 0x16800, 0x16A38 },
+    { 0x16A40, 0x16A5E },
+    { 0x16A60, 0x16A69 },
+    { 0x16A6E, 0x16A6F },
+    { 0x16AD0, 0x16AED },
+    { 0x16AF0, 0x16AF5 },
+    { 0x16B00, 0x16B45 },
+    { 0x16B50, 0x16B59 },
+    { 0x16B5B, 0x16B61 },
+    { 0x16B63, 0x16B77 },
+    { 0x16B7D, 0x16B8F },
     { 0x16F00, 0x16F44 },
     { 0x16F50, 0x16F7E },
     { 0x16F8F, 0x16F9F },
     { 0x1B000, 0x1B001 },
+    { 0x1BC00, 0x1BC6A },
+    { 0x1BC70, 0x1BC7C },
+    { 0x1BC80, 0x1BC88 },
+    { 0x1BC90, 0x1BC99 },
+    { 0x1BC9C, 0x1BCA3 },
     { 0x1D000, 0x1D0F5 },
     { 0x1D100, 0x1D126 },
     { 0x1D129, 0x1D1DD },
@@ -486,6 +544,8 @@
     { 0x1D552, 0x1D6A5 },
     { 0x1D6A8, 0x1D7CB },
     { 0x1D7CE, 0x1D7FF },
+    { 0x1E800, 0x1E8C4 },
+    { 0x1E8C7, 0x1E8D6 },
     { 0x1EE00, 0x1EE03 },
     { 0x1EE05, 0x1EE1F },
     { 0x1EE21, 0x1EE22 },
@@ -523,10 +583,10 @@
     { 0x1F000, 0x1F02B },
     { 0x1F030, 0x1F093 },
     { 0x1F0A0, 0x1F0AE },
-    { 0x1F0B1, 0x1F0BE },
+    { 0x1F0B1, 0x1F0BF },
     { 0x1F0C1, 0x1F0CF },
-    { 0x1F0D1, 0x1F0DF },
-    { 0x1F100, 0x1F10A },
+    { 0x1F0D1, 0x1F0F5 },
+    { 0x1F100, 0x1F10C },
     { 0x1F110, 0x1F12E },
     { 0x1F130, 0x1F16B },
     { 0x1F170, 0x1F19A },
@@ -534,24 +594,25 @@
     { 0x1F210, 0x1F23A },
     { 0x1F240, 0x1F248 },
     { 0x1F250, 0x1F251 },
-    { 0x1F300, 0x1F320 },
-    { 0x1F330, 0x1F335 },
-    { 0x1F337, 0x1F37C },
-    { 0x1F380, 0x1F393 },
-    { 0x1F3A0, 0x1F3C4 },
-    { 0x1F3C6, 0x1F3CA },
-    { 0x1F3E0, 0x1F3F0 },
-    { 0x1F400, 0x1F43E },
-    { 0x1F440, 0x1F440 },
-    { 0x1F442, 0x1F4F7 },
-    { 0x1F4F9, 0x1F4FC },
-    { 0x1F500, 0x1F53D },
-    { 0x1F540, 0x1F543 },
-    { 0x1F550, 0x1F567 },
-    { 0x1F5FB, 0x1F640 },
-    { 0x1F645, 0x1F64F },
-    { 0x1F680, 0x1F6C5 },
+    { 0x1F300, 0x1F32C },
+    { 0x1F330, 0x1F37D },
+    { 0x1F380, 0x1F3CE },
+    { 0x1F3D4, 0x1F3F7 },
+    { 0x1F400, 0x1F4FE },
+    { 0x1F500, 0x1F54A },
+    { 0x1F550, 0x1F579 },
+    { 0x1F57B, 0x1F5A3 },
+    { 0x1F5A5, 0x1F642 },
+    { 0x1F645, 0x1F6CF },
+    { 0x1F6E0, 0x1F6EC },
+    { 0x1F6F0, 0x1F6F3 },
     { 0x1F700, 0x1F773 },
+    { 0x1F780, 0x1F7D4 },
+    { 0x1F800, 0x1F80B },
+    { 0x1F810, 0x1F847 },
+    { 0x1F850, 0x1F859 },
+    { 0x1F860, 0x1F887 },
+    { 0x1F890, 0x1F8AD },
     { 0x20000, 0x2A6D6 },
     { 0x2A700, 0x2B734 },
     { 0x2B740, 0x2B81D },
--- a/tests/unictype/test-ctype_lower.c
+++ b/tests/unictype/test-ctype_lower.c
@@ -163,20 +163,21 @@
     { 0x024F, 0x0254 },
     { 0x0256, 0x0257 },
     { 0x0259, 0x0259 },
-    { 0x025B, 0x025B },
-    { 0x0260, 0x0260 },
+    { 0x025B, 0x025C },
+    { 0x0260, 0x0261 },
     { 0x0263, 0x0263 },
     { 0x0265, 0x0266 },
     { 0x0268, 0x0269 },
-    { 0x026B, 0x026B },
+    { 0x026B, 0x026C },
     { 0x026F, 0x026F },
     { 0x0271, 0x0272 },
     { 0x0275, 0x0275 },
     { 0x027D, 0x027D },
     { 0x0280, 0x0280 },
     { 0x0283, 0x0283 },
-    { 0x0288, 0x028C },
+    { 0x0287, 0x028C },
     { 0x0292, 0x0292 },
+    { 0x029E, 0x029E },
     { 0x0345, 0x0345 },
     { 0x0371, 0x0371 },
     { 0x0373, 0x0373 },
@@ -197,7 +198,7 @@
     { 0x03E9, 0x03E9 },
     { 0x03EB, 0x03EB },
     { 0x03ED, 0x03ED },
-    { 0x03EF, 0x03F2 },
+    { 0x03EF, 0x03F3 },
     { 0x03F5, 0x03F5 },
     { 0x03F8, 0x03F8 },
     { 0x03FB, 0x03FB },
@@ -297,6 +298,10 @@
     { 0x0523, 0x0523 },
     { 0x0525, 0x0525 },
     { 0x0527, 0x0527 },
+    { 0x0529, 0x0529 },
+    { 0x052B, 0x052B },
+    { 0x052D, 0x052D },
+    { 0x052F, 0x052F },
     { 0x0561, 0x0586 },
     { 0x1D79, 0x1D79 },
     { 0x1D7D, 0x1D7D },
@@ -548,6 +553,8 @@
     { 0xA693, 0xA693 },
     { 0xA695, 0xA695 },
     { 0xA697, 0xA697 },
+    { 0xA699, 0xA699 },
+    { 0xA69B, 0xA69B },
     { 0xA723, 0xA723 },
     { 0xA725, 0xA725 },
     { 0xA727, 0xA727 },
@@ -596,13 +603,19 @@
     { 0xA78C, 0xA78C },
     { 0xA791, 0xA791 },
     { 0xA793, 0xA793 },
+    { 0xA797, 0xA797 },
+    { 0xA799, 0xA799 },
+    { 0xA79B, 0xA79B },
+    { 0xA79D, 0xA79D },
+    { 0xA79F, 0xA79F },
     { 0xA7A1, 0xA7A1 },
     { 0xA7A3, 0xA7A3 },
     { 0xA7A5, 0xA7A5 },
     { 0xA7A7, 0xA7A7 },
     { 0xA7A9, 0xA7A9 },
     { 0xFF41, 0xFF5A },
-    { 0x10428, 0x1044F }
+    { 0x10428, 0x1044F },
+    { 0x118C0, 0x118DF }
 
 #define PREDICATE(c) uc_is_lower (c)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-ctype_print.c
+++ b/tests/unictype/test-ctype_print.c
@@ -19,21 +19,20 @@
 
     { 0x0020, 0x007E },
     { 0x00A0, 0x0377 },
-    { 0x037A, 0x037E },
+    { 0x037A, 0x037F },
     { 0x0384, 0x038A },
     { 0x038C, 0x038C },
     { 0x038E, 0x03A1 },
-    { 0x03A3, 0x0527 },
+    { 0x03A3, 0x052F },
     { 0x0531, 0x0556 },
     { 0x0559, 0x055F },
     { 0x0561, 0x0587 },
     { 0x0589, 0x058A },
-    { 0x058F, 0x058F },
+    { 0x058D, 0x058F },
     { 0x0591, 0x05C7 },
     { 0x05D0, 0x05EA },
     { 0x05F0, 0x05F4 },
-    { 0x0600, 0x0604 },
-    { 0x0606, 0x061C },
+    { 0x0600, 0x061C },
     { 0x061E, 0x070D },
     { 0x070F, 0x074A },
     { 0x074D, 0x07B1 },
@@ -42,12 +41,8 @@
     { 0x0830, 0x083E },
     { 0x0840, 0x085B },
     { 0x085E, 0x085E },
-    { 0x08A0, 0x08A0 },
-    { 0x08A2, 0x08AC },
-    { 0x08E4, 0x08FE },
-    { 0x0900, 0x0977 },
-    { 0x0979, 0x097F },
-    { 0x0981, 0x0983 },
+    { 0x08A0, 0x08B2 },
+    { 0x08E4, 0x0983 },
     { 0x0985, 0x098C },
     { 0x098F, 0x0990 },
     { 0x0993, 0x09A8 },
@@ -120,12 +115,11 @@
     { 0x0BD0, 0x0BD0 },
     { 0x0BD7, 0x0BD7 },
     { 0x0BE6, 0x0BFA },
-    { 0x0C01, 0x0C03 },
+    { 0x0C00, 0x0C03 },
     { 0x0C05, 0x0C0C },
     { 0x0C0E, 0x0C10 },
     { 0x0C12, 0x0C28 },
-    { 0x0C2A, 0x0C33 },
-    { 0x0C35, 0x0C39 },
+    { 0x0C2A, 0x0C39 },
     { 0x0C3D, 0x0C44 },
     { 0x0C46, 0x0C48 },
     { 0x0C4A, 0x0C4D },
@@ -134,7 +128,7 @@
     { 0x0C60, 0x0C63 },
     { 0x0C66, 0x0C6F },
     { 0x0C78, 0x0C7F },
-    { 0x0C82, 0x0C83 },
+    { 0x0C81, 0x0C83 },
     { 0x0C85, 0x0C8C },
     { 0x0C8E, 0x0C90 },
     { 0x0C92, 0x0CA8 },
@@ -148,7 +142,7 @@
     { 0x0CE0, 0x0CE3 },
     { 0x0CE6, 0x0CEF },
     { 0x0CF1, 0x0CF2 },
-    { 0x0D02, 0x0D03 },
+    { 0x0D01, 0x0D03 },
     { 0x0D05, 0x0D0C },
     { 0x0D0E, 0x0D10 },
     { 0x0D12, 0x0D3A },
@@ -169,6 +163,7 @@
     { 0x0DCF, 0x0DD4 },
     { 0x0DD6, 0x0DD6 },
     { 0x0DD8, 0x0DDF },
+    { 0x0DE6, 0x0DEF },
     { 0x0DF2, 0x0DF4 },
     { 0x0E01, 0x0E3A },
     { 0x0E3F, 0x0E5B },
@@ -219,7 +214,7 @@
     { 0x1380, 0x1399 },
     { 0x13A0, 0x13F4 },
     { 0x1400, 0x169C },
-    { 0x16A0, 0x16F0 },
+    { 0x16A0, 0x16F8 },
     { 0x1700, 0x170C },
     { 0x170E, 0x1714 },
     { 0x1720, 0x1736 },
@@ -235,7 +230,7 @@
     { 0x1820, 0x1877 },
     { 0x1880, 0x18AA },
     { 0x18B0, 0x18F5 },
-    { 0x1900, 0x191C },
+    { 0x1900, 0x191E },
     { 0x1920, 0x192B },
     { 0x1930, 0x193B },
     { 0x1940, 0x1940 },
@@ -250,6 +245,7 @@
     { 0x1A7F, 0x1A89 },
     { 0x1A90, 0x1A99 },
     { 0x1AA0, 0x1AAD },
+    { 0x1AB0, 0x1ABE },
     { 0x1B00, 0x1B4B },
     { 0x1B50, 0x1B7C },
     { 0x1B80, 0x1BF3 },
@@ -258,7 +254,8 @@
     { 0x1C4D, 0x1C7F },
     { 0x1CC0, 0x1CC7 },
     { 0x1CD0, 0x1CF6 },
-    { 0x1D00, 0x1DE6 },
+    { 0x1CF8, 0x1CF9 },
+    { 0x1D00, 0x1DF5 },
     { 0x1DFC, 0x1F15 },
     { 0x1F18, 0x1F1D },
     { 0x1F20, 0x1F45 },
@@ -280,15 +277,17 @@
     { 0x2066, 0x2071 },
     { 0x2074, 0x208E },
     { 0x2090, 0x209C },
-    { 0x20A0, 0x20BA },
+    { 0x20A0, 0x20BD },
     { 0x20D0, 0x20F0 },
     { 0x2100, 0x2189 },
-    { 0x2190, 0x23F3 },
+    { 0x2190, 0x23FA },
     { 0x2400, 0x2426 },
     { 0x2440, 0x244A },
-    { 0x2460, 0x26FF },
-    { 0x2701, 0x2B4C },
-    { 0x2B50, 0x2B59 },
+    { 0x2460, 0x2B73 },
+    { 0x2B76, 0x2B95 },
+    { 0x2B98, 0x2BB9 },
+    { 0x2BBD, 0x2BC8 },
+    { 0x2BCA, 0x2BD1 },
     { 0x2C00, 0x2C2E },
     { 0x2C30, 0x2C5E },
     { 0x2C60, 0x2CF3 },
@@ -306,7 +305,7 @@
     { 0x2DC8, 0x2DCE },
     { 0x2DD0, 0x2DD6 },
     { 0x2DD8, 0x2DDE },
-    { 0x2DE0, 0x2E3B },
+    { 0x2DE0, 0x2E42 },
     { 0x2E80, 0x2E99 },
     { 0x2E9B, 0x2EF3 },
     { 0x2F00, 0x2FD5 },
@@ -325,12 +324,12 @@
     { 0xA000, 0xA48C },
     { 0xA490, 0xA4C6 },
     { 0xA4D0, 0xA62B },
-    { 0xA640, 0xA697 },
+    { 0xA640, 0xA69D },
     { 0xA69F, 0xA6F7 },
     { 0xA700, 0xA78E },
-    { 0xA790, 0xA793 },
-    { 0xA7A0, 0xA7AA },
-    { 0xA7F8, 0xA82B },
+    { 0xA790, 0xA7AD },
+    { 0xA7B0, 0xA7B1 },
+    { 0xA7F7, 0xA82B },
     { 0xA830, 0xA839 },
     { 0xA840, 0xA877 },
     { 0xA880, 0xA8C4 },
@@ -340,18 +339,19 @@
     { 0xA95F, 0xA97C },
     { 0xA980, 0xA9CD },
     { 0xA9CF, 0xA9D9 },
-    { 0xA9DE, 0xA9DF },
+    { 0xA9DE, 0xA9FE },
     { 0xAA00, 0xAA36 },
     { 0xAA40, 0xAA4D },
     { 0xAA50, 0xAA59 },
-    { 0xAA5C, 0xAA7B },
-    { 0xAA80, 0xAAC2 },
+    { 0xAA5C, 0xAAC2 },
     { 0xAADB, 0xAAF6 },
     { 0xAB01, 0xAB06 },
     { 0xAB09, 0xAB0E },
     { 0xAB11, 0xAB16 },
     { 0xAB20, 0xAB26 },
     { 0xAB28, 0xAB2E },
+    { 0xAB30, 0xAB5F },
+    { 0xAB64, 0xAB65 },
     { 0xABC0, 0xABED },
     { 0xABF0, 0xABF9 },
     { 0xAC00, 0xD7A3 },
@@ -372,7 +372,7 @@
     { 0xFD92, 0xFDC7 },
     { 0xFDF0, 0xFDFD },
     { 0xFE00, 0xFE19 },
-    { 0xFE20, 0xFE26 },
+    { 0xFE20, 0xFE2D },
     { 0xFE30, 0xFE52 },
     { 0xFE54, 0xFE66 },
     { 0xFE68, 0xFE6B },
@@ -396,26 +396,35 @@
     { 0x10080, 0x100FA },
     { 0x10100, 0x10102 },
     { 0x10107, 0x10133 },
-    { 0x10137, 0x1018A },
+    { 0x10137, 0x1018C },
     { 0x10190, 0x1019B },
+    { 0x101A0, 0x101A0 },
     { 0x101D0, 0x101FD },
     { 0x10280, 0x1029C },
     { 0x102A0, 0x102D0 },
-    { 0x10300, 0x1031E },
-    { 0x10320, 0x10323 },
+    { 0x102E0, 0x102FB },
+    { 0x10300, 0x10323 },
     { 0x10330, 0x1034A },
+    { 0x10350, 0x1037A },
     { 0x10380, 0x1039D },
     { 0x1039F, 0x103C3 },
     { 0x103C8, 0x103D5 },
     { 0x10400, 0x1049D },
     { 0x104A0, 0x104A9 },
+    { 0x10500, 0x10527 },
+    { 0x10530, 0x10563 },
+    { 0x1056F, 0x1056F },
+    { 0x10600, 0x10736 },
+    { 0x10740, 0x10755 },
+    { 0x10760, 0x10767 },
     { 0x10800, 0x10805 },
     { 0x10808, 0x10808 },
     { 0x1080A, 0x10835 },
     { 0x10837, 0x10838 },
     { 0x1083C, 0x1083C },
     { 0x1083F, 0x10855 },
-    { 0x10857, 0x1085F },
+    { 0x10857, 0x1089E },
+    { 0x108A7, 0x108AF },
     { 0x10900, 0x1091B },
     { 0x1091F, 0x10939 },
     { 0x1093F, 0x1093F },
@@ -429,33 +438,82 @@
     { 0x10A38, 0x10A3A },
     { 0x10A3F, 0x10A47 },
     { 0x10A50, 0x10A58 },
-    { 0x10A60, 0x10A7F },
+    { 0x10A60, 0x10A9F },
+    { 0x10AC0, 0x10AE6 },
+    { 0x10AEB, 0x10AF6 },
     { 0x10B00, 0x10B35 },
     { 0x10B39, 0x10B55 },
     { 0x10B58, 0x10B72 },
-    { 0x10B78, 0x10B7F },
+    { 0x10B78, 0x10B91 },
+    { 0x10B99, 0x10B9C },
+    { 0x10BA9, 0x10BAF },
     { 0x10C00, 0x10C48 },
     { 0x10E60, 0x10E7E },
     { 0x11000, 0x1104D },
     { 0x11052, 0x1106F },
-    { 0x11080, 0x110C1 },
+    { 0x1107F, 0x110C1 },
     { 0x110D0, 0x110E8 },
     { 0x110F0, 0x110F9 },
     { 0x11100, 0x11134 },
     { 0x11136, 0x11143 },
+    { 0x11150, 0x11176 },
     { 0x11180, 0x111C8 },
-    { 0x111D0, 0x111D9 },
+    { 0x111CD, 0x111CD },
+    { 0x111D0, 0x111DA },
+    { 0x111E1, 0x111F4 },
+    { 0x11200, 0x11211 },
+    { 0x11213, 0x1123D },
+    { 0x112B0, 0x112EA },
+    { 0x112F0, 0x112F9 },
+    { 0x11301, 0x11303 },
+    { 0x11305, 0x1130C },
+    { 0x1130F, 0x11310 },
+    { 0x11313, 0x11328 },
+    { 0x1132A, 0x11330 },
+    { 0x11332, 0x11333 },
+    { 0x11335, 0x11339 },
+    { 0x1133C, 0x11344 },
+    { 0x11347, 0x11348 },
+    { 0x1134B, 0x1134D },
+    { 0x11357, 0x11357 },
+    { 0x1135D, 0x11363 },
+    { 0x11366, 0x1136C },
+    { 0x11370, 0x11374 },
+    { 0x11480, 0x114C7 },
+    { 0x114D0, 0x114D9 },
+    { 0x11580, 0x115B5 },
+    { 0x115B8, 0x115C9 },
+    { 0x11600, 0x11644 },
+    { 0x11650, 0x11659 },
     { 0x11680, 0x116B7 },
     { 0x116C0, 0x116C9 },
-    { 0x12000, 0x1236E },
-    { 0x12400, 0x12462 },
-    { 0x12470, 0x12473 },
+    { 0x118A0, 0x118F2 },
+    { 0x118FF, 0x118FF },
+    { 0x11AC0, 0x11AF8 },
+    { 0x12000, 0x12398 },
+    { 0x12400, 0x1246E },
+    { 0x12470, 0x12474 },
     { 0x13000, 0x1342E },
     { 0x16800, 0x16A38 },
+    { 0x16A40, 0x16A5E },
+    { 0x16A60, 0x16A69 },
+    { 0x16A6E, 0x16A6F },
+    { 0x16AD0, 0x16AED },
+    { 0x16AF0, 0x16AF5 },
+    { 0x16B00, 0x16B45 },
+    { 0x16B50, 0x16B59 },
+    { 0x16B5B, 0x16B61 },
+    { 0x16B63, 0x16B77 },
+    { 0x16B7D, 0x16B8F },
     { 0x16F00, 0x16F44 },
     { 0x16F50, 0x16F7E },
     { 0x16F8F, 0x16F9F },
     { 0x1B000, 0x1B001 },
+    { 0x1BC00, 0x1BC6A },
+    { 0x1BC70, 0x1BC7C },
+    { 0x1BC80, 0x1BC88 },
+    { 0x1BC90, 0x1BC99 },
+    { 0x1BC9C, 0x1BCA3 },
     { 0x1D000, 0x1D0F5 },
     { 0x1D100, 0x1D126 },
     { 0x1D129, 0x1D1DD },
@@ -483,6 +541,8 @@
     { 0x1D552, 0x1D6A5 },
     { 0x1D6A8, 0x1D7CB },
     { 0x1D7CE, 0x1D7FF },
+    { 0x1E800, 0x1E8C4 },
+    { 0x1E8C7, 0x1E8D6 },
     { 0x1EE00, 0x1EE03 },
     { 0x1EE05, 0x1EE1F },
     { 0x1EE21, 0x1EE22 },
@@ -520,10 +580,10 @@
     { 0x1F000, 0x1F02B },
     { 0x1F030, 0x1F093 },
     { 0x1F0A0, 0x1F0AE },
-    { 0x1F0B1, 0x1F0BE },
+    { 0x1F0B1, 0x1F0BF },
     { 0x1F0C1, 0x1F0CF },
-    { 0x1F0D1, 0x1F0DF },
-    { 0x1F100, 0x1F10A },
+    { 0x1F0D1, 0x1F0F5 },
+    { 0x1F100, 0x1F10C },
     { 0x1F110, 0x1F12E },
     { 0x1F130, 0x1F16B },
     { 0x1F170, 0x1F19A },
@@ -531,24 +591,25 @@
     { 0x1F210, 0x1F23A },
     { 0x1F240, 0x1F248 },
     { 0x1F250, 0x1F251 },
-    { 0x1F300, 0x1F320 },
-    { 0x1F330, 0x1F335 },
-    { 0x1F337, 0x1F37C },
-    { 0x1F380, 0x1F393 },
-    { 0x1F3A0, 0x1F3C4 },
-    { 0x1F3C6, 0x1F3CA },
-    { 0x1F3E0, 0x1F3F0 },
-    { 0x1F400, 0x1F43E },
-    { 0x1F440, 0x1F440 },
-    { 0x1F442, 0x1F4F7 },
-    { 0x1F4F9, 0x1F4FC },
-    { 0x1F500, 0x1F53D },
-    { 0x1F540, 0x1F543 },
-    { 0x1F550, 0x1F567 },
-    { 0x1F5FB, 0x1F640 },
-    { 0x1F645, 0x1F64F },
-    { 0x1F680, 0x1F6C5 },
+    { 0x1F300, 0x1F32C },
+    { 0x1F330, 0x1F37D },
+    { 0x1F380, 0x1F3CE },
+    { 0x1F3D4, 0x1F3F7 },
+    { 0x1F400, 0x1F4FE },
+    { 0x1F500, 0x1F54A },
+    { 0x1F550, 0x1F579 },
+    { 0x1F57B, 0x1F5A3 },
+    { 0x1F5A5, 0x1F642 },
+    { 0x1F645, 0x1F6CF },
+    { 0x1F6E0, 0x1F6EC },
+    { 0x1F6F0, 0x1F6F3 },
     { 0x1F700, 0x1F773 },
+    { 0x1F780, 0x1F7D4 },
+    { 0x1F800, 0x1F80B },
+    { 0x1F810, 0x1F847 },
+    { 0x1F850, 0x1F859 },
+    { 0x1F860, 0x1F887 },
+    { 0x1F890, 0x1F8AD },
     { 0x20000, 0x2A6D6 },
     { 0x2A700, 0x2B734 },
     { 0x2B740, 0x2B81D },
--- a/tests/unictype/test-ctype_punct.c
+++ b/tests/unictype/test-ctype_punct.c
@@ -41,11 +41,10 @@
     { 0x0482, 0x0489 },
     { 0x055A, 0x055F },
     { 0x0589, 0x058A },
-    { 0x058F, 0x058F },
+    { 0x058D, 0x058F },
     { 0x0591, 0x05C7 },
     { 0x05F3, 0x05F4 },
-    { 0x0600, 0x0604 },
-    { 0x0606, 0x061C },
+    { 0x0600, 0x061C },
     { 0x061E, 0x061F },
     { 0x064B, 0x065F },
     { 0x066A, 0x066D },
@@ -68,8 +67,7 @@
     { 0x0830, 0x083E },
     { 0x0859, 0x085B },
     { 0x085E, 0x085E },
-    { 0x08E4, 0x08FE },
-    { 0x0900, 0x0903 },
+    { 0x08E4, 0x0903 },
     { 0x093A, 0x093C },
     { 0x093E, 0x094F },
     { 0x0951, 0x0957 },
@@ -113,21 +111,21 @@
     { 0x0BCA, 0x0BCD },
     { 0x0BD7, 0x0BD7 },
     { 0x0BF0, 0x0BFA },
-    { 0x0C01, 0x0C03 },
+    { 0x0C00, 0x0C03 },
     { 0x0C3E, 0x0C44 },
     { 0x0C46, 0x0C48 },
     { 0x0C4A, 0x0C4D },
     { 0x0C55, 0x0C56 },
     { 0x0C62, 0x0C63 },
     { 0x0C78, 0x0C7F },
-    { 0x0C82, 0x0C83 },
+    { 0x0C81, 0x0C83 },
     { 0x0CBC, 0x0CBC },
     { 0x0CBE, 0x0CC4 },
     { 0x0CC6, 0x0CC8 },
     { 0x0CCA, 0x0CCD },
     { 0x0CD5, 0x0CD6 },
     { 0x0CE2, 0x0CE3 },
-    { 0x0D02, 0x0D03 },
+    { 0x0D01, 0x0D03 },
     { 0x0D3E, 0x0D44 },
     { 0x0D46, 0x0D48 },
     { 0x0D4A, 0x0D4D },
@@ -199,6 +197,7 @@
     { 0x1A7F, 0x1A7F },
     { 0x1AA0, 0x1AA6 },
     { 0x1AA8, 0x1AAD },
+    { 0x1AB0, 0x1ABE },
     { 0x1B00, 0x1B04 },
     { 0x1B34, 0x1B44 },
     { 0x1B5A, 0x1B7C },
@@ -213,7 +212,8 @@
     { 0x1CD0, 0x1CE8 },
     { 0x1CED, 0x1CED },
     { 0x1CF2, 0x1CF4 },
-    { 0x1DC0, 0x1DE6 },
+    { 0x1CF8, 0x1CF9 },
+    { 0x1DC0, 0x1DF5 },
     { 0x1DFC, 0x1DFF },
     { 0x1FBD, 0x1FBD },
     { 0x1FBF, 0x1FC1 },
@@ -228,7 +228,7 @@
     { 0x2066, 0x2070 },
     { 0x2074, 0x207E },
     { 0x2080, 0x208E },
-    { 0x20A0, 0x20BA },
+    { 0x20A0, 0x20BD },
     { 0x20D0, 0x20F0 },
     { 0x2100, 0x2101 },
     { 0x2103, 0x2106 },
@@ -244,20 +244,22 @@
     { 0x214A, 0x214D },
     { 0x214F, 0x215F },
     { 0x2189, 0x2189 },
-    { 0x2190, 0x23F3 },
+    { 0x2190, 0x23FA },
     { 0x2400, 0x2426 },
     { 0x2440, 0x244A },
     { 0x2460, 0x249B },
-    { 0x24EA, 0x26FF },
-    { 0x2701, 0x2B4C },
-    { 0x2B50, 0x2B59 },
+    { 0x24EA, 0x2B73 },
+    { 0x2B76, 0x2B95 },
+    { 0x2B98, 0x2BB9 },
+    { 0x2BBD, 0x2BC8 },
+    { 0x2BCA, 0x2BD1 },
     { 0x2CE5, 0x2CEA },
     { 0x2CEF, 0x2CF1 },
     { 0x2CF9, 0x2CFF },
     { 0x2D70, 0x2D70 },
     { 0x2D7F, 0x2D7F },
     { 0x2DE0, 0x2E2E },
-    { 0x2E30, 0x2E3B },
+    { 0x2E30, 0x2E42 },
     { 0x2E80, 0x2E99 },
     { 0x2E9B, 0x2EF3 },
     { 0x2F00, 0x2FD5 },
@@ -302,12 +304,13 @@
     { 0xA980, 0xA983 },
     { 0xA9B3, 0xA9CD },
     { 0xA9DE, 0xA9DF },
+    { 0xA9E5, 0xA9E5 },
     { 0xAA29, 0xAA36 },
     { 0xAA43, 0xAA43 },
     { 0xAA4C, 0xAA4D },
     { 0xAA5C, 0xAA5F },
     { 0xAA77, 0xAA79 },
-    { 0xAA7B, 0xAA7B },
+    { 0xAA7B, 0xAA7D },
     { 0xAAB0, 0xAAB0 },
     { 0xAAB2, 0xAAB4 },
     { 0xAAB7, 0xAAB8 },
@@ -316,6 +319,7 @@
     { 0xAADE, 0xAADF },
     { 0xAAEB, 0xAAF1 },
     { 0xAAF5, 0xAAF6 },
+    { 0xAB5B, 0xAB5B },
     { 0xABE3, 0xABED },
     { 0xE000, 0xF8FF },
     { 0xFB1E, 0xFB1E },
@@ -324,7 +328,7 @@
     { 0xFD3E, 0xFD3F },
     { 0xFDFC, 0xFDFD },
     { 0xFE00, 0xFE19 },
-    { 0xFE20, 0xFE26 },
+    { 0xFE20, 0xFE2D },
     { 0xFE30, 0xFE52 },
     { 0xFE54, 0xFE66 },
     { 0xFE68, 0xFE6B },
@@ -339,13 +343,19 @@
     { 0x10100, 0x10102 },
     { 0x10107, 0x10133 },
     { 0x10137, 0x1013F },
-    { 0x10175, 0x1018A },
+    { 0x10175, 0x1018C },
     { 0x10190, 0x1019B },
+    { 0x101A0, 0x101A0 },
     { 0x101D0, 0x101FD },
+    { 0x102E0, 0x102FB },
     { 0x10320, 0x10323 },
+    { 0x10376, 0x1037A },
     { 0x1039F, 0x1039F },
     { 0x103D0, 0x103D0 },
+    { 0x1056F, 0x1056F },
     { 0x10857, 0x1085F },
+    { 0x10877, 0x1087F },
+    { 0x108A7, 0x108AF },
     { 0x10916, 0x1091B },
     { 0x1091F, 0x1091F },
     { 0x1093F, 0x1093F },
@@ -356,25 +366,57 @@
     { 0x10A3F, 0x10A47 },
     { 0x10A50, 0x10A58 },
     { 0x10A7D, 0x10A7F },
+    { 0x10A9D, 0x10A9F },
+    { 0x10AC8, 0x10AC8 },
+    { 0x10AE5, 0x10AE6 },
+    { 0x10AEB, 0x10AF6 },
     { 0x10B39, 0x10B3F },
     { 0x10B58, 0x10B5F },
     { 0x10B78, 0x10B7F },
+    { 0x10B99, 0x10B9C },
+    { 0x10BA9, 0x10BAF },
     { 0x10E60, 0x10E7E },
     { 0x11000, 0x11002 },
     { 0x11038, 0x1104D },
     { 0x11052, 0x11065 },
-    { 0x11080, 0x11082 },
+    { 0x1107F, 0x11082 },
     { 0x110B0, 0x110C1 },
     { 0x11100, 0x11102 },
     { 0x11127, 0x11134 },
     { 0x11140, 0x11143 },
+    { 0x11173, 0x11175 },
     { 0x11180, 0x11182 },
     { 0x111B3, 0x111C0 },
     { 0x111C5, 0x111C8 },
+    { 0x111CD, 0x111CD },
+    { 0x111E1, 0x111F4 },
+    { 0x1122C, 0x1123D },
+    { 0x112DF, 0x112EA },
+    { 0x11301, 0x11303 },
+    { 0x1133C, 0x1133C },
+    { 0x1133E, 0x11344 },
+    { 0x11347, 0x11348 },
+    { 0x1134B, 0x1134D },
+    { 0x11357, 0x11357 },
+    { 0x11362, 0x11363 },
+    { 0x11366, 0x1136C },
+    { 0x11370, 0x11374 },
+    { 0x114B0, 0x114C3 },
+    { 0x114C6, 0x114C6 },
+    { 0x115AF, 0x115B5 },
+    { 0x115B8, 0x115C9 },
+    { 0x11630, 0x11643 },
     { 0x116AB, 0x116B7 },
-    { 0x12470, 0x12473 },
+    { 0x118EA, 0x118F2 },
+    { 0x12470, 0x12474 },
+    { 0x16A6E, 0x16A6F },
+    { 0x16AF0, 0x16AF5 },
+    { 0x16B30, 0x16B3F },
+    { 0x16B44, 0x16B45 },
+    { 0x16B5B, 0x16B61 },
     { 0x16F51, 0x16F7E },
     { 0x16F8F, 0x16F92 },
+    { 0x1BC9C, 0x1BCA3 },
     { 0x1D000, 0x1D0F5 },
     { 0x1D100, 0x1D126 },
     { 0x1D129, 0x1D1DD },
@@ -391,14 +433,15 @@
     { 0x1D789, 0x1D789 },
     { 0x1D7A9, 0x1D7A9 },
     { 0x1D7C3, 0x1D7C3 },
+    { 0x1E8C7, 0x1E8D6 },
     { 0x1EEF0, 0x1EEF1 },
     { 0x1F000, 0x1F02B },
     { 0x1F030, 0x1F093 },
     { 0x1F0A0, 0x1F0AE },
-    { 0x1F0B1, 0x1F0BE },
+    { 0x1F0B1, 0x1F0BF },
     { 0x1F0C1, 0x1F0CF },
-    { 0x1F0D1, 0x1F0DF },
-    { 0x1F100, 0x1F10A },
+    { 0x1F0D1, 0x1F0F5 },
+    { 0x1F100, 0x1F10C },
     { 0x1F12D, 0x1F12E },
     { 0x1F14A, 0x1F14F },
     { 0x1F16A, 0x1F16B },
@@ -407,24 +450,25 @@
     { 0x1F210, 0x1F23A },
     { 0x1F240, 0x1F248 },
     { 0x1F250, 0x1F251 },
-    { 0x1F300, 0x1F320 },
-    { 0x1F330, 0x1F335 },
-    { 0x1F337, 0x1F37C },
-    { 0x1F380, 0x1F393 },
-    { 0x1F3A0, 0x1F3C4 },
-    { 0x1F3C6, 0x1F3CA },
-    { 0x1F3E0, 0x1F3F0 },
-    { 0x1F400, 0x1F43E },
-    { 0x1F440, 0x1F440 },
-    { 0x1F442, 0x1F4F7 },
-    { 0x1F4F9, 0x1F4FC },
-    { 0x1F500, 0x1F53D },
-    { 0x1F540, 0x1F543 },
-    { 0x1F550, 0x1F567 },
-    { 0x1F5FB, 0x1F640 },
-    { 0x1F645, 0x1F64F },
-    { 0x1F680, 0x1F6C5 },
+    { 0x1F300, 0x1F32C },
+    { 0x1F330, 0x1F37D },
+    { 0x1F380, 0x1F3CE },
+    { 0x1F3D4, 0x1F3F7 },
+    { 0x1F400, 0x1F4FE },
+    { 0x1F500, 0x1F54A },
+    { 0x1F550, 0x1F579 },
+    { 0x1F57B, 0x1F5A3 },
+    { 0x1F5A5, 0x1F642 },
+    { 0x1F645, 0x1F6CF },
+    { 0x1F6E0, 0x1F6EC },
+    { 0x1F6F0, 0x1F6F3 },
     { 0x1F700, 0x1F773 },
+    { 0x1F780, 0x1F7D4 },
+    { 0x1F800, 0x1F80B },
+    { 0x1F810, 0x1F847 },
+    { 0x1F850, 0x1F859 },
+    { 0x1F860, 0x1F887 },
+    { 0x1F890, 0x1F8AD },
     { 0xE0001, 0xE0001 },
     { 0xE0020, 0xE007F },
     { 0xE0100, 0xE01EF },
--- a/tests/unictype/test-ctype_upper.c
+++ b/tests/unictype/test-ctype_upper.c
@@ -164,6 +164,7 @@
     { 0x0370, 0x0370 },
     { 0x0372, 0x0372 },
     { 0x0376, 0x0376 },
+    { 0x037F, 0x037F },
     { 0x0386, 0x0386 },
     { 0x0388, 0x038A },
     { 0x038C, 0x038C },
@@ -282,6 +283,10 @@
     { 0x0522, 0x0522 },
     { 0x0524, 0x0524 },
     { 0x0526, 0x0526 },
+    { 0x0528, 0x0528 },
+    { 0x052A, 0x052A },
+    { 0x052C, 0x052C },
+    { 0x052E, 0x052E },
     { 0x0531, 0x0556 },
     { 0x10A0, 0x10C5 },
     { 0x10C7, 0x10C7 },
@@ -531,6 +536,8 @@
     { 0xA692, 0xA692 },
     { 0xA694, 0xA694 },
     { 0xA696, 0xA696 },
+    { 0xA698, 0xA698 },
+    { 0xA69A, 0xA69A },
     { 0xA722, 0xA722 },
     { 0xA724, 0xA724 },
     { 0xA726, 0xA726 },
@@ -580,14 +587,21 @@
     { 0xA78D, 0xA78D },
     { 0xA790, 0xA790 },
     { 0xA792, 0xA792 },
+    { 0xA796, 0xA796 },
+    { 0xA798, 0xA798 },
+    { 0xA79A, 0xA79A },
+    { 0xA79C, 0xA79C },
+    { 0xA79E, 0xA79E },
     { 0xA7A0, 0xA7A0 },
     { 0xA7A2, 0xA7A2 },
     { 0xA7A4, 0xA7A4 },
     { 0xA7A6, 0xA7A6 },
     { 0xA7A8, 0xA7A8 },
-    { 0xA7AA, 0xA7AA },
+    { 0xA7AA, 0xA7AD },
+    { 0xA7B0, 0xA7B1 },
     { 0xFF21, 0xFF3A },
-    { 0x10400, 0x10427 }
+    { 0x10400, 0x10427 },
+    { 0x118A0, 0x118BF }
 
 #define PREDICATE(c) uc_is_upper (c)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-decdigit.h
+++ b/tests/unictype/test-decdigit.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Decimal digit values of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
     { 0x0030, 0 },
     { 0x0031, 1 },
     { 0x0032, 2 },
@@ -131,6 +131,16 @@
     { 0x0D6D, 7 },
     { 0x0D6E, 8 },
     { 0x0D6F, 9 },
+    { 0x0DE6, 0 },
+    { 0x0DE7, 1 },
+    { 0x0DE8, 2 },
+    { 0x0DE9, 3 },
+    { 0x0DEA, 4 },
+    { 0x0DEB, 5 },
+    { 0x0DEC, 6 },
+    { 0x0DED, 7 },
+    { 0x0DEE, 8 },
+    { 0x0DEF, 9 },
     { 0x0E50, 0 },
     { 0x0E51, 1 },
     { 0x0E52, 2 },
@@ -321,6 +331,16 @@
     { 0xA9D7, 7 },
     { 0xA9D8, 8 },
     { 0xA9D9, 9 },
+    { 0xA9F0, 0 },
+    { 0xA9F1, 1 },
+    { 0xA9F2, 2 },
+    { 0xA9F3, 3 },
+    { 0xA9F4, 4 },
+    { 0xA9F5, 5 },
+    { 0xA9F6, 6 },
+    { 0xA9F7, 7 },
+    { 0xA9F8, 8 },
+    { 0xA9F9, 9 },
     { 0xAA50, 0 },
     { 0xAA51, 1 },
     { 0xAA52, 2 },
@@ -401,6 +421,36 @@
     { 0x111D7, 7 },
     { 0x111D8, 8 },
     { 0x111D9, 9 },
+    { 0x112F0, 0 },
+    { 0x112F1, 1 },
+    { 0x112F2, 2 },
+    { 0x112F3, 3 },
+    { 0x112F4, 4 },
+    { 0x112F5, 5 },
+    { 0x112F6, 6 },
+    { 0x112F7, 7 },
+    { 0x112F8, 8 },
+    { 0x112F9, 9 },
+    { 0x114D0, 0 },
+    { 0x114D1, 1 },
+    { 0x114D2, 2 },
+    { 0x114D3, 3 },
+    { 0x114D4, 4 },
+    { 0x114D5, 5 },
+    { 0x114D6, 6 },
+    { 0x114D7, 7 },
+    { 0x114D8, 8 },
+    { 0x114D9, 9 },
+    { 0x11650, 0 },
+    { 0x11651, 1 },
+    { 0x11652, 2 },
+    { 0x11653, 3 },
+    { 0x11654, 4 },
+    { 0x11655, 5 },
+    { 0x11656, 6 },
+    { 0x11657, 7 },
+    { 0x11658, 8 },
+    { 0x11659, 9 },
     { 0x116C0, 0 },
     { 0x116C1, 1 },
     { 0x116C2, 2 },
@@ -411,6 +461,36 @@
     { 0x116C7, 7 },
     { 0x116C8, 8 },
     { 0x116C9, 9 },
+    { 0x118E0, 0 },
+    { 0x118E1, 1 },
+    { 0x118E2, 2 },
+    { 0x118E3, 3 },
+    { 0x118E4, 4 },
+    { 0x118E5, 5 },
+    { 0x118E6, 6 },
+    { 0x118E7, 7 },
+    { 0x118E8, 8 },
+    { 0x118E9, 9 },
+    { 0x16A60, 0 },
+    { 0x16A61, 1 },
+    { 0x16A62, 2 },
+    { 0x16A63, 3 },
+    { 0x16A64, 4 },
+    { 0x16A65, 5 },
+    { 0x16A66, 6 },
+    { 0x16A67, 7 },
+    { 0x16A68, 8 },
+    { 0x16A69, 9 },
+    { 0x16B50, 0 },
+    { 0x16B51, 1 },
+    { 0x16B52, 2 },
+    { 0x16B53, 3 },
+    { 0x16B54, 4 },
+    { 0x16B55, 5 },
+    { 0x16B56, 6 },
+    { 0x16B57, 7 },
+    { 0x16B58, 8 },
+    { 0x16B59, 9 },
     { 0x1D7CE, 0 },
     { 0x1D7CF, 1 },
     { 0x1D7D0, 2 },
--- a/tests/unictype/test-digit.h
+++ b/tests/unictype/test-digit.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Digit values of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
     { 0x0030, 0 },
     { 0x0031, 1 },
     { 0x0032, 2 },
@@ -134,6 +134,16 @@
     { 0x0D6D, 7 },
     { 0x0D6E, 8 },
     { 0x0D6F, 9 },
+    { 0x0DE6, 0 },
+    { 0x0DE7, 1 },
+    { 0x0DE8, 2 },
+    { 0x0DE9, 3 },
+    { 0x0DEA, 4 },
+    { 0x0DEB, 5 },
+    { 0x0DEC, 6 },
+    { 0x0DED, 7 },
+    { 0x0DEE, 8 },
+    { 0x0DEF, 9 },
     { 0x0E50, 0 },
     { 0x0E51, 1 },
     { 0x0E52, 2 },
@@ -416,6 +426,16 @@
     { 0xA9D7, 7 },
     { 0xA9D8, 8 },
     { 0xA9D9, 9 },
+    { 0xA9F0, 0 },
+    { 0xA9F1, 1 },
+    { 0xA9F2, 2 },
+    { 0xA9F3, 3 },
+    { 0xA9F4, 4 },
+    { 0xA9F5, 5 },
+    { 0xA9F6, 6 },
+    { 0xA9F7, 7 },
+    { 0xA9F8, 8 },
+    { 0xA9F9, 9 },
     { 0xAA50, 0 },
     { 0xAA51, 1 },
     { 0xAA52, 2 },
@@ -518,6 +538,36 @@
     { 0x111D7, 7 },
     { 0x111D8, 8 },
     { 0x111D9, 9 },
+    { 0x112F0, 0 },
+    { 0x112F1, 1 },
+    { 0x112F2, 2 },
+    { 0x112F3, 3 },
+    { 0x112F4, 4 },
+    { 0x112F5, 5 },
+    { 0x112F6, 6 },
+    { 0x112F7, 7 },
+    { 0x112F8, 8 },
+    { 0x112F9, 9 },
+    { 0x114D0, 0 },
+    { 0x114D1, 1 },
+    { 0x114D2, 2 },
+    { 0x114D3, 3 },
+    { 0x114D4, 4 },
+    { 0x114D5, 5 },
+    { 0x114D6, 6 },
+    { 0x114D7, 7 },
+    { 0x114D8, 8 },
+    { 0x114D9, 9 },
+    { 0x11650, 0 },
+    { 0x11651, 1 },
+    { 0x11652, 2 },
+    { 0x11653, 3 },
+    { 0x11654, 4 },
+    { 0x11655, 5 },
+    { 0x11656, 6 },
+    { 0x11657, 7 },
+    { 0x11658, 8 },
+    { 0x11659, 9 },
     { 0x116C0, 0 },
     { 0x116C1, 1 },
     { 0x116C2, 2 },
@@ -528,6 +578,36 @@
     { 0x116C7, 7 },
     { 0x116C8, 8 },
     { 0x116C9, 9 },
+    { 0x118E0, 0 },
+    { 0x118E1, 1 },
+    { 0x118E2, 2 },
+    { 0x118E3, 3 },
+    { 0x118E4, 4 },
+    { 0x118E5, 5 },
+    { 0x118E6, 6 },
+    { 0x118E7, 7 },
+    { 0x118E8, 8 },
+    { 0x118E9, 9 },
+    { 0x16A60, 0 },
+    { 0x16A61, 1 },
+    { 0x16A62, 2 },
+    { 0x16A63, 3 },
+    { 0x16A64, 4 },
+    { 0x16A65, 5 },
+    { 0x16A66, 6 },
+    { 0x16A67, 7 },
+    { 0x16A68, 8 },
+    { 0x16A69, 9 },
+    { 0x16B50, 0 },
+    { 0x16B51, 1 },
+    { 0x16B52, 2 },
+    { 0x16B53, 3 },
+    { 0x16B54, 4 },
+    { 0x16B55, 5 },
+    { 0x16B56, 6 },
+    { 0x16B57, 7 },
+    { 0x16B58, 8 },
+    { 0x16B59, 9 },
     { 0x1D7CE, 0 },
     { 0x1D7CF, 1 },
     { 0x1D7D0, 2 },
--- a/tests/unictype/test-joininggroup_of.h
+++ b/tests/unictype/test-joininggroup_of.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Arabic joining group of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
     { 0x0620, UC_JOINING_GROUP_YEH },
     { 0x0622, UC_JOINING_GROUP_ALEF },
     { 0x0623, UC_JOINING_GROUP_ALEF },
@@ -232,6 +232,7 @@
     { 0x077E, UC_JOINING_GROUP_SEEN },
     { 0x077F, UC_JOINING_GROUP_KAF },
     { 0x08A0, UC_JOINING_GROUP_BEH },
+    { 0x08A1, UC_JOINING_GROUP_BEH },
     { 0x08A2, UC_JOINING_GROUP_HAH },
     { 0x08A3, UC_JOINING_GROUP_TAH },
     { 0x08A4, UC_JOINING_GROUP_FEH },
@@ -242,4 +243,45 @@
     { 0x08A9, UC_JOINING_GROUP_YEH },
     { 0x08AA, UC_JOINING_GROUP_REH },
     { 0x08AB, UC_JOINING_GROUP_WAW },
-    { 0x08AC, UC_JOINING_GROUP_ROHINGYA_YEH }
+    { 0x08AC, UC_JOINING_GROUP_ROHINGYA_YEH },
+    { 0x08AE, UC_JOINING_GROUP_DAL },
+    { 0x08AF, UC_JOINING_GROUP_SAD },
+    { 0x08B0, UC_JOINING_GROUP_GAF },
+    { 0x08B1, UC_JOINING_GROUP_STRAIGHT_WAW },
+    { 0x08B2, UC_JOINING_GROUP_REH },
+    { 0x10AC0, UC_JOINING_GROUP_MANICHAEAN_ALEPH },
+    { 0x10AC1, UC_JOINING_GROUP_MANICHAEAN_BETH },
+    { 0x10AC2, UC_JOINING_GROUP_MANICHAEAN_BETH },
+    { 0x10AC3, UC_JOINING_GROUP_MANICHAEAN_GIMEL },
+    { 0x10AC4, UC_JOINING_GROUP_MANICHAEAN_GIMEL },
+    { 0x10AC5, UC_JOINING_GROUP_MANICHAEAN_DALETH },
+    { 0x10AC7, UC_JOINING_GROUP_MANICHAEAN_WAW },
+    { 0x10AC9, UC_JOINING_GROUP_MANICHAEAN_ZAYIN },
+    { 0x10ACA, UC_JOINING_GROUP_MANICHAEAN_ZAYIN },
+    { 0x10ACD, UC_JOINING_GROUP_MANICHAEAN_HETH },
+    { 0x10ACE, UC_JOINING_GROUP_MANICHAEAN_TETH },
+    { 0x10ACF, UC_JOINING_GROUP_MANICHAEAN_YODH },
+    { 0x10AD0, UC_JOINING_GROUP_MANICHAEAN_KAPH },
+    { 0x10AD1, UC_JOINING_GROUP_MANICHAEAN_KAPH },
+    { 0x10AD2, UC_JOINING_GROUP_MANICHAEAN_KAPH },
+    { 0x10AD3, UC_JOINING_GROUP_MANICHAEAN_LAMEDH },
+    { 0x10AD4, UC_JOINING_GROUP_MANICHAEAN_DHAMEDH },
+    { 0x10AD5, UC_JOINING_GROUP_MANICHAEAN_THAMEDH },
+    { 0x10AD6, UC_JOINING_GROUP_MANICHAEAN_MEM },
+    { 0x10AD7, UC_JOINING_GROUP_MANICHAEAN_NUN },
+    { 0x10AD8, UC_JOINING_GROUP_MANICHAEAN_SAMEKH },
+    { 0x10AD9, UC_JOINING_GROUP_MANICHAEAN_AYIN },
+    { 0x10ADA, UC_JOINING_GROUP_MANICHAEAN_AYIN },
+    { 0x10ADB, UC_JOINING_GROUP_MANICHAEAN_PE },
+    { 0x10ADC, UC_JOINING_GROUP_MANICHAEAN_PE },
+    { 0x10ADD, UC_JOINING_GROUP_MANICHAEAN_SADHE },
+    { 0x10ADE, UC_JOINING_GROUP_MANICHAEAN_QOPH },
+    { 0x10ADF, UC_JOINING_GROUP_MANICHAEAN_QOPH },
+    { 0x10AE0, UC_JOINING_GROUP_MANICHAEAN_QOPH },
+    { 0x10AE1, UC_JOINING_GROUP_MANICHAEAN_RESH },
+    { 0x10AE4, UC_JOINING_GROUP_MANICHAEAN_TAW },
+    { 0x10AEB, UC_JOINING_GROUP_MANICHAEAN_ONE },
+    { 0x10AEC, UC_JOINING_GROUP_MANICHAEAN_FIVE },
+    { 0x10AED, UC_JOINING_GROUP_MANICHAEAN_TEN },
+    { 0x10AEE, UC_JOINING_GROUP_MANICHAEAN_TWENTY },
+    { 0x10AEF, UC_JOINING_GROUP_MANICHAEAN_HUNDRED }
--- a/tests/unictype/test-joiningtype_of.h
+++ b/tests/unictype/test-joiningtype_of.h
@@ -1,11 +1,12 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Arabic joining type of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
     { 0x0600, UC_JOINING_TYPE_U },
     { 0x0601, UC_JOINING_TYPE_U },
     { 0x0602, UC_JOINING_TYPE_U },
     { 0x0603, UC_JOINING_TYPE_U },
     { 0x0604, UC_JOINING_TYPE_U },
+    { 0x0605, UC_JOINING_TYPE_U },
     { 0x0608, UC_JOINING_TYPE_U },
     { 0x060B, UC_JOINING_TYPE_U },
     { 0x0620, UC_JOINING_TYPE_D },
@@ -302,6 +303,7 @@
     { 0x0857, UC_JOINING_TYPE_U },
     { 0x0858, UC_JOINING_TYPE_U },
     { 0x08A0, UC_JOINING_TYPE_D },
+    { 0x08A1, UC_JOINING_TYPE_D },
     { 0x08A2, UC_JOINING_TYPE_D },
     { 0x08A3, UC_JOINING_TYPE_D },
     { 0x08A4, UC_JOINING_TYPE_D },
@@ -313,6 +315,12 @@
     { 0x08AA, UC_JOINING_TYPE_R },
     { 0x08AB, UC_JOINING_TYPE_R },
     { 0x08AC, UC_JOINING_TYPE_R },
+    { 0x08AD, UC_JOINING_TYPE_U },
+    { 0x08AE, UC_JOINING_TYPE_R },
+    { 0x08AF, UC_JOINING_TYPE_D },
+    { 0x08B0, UC_JOINING_TYPE_D },
+    { 0x08B1, UC_JOINING_TYPE_R },
+    { 0x08B2, UC_JOINING_TYPE_R },
     { 0x1806, UC_JOINING_TYPE_U },
     { 0x1807, UC_JOINING_TYPE_D },
     { 0x180A, UC_JOINING_TYPE_C },
@@ -504,4 +512,71 @@
     { 0xA870, UC_JOINING_TYPE_D },
     { 0xA871, UC_JOINING_TYPE_D },
     { 0xA872, UC_JOINING_TYPE_L },
-    { 0xA873, UC_JOINING_TYPE_U }
+    { 0xA873, UC_JOINING_TYPE_U },
+    { 0x10AC0, UC_JOINING_TYPE_D },
+    { 0x10AC1, UC_JOINING_TYPE_D },
+    { 0x10AC2, UC_JOINING_TYPE_D },
+    { 0x10AC3, UC_JOINING_TYPE_D },
+    { 0x10AC4, UC_JOINING_TYPE_D },
+    { 0x10AC5, UC_JOINING_TYPE_R },
+    { 0x10AC6, UC_JOINING_TYPE_U },
+    { 0x10AC7, UC_JOINING_TYPE_R },
+    { 0x10AC8, UC_JOINING_TYPE_U },
+    { 0x10AC9, UC_JOINING_TYPE_R },
+    { 0x10ACA, UC_JOINING_TYPE_R },
+    { 0x10ACB, UC_JOINING_TYPE_U },
+    { 0x10ACC, UC_JOINING_TYPE_U },
+    { 0x10ACD, UC_JOINING_TYPE_L },
+    { 0x10ACE, UC_JOINING_TYPE_R },
+    { 0x10ACF, UC_JOINING_TYPE_R },
+    { 0x10AD0, UC_JOINING_TYPE_R },
+    { 0x10AD1, UC_JOINING_TYPE_R },
+    { 0x10AD2, UC_JOINING_TYPE_R },
+    { 0x10AD3, UC_JOINING_TYPE_D },
+    { 0x10AD4, UC_JOINING_TYPE_D },
+    { 0x10AD5, UC_JOINING_TYPE_D },
+    { 0x10AD6, UC_JOINING_TYPE_D },
+    { 0x10AD7, UC_JOINING_TYPE_L },
+    { 0x10AD8, UC_JOINING_TYPE_D },
+    { 0x10AD9, UC_JOINING_TYPE_D },
+    { 0x10ADA, UC_JOINING_TYPE_D },
+    { 0x10ADB, UC_JOINING_TYPE_D },
+    { 0x10ADC, UC_JOINING_TYPE_D },
+    { 0x10ADD, UC_JOINING_TYPE_R },
+    { 0x10ADE, UC_JOINING_TYPE_D },
+    { 0x10ADF, UC_JOINING_TYPE_D },
+    { 0x10AE0, UC_JOINING_TYPE_D },
+    { 0x10AE1, UC_JOINING_TYPE_R },
+    { 0x10AE2, UC_JOINING_TYPE_U },
+    { 0x10AE3, UC_JOINING_TYPE_U },
+    { 0x10AE4, UC_JOINING_TYPE_R },
+    { 0x10AEB, UC_JOINING_TYPE_D },
+    { 0x10AEC, UC_JOINING_TYPE_D },
+    { 0x10AED, UC_JOINING_TYPE_D },
+    { 0x10AEE, UC_JOINING_TYPE_D },
+    { 0x10AEF, UC_JOINING_TYPE_R },
+    { 0x10B80, UC_JOINING_TYPE_D },
+    { 0x10B81, UC_JOINING_TYPE_R },
+    { 0x10B82, UC_JOINING_TYPE_D },
+    { 0x10B83, UC_JOINING_TYPE_R },
+    { 0x10B84, UC_JOINING_TYPE_R },
+    { 0x10B85, UC_JOINING_TYPE_R },
+    { 0x10B86, UC_JOINING_TYPE_D },
+    { 0x10B87, UC_JOINING_TYPE_D },
+    { 0x10B88, UC_JOINING_TYPE_D },
+    { 0x10B89, UC_JOINING_TYPE_R },
+    { 0x10B8A, UC_JOINING_TYPE_D },
+    { 0x10B8B, UC_JOINING_TYPE_D },
+    { 0x10B8C, UC_JOINING_TYPE_R },
+    { 0x10B8D, UC_JOINING_TYPE_D },
+    { 0x10B8E, UC_JOINING_TYPE_R },
+    { 0x10B8F, UC_JOINING_TYPE_R },
+    { 0x10B90, UC_JOINING_TYPE_D },
+    { 0x10B91, UC_JOINING_TYPE_R },
+    { 0x10BA9, UC_JOINING_TYPE_R },
+    { 0x10BAA, UC_JOINING_TYPE_R },
+    { 0x10BAB, UC_JOINING_TYPE_R },
+    { 0x10BAC, UC_JOINING_TYPE_R },
+    { 0x10BAD, UC_JOINING_TYPE_D },
+    { 0x10BAE, UC_JOINING_TYPE_D },
+    { 0x10BAF, UC_JOINING_TYPE_U }
--- a/tests/unictype/test-numeric.h
+++ b/tests/unictype/test-numeric.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Numeric values of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 6.3.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 7.0.0.  */
     { 0x0030, 0, 1 },
     { 0x0031, 1, 1 },
     { 0x0032, 2, 1 },
@@ -165,6 +165,16 @@
     { 0x0D73, 1, 4 },
     { 0x0D74, 1, 2 },
     { 0x0D75, 3, 4 },
+    { 0x0DE6, 0, 1 },
+    { 0x0DE7, 1, 1 },
+    { 0x0DE8, 2, 1 },
+    { 0x0DE9, 3, 1 },
+    { 0x0DEA, 4, 1 },
+    { 0x0DEB, 5, 1 },
+    { 0x0DEC, 6, 1 },
+    { 0x0DED, 7, 1 },
+    { 0x0DEE, 8, 1 },
+    { 0x0DEF, 9, 1 },
     { 0x0E50, 0, 1 },
     { 0x0E51, 1, 1 },
     { 0x0E52, 2, 1 },
@@ -676,6 +686,16 @@
     { 0xA9D7, 7, 1 },
     { 0xA9D8, 8, 1 },
     { 0xA9D9, 9, 1 },
+    { 0xA9F0, 0, 1 },
+    { 0xA9F1, 1, 1 },
+    { 0xA9F2, 2, 1 },
+    { 0xA9F3, 3, 1 },
+    { 0xA9F4, 4, 1 },
+    { 0xA9F5, 5, 1 },
+    { 0xA9F6, 6, 1 },
+    { 0xA9F7, 7, 1 },
+    { 0xA9F8, 8, 1 },
+    { 0xA9F9, 9, 1 },
     { 0xAA50, 0, 1 },
     { 0xAA51, 1, 1 },
     { 0xAA52, 2, 1 },
@@ -816,6 +836,34 @@
     { 0x10177, 2, 3 },
     { 0x10178, 3, 4 },
     { 0x1018A, 0, 1 },
+    { 0x1018B, 1, 4 },
+    { 0x102E1, 1, 1 },
+    { 0x102E2, 2, 1 },
+    { 0x102E3, 3, 1 },
+    { 0x102E4, 4, 1 },
+    { 0x102E5, 5, 1 },
+    { 0x102E6, 6, 1 },
+    { 0x102E7, 7, 1 },
+    { 0x102E8, 8, 1 },
+    { 0x102E9, 9, 1 },
+    { 0x102EA, 10, 1 },
+    { 0x102EB, 20, 1 },
+    { 0x102EC, 30, 1 },
+    { 0x102ED, 40, 1 },
+    { 0x102EE, 50, 1 },
+    { 0x102EF, 60, 1 },
+    { 0x102F0, 70, 1 },
+    { 0x102F1, 80, 1 },
+    { 0x102F2, 90, 1 },
+    { 0x102F3, 100, 1 },
+    { 0x102F4, 200, 1 },
+    { 0x102F5, 300, 1 },
+    { 0x102F6, 400, 1 },
+    { 0x102F7, 500, 1 },
+    { 0x102F8, 600, 1 },
+    { 0x102F9, 700, 1 },
+    { 0x102FA, 800, 1 },
+    { 0x102FB, 900, 1 },
     { 0x10320, 1, 1 },
     { 0x10321, 5, 1 },
     { 0x10322, 10, 1 },
@@ -845,6 +893,22 @@
     { 0x1085D, 100, 1 },
     { 0x1085E, 1000, 1 },
     { 0x1085F, 10000, 1 },
+    { 0x10879, 1, 1 },
+    { 0x1087A, 2, 1 },
+    { 0x1087B, 3, 1 },
+    { 0x1087C, 4, 1 },
+    { 0x1087D, 5, 1 },
+    { 0x1087E, 10, 1 },
+    { 0x1087F, 20, 1 },
+    { 0x108A7, 1, 1 },
+    { 0x108A8, 2, 1 },
+    { 0x108A9, 3, 1 },
+    { 0x108AA, 4, 1 },
+    { 0x108AB, 4, 1 },
+    { 0x108AC, 5, 1 },
+    { 0x108AD, 10, 1 },
+    { 0x108AE, 20, 1 },
+    { 0x108AF, 100, 1 },
     { 0x10916, 1, 1 },
     { 0x10917, 10, 1 },
     { 0x10918, 20, 1 },
@@ -861,6 +925,14 @@
     { 0x10A47, 1000, 1 },
     { 0x10A7D, 1, 1 },
     { 0x10A7E, 50, 1 },
+    { 0x10A9D, 1, 1 },
+    { 0x10A9E, 10, 1 },
+    { 0x10A9F, 20, 1 },
+    { 0x10AEB, 1, 1 },
+    { 0x10AEC, 5, 1 },
+    { 0x10AED, 10, 1 },
+    { 0x10AEE, 20, 1 },
+    { 0x10AEF, 100, 1 },
     { 0x10B58, 1, 1 },
     { 0x10B59, 2, 1 },
     { 0x10B5A, 3, 1 },
@@ -877,6 +949,13 @@
     { 0x10B7D, 20, 1 },
     { 0x10B7E, 100, 1 },
     { 0x10B7F, 1000, 1 },
+    { 0x10BA9, 1, 1 },
+    { 0x10BAA, 2, 1 },
+    { 0x10BAB, 3, 1 },
+    { 0x10BAC, 4, 1 },
+    { 0x10BAD, 10, 1 },
+    { 0x10BAE, 20, 1 },
+    { 0x10BAF, 100, 1 },
     { 0x10E60, 1, 1 },
     { 0x10E61, 2, 1 },
     { 0x10E62, 3, 1 },
@@ -968,6 +1047,56 @@
     { 0x111D7, 7, 1 },
     { 0x111D8, 8, 1 },
     { 0x111D9, 9, 1 },
+    { 0x111E1, 1, 1 },
+    { 0x111E2, 2, 1 },
+    { 0x111E3, 3, 1 },
+    { 0x111E4, 4, 1 },
+    { 0x111E5, 5, 1 },
+    { 0x111E6, 6, 1 },
+    { 0x111E7, 7, 1 },
+    { 0x111E8, 8, 1 },
+    { 0x111E9, 9, 1 },
+    { 0x111EA, 10, 1 },
+    { 0x111EB, 20, 1 },
+    { 0x111EC, 30, 1 },
+    { 0x111ED, 40, 1 },
+    { 0x111EE, 50, 1 },
+    { 0x111EF, 60, 1 },
+    { 0x111F0, 70, 1 },
+    { 0x111F1, 80, 1 },
+    { 0x111F2, 90, 1 },
+    { 0x111F3, 100, 1 },
+    { 0x111F4, 1000, 1 },
+    { 0x112F0, 0, 1 },
+    { 0x112F1, 1, 1 },
+    { 0x112F2, 2, 1 },
+    { 0x112F3, 3, 1 },
+    { 0x112F4, 4, 1 },
+    { 0x112F5, 5, 1 },
+    { 0x112F6, 6, 1 },
+    { 0x112F7, 7, 1 },
+    { 0x112F8, 8, 1 },
+    { 0x112F9, 9, 1 },
+    { 0x114D0, 0, 1 },
+    { 0x114D1, 1, 1 },
+    { 0x114D2, 2, 1 },
+    { 0x114D3, 3, 1 },
+    { 0x114D4, 4, 1 },
+    { 0x114D5, 5, 1 },
+    { 0x114D6, 6, 1 },
+    { 0x114D7, 7, 1 },
+    { 0x114D8, 8, 1 },
+    { 0x114D9, 9, 1 },
+    { 0x11650, 0, 1 },
+    { 0x11651, 1, 1 },
+    { 0x11652, 2, 1 },
+    { 0x11653, 3, 1 },
+    { 0x11654, 4, 1 },
+    { 0x11655, 5, 1 },
+    { 0x11656, 6, 1 },
+    { 0x11657, 7, 1 },
+    { 0x11658, 8, 1 },
+    { 0x11659, 9, 1 },
     { 0x116C0, 0, 1 },
     { 0x116C1, 1, 1 },
     { 0x116C2, 2, 1 },
@@ -978,6 +1107,25 @@
     { 0x116C7, 7, 1 },
     { 0x116C8, 8, 1 },
     { 0x116C9, 9, 1 },
+    { 0x118E0, 0, 1 },
+    { 0x118E1, 1, 1 },
+    { 0x118E2, 2, 1 },
+    { 0x118E3, 3, 1 },
+    { 0x118E4, 4, 1 },
+    { 0x118E5, 5, 1 },
+    { 0x118E6, 6, 1 },
+    { 0x118E7, 7, 1 },
+    { 0x118E8, 8, 1 },
+    { 0x118E9, 9, 1 },
+    { 0x118EA, 10, 1 },
+    { 0x118EB, 20, 1 },
+    { 0x118EC, 30, 1 },
+    { 0x118ED, 40, 1 },
+    { 0x118EE, 50, 1 },
+    { 0x118EF, 60, 1 },
+    { 0x118F0, 70, 1 },
+    { 0x118F1, 80, 1 },
+    { 0x118F2, 90, 1 },
     { 0x12400, 2, 1 },
     { 0x12401, 3, 1 },
     { 0x12402, 4, 1 },
@@ -1077,6 +1225,45 @@
     { 0x12460, 1, 4 },
     { 0x12461, 1, 6 },
     { 0x12462, 1, 4 },
+    { 0x12463, 1, 4 },
+    { 0x12464, 1, 2 },
+    { 0x12465, 1, 3 },
+    { 0x12466, 2, 3 },
+    { 0x12467, 40, 1 },
+    { 0x12468, 50, 1 },
+    { 0x12469, 4, 1 },
+    { 0x1246A, 5, 1 },
+    { 0x1246B, 6, 1 },
+    { 0x1246C, 7, 1 },
+    { 0x1246D, 8, 1 },
+    { 0x1246E, 9, 1 },
+    { 0x16A60, 0, 1 },
+    { 0x16A61, 1, 1 },
+    { 0x16A62, 2, 1 },
+    { 0x16A63, 3, 1 },
+    { 0x16A64, 4, 1 },
+    { 0x16A65, 5, 1 },
+    { 0x16A66, 6, 1 },
+    { 0x16A67, 7, 1 },
+    { 0x16A68, 8, 1 },
+    { 0x16A69, 9, 1 },
+    { 0x16B50, 0, 1 },
+    { 0x16B51, 1, 1 },
+    { 0x16B52, 2, 1 },
+    { 0x16B53, 3, 1 },
+    { 0x16B54, 4, 1 },
+    { 0x16B55, 5, 1 },
+    { 0x16B56, 6, 1 },
+    { 0x16B57, 7, 1 },
+    { 0x16B58, 8, 1 },
+    { 0x16B59, 9, 1 },
+    { 0x16B5B, 10, 1 },
+    { 0x16B5C, 100, 1 },
+    { 0x16B5D, 10000, 1 },
+    { 0x16B5E, 1000000, 1 },
+    { 0x16B5F, 100000000, 1 },
+    { 0x16B60, 1410065408, 1 },
+    { 0x16B61, -727379968, 1 },
     { 0x1D360, 1, 1 },
     { 0x1D361, 2, 1 },
     { 0x1D362, 3, 1 },
@@ -1145,6 +1332,15 @@
     { 0x1D7FD, 7, 1 },
     { 0x1D7FE, 8, 1 },
     { 0x1D7FF, 9, 1 },
+    { 0x1E8C7, 1, 1 },
+    { 0x1E8C8, 2, 1 },
+    { 0x1E8C9, 3, 1 },
+    { 0x1E8CA, 4, 1 },
+    { 0x1E8CB, 5, 1 },
+    { 0x1E8CC, 6, 1 },
+    { 0x1E8CD, 7, 1 },
+    { 0x1E8CE, 8, 1 },
+    { 0x1E8CF, 9, 1 },
     { 0x1F100, 0, 1 },
     { 0x1F101, 0, 1 },
     { 0x1F102, 1, 1 },
@@ -1156,4 +1352,6 @@
     { 0x1F108, 7, 1 },
     { 0x1F109, 8, 1 },
     { 0x1F10A, 9, 1 },
+    { 0x1F10B, 0, 1 },
+    { 0x1F10C, 0, 1 },
     { 0x2F890, 9, 1 }
--- a/tests/unictype/test-pr_alphabetic.c
+++ b/tests/unictype/test-pr_alphabetic.c
@@ -33,13 +33,14 @@
     { 0x0370, 0x0374 },
     { 0x0376, 0x0377 },
     { 0x037A, 0x037D },
+    { 0x037F, 0x037F },
     { 0x0386, 0x0386 },
     { 0x0388, 0x038A },
     { 0x038C, 0x038C },
     { 0x038E, 0x03A1 },
     { 0x03A3, 0x03F5 },
     { 0x03F7, 0x0481 },
-    { 0x048A, 0x0527 },
+    { 0x048A, 0x052F },
     { 0x0531, 0x0556 },
     { 0x0559, 0x0559 },
     { 0x0561, 0x0587 },
@@ -67,17 +68,13 @@
     { 0x0800, 0x0817 },
     { 0x081A, 0x082C },
     { 0x0840, 0x0858 },
-    { 0x08A0, 0x08A0 },
-    { 0x08A2, 0x08AC },
+    { 0x08A0, 0x08B2 },
     { 0x08E4, 0x08E9 },
-    { 0x08F0, 0x08FE },
-    { 0x0900, 0x093B },
+    { 0x08F0, 0x093B },
     { 0x093D, 0x094C },
     { 0x094E, 0x0950 },
     { 0x0955, 0x0963 },
-    { 0x0971, 0x0977 },
-    { 0x0979, 0x097F },
-    { 0x0981, 0x0983 },
+    { 0x0971, 0x0983 },
     { 0x0985, 0x098C },
     { 0x098F, 0x0990 },
     { 0x0993, 0x09A8 },
@@ -148,19 +145,18 @@
     { 0x0BCA, 0x0BCC },
     { 0x0BD0, 0x0BD0 },
     { 0x0BD7, 0x0BD7 },
-    { 0x0C01, 0x0C03 },
+    { 0x0C00, 0x0C03 },
     { 0x0C05, 0x0C0C },
     { 0x0C0E, 0x0C10 },
     { 0x0C12, 0x0C28 },
-    { 0x0C2A, 0x0C33 },
-    { 0x0C35, 0x0C39 },
+    { 0x0C2A, 0x0C39 },
     { 0x0C3D, 0x0C44 },
     { 0x0C46, 0x0C48 },
     { 0x0C4A, 0x0C4C },
     { 0x0C55, 0x0C56 },
     { 0x0C58, 0x0C59 },
     { 0x0C60, 0x0C63 },
-    { 0x0C82, 0x0C83 },
+    { 0x0C81, 0x0C83 },
     { 0x0C85, 0x0C8C },
     { 0x0C8E, 0x0C90 },
     { 0x0C92, 0x0CA8 },
@@ -173,7 +169,7 @@
     { 0x0CDE, 0x0CDE },
     { 0x0CE0, 0x0CE3 },
     { 0x0CF1, 0x0CF2 },
-    { 0x0D02, 0x0D03 },
+    { 0x0D01, 0x0D03 },
     { 0x0D05, 0x0D0C },
     { 0x0D0E, 0x0D10 },
     { 0x0D12, 0x0D3A },
@@ -255,7 +251,7 @@
     { 0x166F, 0x167F },
     { 0x1681, 0x169A },
     { 0x16A0, 0x16EA },
-    { 0x16EE, 0x16F0 },
+    { 0x16EE, 0x16F8 },
     { 0x1700, 0x170C },
     { 0x170E, 0x1713 },
     { 0x1720, 0x1733 },
@@ -270,7 +266,7 @@
     { 0x1820, 0x1877 },
     { 0x1880, 0x18AA },
     { 0x18B0, 0x18F5 },
-    { 0x1900, 0x191C },
+    { 0x1900, 0x191E },
     { 0x1920, 0x192B },
     { 0x1930, 0x1938 },
     { 0x1950, 0x196D },
@@ -295,6 +291,7 @@
     { 0x1CEE, 0x1CF3 },
     { 0x1CF5, 0x1CF6 },
     { 0x1D00, 0x1DBF },
+    { 0x1DE7, 0x1DF4 },
     { 0x1E00, 0x1F15 },
     { 0x1F18, 0x1F1D },
     { 0x1F20, 0x1F45 },
@@ -374,14 +371,14 @@
     { 0xA62A, 0xA62B },
     { 0xA640, 0xA66E },
     { 0xA674, 0xA67B },
-    { 0xA67F, 0xA697 },
+    { 0xA67F, 0xA69D },
     { 0xA69F, 0xA6EF },
     { 0xA717, 0xA71F },
     { 0xA722, 0xA788 },
     { 0xA78B, 0xA78E },
-    { 0xA790, 0xA793 },
-    { 0xA7A0, 0xA7AA },
-    { 0xA7F8, 0xA801 },
+    { 0xA790, 0xA7AD },
+    { 0xA7B0, 0xA7B1 },
+    { 0xA7F7, 0xA801 },
     { 0xA803, 0xA805 },
     { 0xA807, 0xA80A },
     { 0xA80C, 0xA827 },
@@ -395,11 +392,14 @@
     { 0xA980, 0xA9B2 },
     { 0xA9B4, 0xA9BF },
     { 0xA9CF, 0xA9CF },
+    { 0xA9E0, 0xA9E4 },
+    { 0xA9E6, 0xA9EF },
+    { 0xA9FA, 0xA9FE },
     { 0xAA00, 0xAA36 },
     { 0xAA40, 0xAA4D },
     { 0xAA60, 0xAA76 },
     { 0xAA7A, 0xAA7A },
-    { 0xAA80, 0xAABE },
+    { 0xAA7E, 0xAABE },
     { 0xAAC0, 0xAAC0 },
     { 0xAAC2, 0xAAC2 },
     { 0xAADB, 0xAADD },
@@ -410,6 +410,9 @@
     { 0xAB11, 0xAB16 },
     { 0xAB20, 0xAB26 },
     { 0xAB28, 0xAB2E },
+    { 0xAB30, 0xAB5A },
+    { 0xAB5C, 0xAB5F },
+    { 0xAB64, 0xAB65 },
     { 0xABC0, 0xABEA },
     { 0xAC00, 0xD7A3 },
     { 0xD7B0, 0xD7C6 },
@@ -448,19 +451,27 @@
     { 0x10140, 0x10174 },
     { 0x10280, 0x1029C },
     { 0x102A0, 0x102D0 },
-    { 0x10300, 0x1031E },
+    { 0x10300, 0x1031F },
     { 0x10330, 0x1034A },
+    { 0x10350, 0x1037A },
     { 0x10380, 0x1039D },
     { 0x103A0, 0x103C3 },
     { 0x103C8, 0x103CF },
     { 0x103D1, 0x103D5 },
     { 0x10400, 0x1049D },
+    { 0x10500, 0x10527 },
+    { 0x10530, 0x10563 },
+    { 0x10600, 0x10736 },
+    { 0x10740, 0x10755 },
+    { 0x10760, 0x10767 },
     { 0x10800, 0x10805 },
     { 0x10808, 0x10808 },
     { 0x1080A, 0x10835 },
     { 0x10837, 0x10838 },
     { 0x1083C, 0x1083C },
     { 0x1083F, 0x10855 },
+    { 0x10860, 0x10876 },
+    { 0x10880, 0x1089E },
     { 0x10900, 0x10915 },
     { 0x10920, 0x10939 },
     { 0x10980, 0x109B7 },
@@ -471,25 +482,70 @@
     { 0x10A15, 0x10A17 },
     { 0x10A19, 0x10A33 },
     { 0x10A60, 0x10A7C },
+    { 0x10A80, 0x10A9C },
+    { 0x10AC0, 0x10AC7 },
+    { 0x10AC9, 0x10AE4 },
     { 0x10B00, 0x10B35 },
     { 0x10B40, 0x10B55 },
     { 0x10B60, 0x10B72 },
+    { 0x10B80, 0x10B91 },
     { 0x10C00, 0x10C48 },
     { 0x11000, 0x11045 },
     { 0x11082, 0x110B8 },
     { 0x110D0, 0x110E8 },
     { 0x11100, 0x11132 },
+    { 0x11150, 0x11172 },
+    { 0x11176, 0x11176 },
     { 0x11180, 0x111BF },
     { 0x111C1, 0x111C4 },
+    { 0x111DA, 0x111DA },
+    { 0x11200, 0x11211 },
+    { 0x11213, 0x11234 },
+    { 0x11237, 0x11237 },
+    { 0x112B0, 0x112E8 },
+    { 0x11301, 0x11303 },
+    { 0x11305, 0x1130C },
+    { 0x1130F, 0x11310 },
+    { 0x11313, 0x11328 },
+    { 0x1132A, 0x11330 },
+    { 0x11332, 0x11333 },
+    { 0x11335, 0x11339 },
+    { 0x1133D, 0x11344 },
+    { 0x11347, 0x11348 },
+    { 0x1134B, 0x1134C },
+    { 0x11357, 0x11357 },
+    { 0x1135D, 0x11363 },
+    { 0x11480, 0x114C1 },
+    { 0x114C4, 0x114C5 },
+    { 0x114C7, 0x114C7 },
+    { 0x11580, 0x115B5 },
+    { 0x115B8, 0x115BE },
+    { 0x11600, 0x1163E },
+    { 0x11640, 0x11640 },
+    { 0x11644, 0x11644 },
     { 0x11680, 0x116B5 },
-    { 0x12000, 0x1236E },
-    { 0x12400, 0x12462 },
+    { 0x118A0, 0x118DF },
+    { 0x118FF, 0x118FF },
+    { 0x11AC0, 0x11AF8 },
+    { 0x12000, 0x12398 },
+    { 0x12400, 0x1246E },
     { 0x13000, 0x1342E },
     { 0x16800, 0x16A38 },
+    { 0x16A40, 0x16A5E },
+    { 0x16AD0, 0x16AED },
+    { 0x16B00, 0x16B36 },
+    { 0x16B40, 0x16B43 },
+    { 0x16B63, 0x16B77 },
+    { 0x16B7D, 0x16B8F },
     { 0x16F00, 0x16F44 },
     { 0x16F50, 0x16F7E },
     { 0x16F93, 0x16F9F },
     { 0x1B000, 0x1B001 },
+    { 0x1BC00, 0x1BC6A },
+    { 0x1BC70, 0x1BC7C },
+    { 0x1BC80, 0x1BC88 },
+    { 0x1BC90, 0x1BC99 },
+    { 0x1BC9E, 0x1BC9E },
     { 0x1D400, 0x1D454 },
     { 0x1D456, 0x1D49C },
     { 0x1D49E, 0x1D49F },
@@ -520,6 +576,7 @@
     { 0x1D78A, 0x1D7A8 },
     { 0x1D7AA, 0x1D7C2 },
     { 0x1D7C4, 0x1D7CB },
+    { 0x1E800, 0x1E8C4 },
     { 0x1EE00, 0x1EE03 },
     { 0x1EE05, 0x1EE1F },
     { 0x1EE21, 0x1EE22 },
@@ -553,6 +610,9 @@
     { 0x1EEA1, 0x1EEA3 },
     { 0x1EEA5, 0x1EEA9 },
     { 0x1EEAB, 0x1EEBB },
+    { 0x1F130, 0x1F149 },
+    { 0x1F150, 0x1F169 },
+    { 0x1F170, 0x1F189 },
     { 0x20000, 0x2A6D6 },
     { 0x2A700, 0x2B734 },
     { 0x2B740, 0x2B81D },
--- a/tests/unictype/test-pr_bidi_arabic_digit.c
+++ b/tests/unictype/test-pr_bidi_arabic_digit.c
@@ -17,7 +17,7 @@
 
 #include "test-predicate-part1.h"
 
-    { 0x0600, 0x0604 },
+    { 0x0600, 0x0605 },
     { 0x0660, 0x0669 },
     { 0x066B, 0x066C },
     { 0x06DD, 0x06DD },
--- a/tests/unictype/test-pr_bidi_arabic_right_to_left.c
+++ b/tests/unictype/test-pr_bidi_arabic_right_to_left.c
@@ -17,7 +17,6 @@
 
 #include "test-predicate-part1.h"
 
-    { 0x0605, 0x0605 },
     { 0x0608, 0x0608 },
     { 0x060B, 0x060B },
     { 0x060D, 0x060D },
@@ -30,15 +29,14 @@
     { 0x0712, 0x072F },
     { 0x074B, 0x07A5 },
     { 0x07B1, 0x07BF },
-    { 0x08A0, 0x08A0 },
-    { 0x08A2, 0x08AC },
+    { 0x08A0, 0x08B2 },
     { 0x2065, 0x2065 },
     { 0xFB50, 0xFD3D },
     { 0xFD40, 0xFDCF },
     { 0xFDF0, 0xFDFC },
     { 0xFDFE, 0xFDFF },
     { 0xFE1A, 0xFE1F },
-    { 0xFE27, 0xFE2F },
+    { 0xFE2E, 0xFE2F },
     { 0xFE53, 0xFE53 },
     { 0xFE67, 0xFE67 },
     { 0xFE6C, 0xFEFE },
--- a/tests/unictype/test-pr_bidi_boundary_neutral.c
+++ b/tests/unictype/test-pr_bidi_boundary_neutral.c
@@ -30,6 +30,7 @@
     { 0xFEFF, 0xFEFF },
     { 0xFFF0, 0xFFF8 },
     { 0xFFFE, 0xFFFF },
+    { 0x1BCA0, 0x1BCA3 },
     { 0x1D173, 0x1D17A },
     { 0x1FFFE, 0x1FFFF },
     { 0x2FFFE, 0x2FFFF },
--- a/tests/unictype/test-pr_bidi_eur_num_terminator.c
+++ b/tests/unictype/test-pr_bidi_eur_num_terminator.c
@@ -30,7 +30,7 @@
     { 0x0E3F, 0x0E3F },
     { 0x17DB, 0x17DB },
     { 0x2030, 0x2034 },
-    { 0x20A0, 0x20BA },
+    { 0x20A0, 0x20BD },
     { 0x212E, 0x212E },
     { 0x2213, 0x2213 },
     { 0xA838, 0xA839 },
--- a/tests/unictype/test-pr_bidi_european_digit.c
+++ b/tests/unictype/test-pr_bidi_european_digit.c
@@ -26,6 +26,7 @@
     { 0x2080, 0x2089 },
     { 0x2488, 0x249B },
     { 0xFF10, 0xFF19 },
+    { 0x102E1, 0x102FB },
     { 0x1D7CE, 0x1D7FF },
     { 0x1F100, 0x1F10A }
 
--- a/tests/unictype/test-pr_bidi_hebrew_right_to_left.c
+++ b/tests/unictype/test-pr_bidi_hebrew_right_to_left.c
@@ -31,9 +31,7 @@
     { 0x0828, 0x0828 },
     { 0x082E, 0x0858 },
     { 0x085C, 0x089F },
-    { 0x08A1, 0x08A1 },
-    { 0x08AD, 0x08E3 },
-    { 0x08FF, 0x08FF },
+    { 0x08B3, 0x08E3 },
     { 0x200F, 0x200F },
     { 0xFB1D, 0xFB1D },
     { 0xFB1F, 0xFB28 },
@@ -44,9 +42,12 @@
     { 0x10A07, 0x10A0B },
     { 0x10A10, 0x10A37 },
     { 0x10A3B, 0x10A3E },
-    { 0x10A40, 0x10B38 },
+    { 0x10A40, 0x10AE4 },
+    { 0x10AE7, 0x10B38 },
     { 0x10B40, 0x10E5F },
-    { 0x10E7F, 0x10FFF }
+    { 0x10E7F, 0x10FFF },
+    { 0x1E800, 0x1E8C4 },
+    { 0x1E8C7, 0x1E8CF }
 
 #define PREDICATE(c) uc_is_property_bidi_hebrew_right_to_left (c)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-pr_bidi_left_to_right.c
+++ b/tests/unictype/test-pr_bidi_left_to_right.c
@@ -36,7 +36,7 @@
     { 0x0388, 0x03F5 },
     { 0x03F7, 0x0482 },
     { 0x048A, 0x0589 },
-    { 0x058B, 0x058E },
+    { 0x058B, 0x058C },
     { 0x0903, 0x0939 },
     { 0x093B, 0x093B },
     { 0x093D, 0x0940 },
@@ -76,16 +76,19 @@
     { 0x0B83, 0x0BBF },
     { 0x0BC1, 0x0BCC },
     { 0x0BCE, 0x0BF2 },
-    { 0x0BFB, 0x0C3D },
+    { 0x0BFB, 0x0BFF },
+    { 0x0C01, 0x0C3D },
     { 0x0C41, 0x0C45 },
     { 0x0C49, 0x0C49 },
     { 0x0C4E, 0x0C54 },
     { 0x0C57, 0x0C61 },
     { 0x0C64, 0x0C77 },
-    { 0x0C7F, 0x0CBB },
+    { 0x0C7F, 0x0C80 },
+    { 0x0C82, 0x0CBB },
     { 0x0CBD, 0x0CCB },
     { 0x0CCE, 0x0CE1 },
-    { 0x0CE4, 0x0D40 },
+    { 0x0CE4, 0x0D00 },
+    { 0x0D02, 0x0D40 },
     { 0x0D45, 0x0D4C },
     { 0x0D4E, 0x0D61 },
     { 0x0D64, 0x0DC9 },
@@ -154,7 +157,8 @@
     { 0x1A63, 0x1A64 },
     { 0x1A6D, 0x1A72 },
     { 0x1A7D, 0x1A7E },
-    { 0x1A80, 0x1AFF },
+    { 0x1A80, 0x1AAF },
+    { 0x1ABF, 0x1AFF },
     { 0x1B04, 0x1B33 },
     { 0x1B35, 0x1B35 },
     { 0x1B3B, 0x1B3B },
@@ -164,7 +168,7 @@
     { 0x1B82, 0x1BA1 },
     { 0x1BA6, 0x1BA7 },
     { 0x1BAA, 0x1BAA },
-    { 0x1BAC, 0x1BE5 },
+    { 0x1BAE, 0x1BE5 },
     { 0x1BE7, 0x1BE7 },
     { 0x1BEA, 0x1BEC },
     { 0x1BEE, 0x1BEE },
@@ -175,8 +179,9 @@
     { 0x1CE1, 0x1CE1 },
     { 0x1CE9, 0x1CEC },
     { 0x1CEE, 0x1CF3 },
-    { 0x1CF5, 0x1DBF },
-    { 0x1DE7, 0x1DFB },
+    { 0x1CF5, 0x1CF7 },
+    { 0x1CFA, 0x1DBF },
+    { 0x1DF6, 0x1DFB },
     { 0x1E00, 0x1FBC },
     { 0x1FBE, 0x1FBE },
     { 0x1FC2, 0x1FCC },
@@ -188,7 +193,7 @@
     { 0x2071, 0x2073 },
     { 0x207F, 0x207F },
     { 0x208F, 0x209F },
-    { 0x20BB, 0x20CF },
+    { 0x20BE, 0x20CF },
     { 0x20F1, 0x20FF },
     { 0x2102, 0x2102 },
     { 0x2107, 0x2107 },
@@ -207,20 +212,22 @@
     { 0x218A, 0x218F },
     { 0x2336, 0x237A },
     { 0x2395, 0x2395 },
-    { 0x23F4, 0x23FF },
+    { 0x23FB, 0x23FF },
     { 0x2427, 0x243F },
     { 0x244B, 0x245F },
     { 0x249C, 0x24E9 },
     { 0x26AC, 0x26AC },
-    { 0x2700, 0x2700 },
     { 0x2800, 0x28FF },
-    { 0x2B4D, 0x2B4F },
-    { 0x2B5A, 0x2CE4 },
+    { 0x2B74, 0x2B75 },
+    { 0x2B96, 0x2B97 },
+    { 0x2BBA, 0x2BBC },
+    { 0x2BC9, 0x2BC9 },
+    { 0x2BD2, 0x2CE4 },
     { 0x2CEB, 0x2CEE },
     { 0x2CF2, 0x2CF8 },
     { 0x2D00, 0x2D7E },
     { 0x2D80, 0x2DDF },
-    { 0x2E3C, 0x2E7F },
+    { 0x2E43, 0x2E7F },
     { 0x2E9A, 0x2E9A },
     { 0x2EF4, 0x2EFF },
     { 0x2FD6, 0x2FEF },
@@ -265,12 +272,14 @@
     { 0xA983, 0xA9B2 },
     { 0xA9B4, 0xA9B5 },
     { 0xA9BA, 0xA9BB },
-    { 0xA9BD, 0xAA28 },
+    { 0xA9BD, 0xA9E4 },
+    { 0xA9E6, 0xAA28 },
     { 0xAA2F, 0xAA30 },
     { 0xAA33, 0xAA34 },
     { 0xAA37, 0xAA42 },
     { 0xAA44, 0xAA4B },
-    { 0xAA4D, 0xAAAF },
+    { 0xAA4D, 0xAA7B },
+    { 0xAA7D, 0xAAAF },
     { 0xAAB1, 0xAAB1 },
     { 0xAAB5, 0xAAB6 },
     { 0xAAB9, 0xAABD },
@@ -289,26 +298,54 @@
     { 0xFFEF, 0xFFEF },
     { 0x10000, 0x10100 },
     { 0x10102, 0x1013F },
-    { 0x1018B, 0x1018F },
-    { 0x1019C, 0x101FC },
-    { 0x101FE, 0x107FF },
+    { 0x1018D, 0x1018F },
+    { 0x1019C, 0x1019F },
+    { 0x101A1, 0x101FC },
+    { 0x101FE, 0x102DF },
+    { 0x102FC, 0x10375 },
+    { 0x1037B, 0x107FF },
     { 0x11000, 0x11000 },
     { 0x11002, 0x11037 },
     { 0x11047, 0x11051 },
-    { 0x11066, 0x1107F },
+    { 0x11066, 0x1107E },
     { 0x11082, 0x110B2 },
     { 0x110B7, 0x110B8 },
     { 0x110BB, 0x110FF },
     { 0x11103, 0x11126 },
     { 0x1112C, 0x1112C },
-    { 0x11135, 0x1117F },
+    { 0x11135, 0x11172 },
+    { 0x11174, 0x1117F },
     { 0x11182, 0x111B5 },
-    { 0x111BF, 0x116AA },
+    { 0x111BF, 0x1122E },
+    { 0x11232, 0x11233 },
+    { 0x11235, 0x11235 },
+    { 0x11238, 0x112DE },
+    { 0x112E0, 0x112E2 },
+    { 0x112EB, 0x11300 },
+    { 0x11302, 0x1133B },
+    { 0x1133D, 0x1133F },
+    { 0x11341, 0x11365 },
+    { 0x1136D, 0x1136F },
+    { 0x11375, 0x114B2 },
+    { 0x114B9, 0x114B9 },
+    { 0x114BB, 0x114BE },
+    { 0x114C1, 0x114C1 },
+    { 0x114C4, 0x115B1 },
+    { 0x115B6, 0x115BB },
+    { 0x115BE, 0x115BE },
+    { 0x115C1, 0x11632 },
+    { 0x1163B, 0x1163C },
+    { 0x1163E, 0x1163E },
+    { 0x11641, 0x116AA },
     { 0x116AC, 0x116AC },
     { 0x116AE, 0x116AF },
     { 0x116B6, 0x116B6 },
-    { 0x116B8, 0x16F8E },
-    { 0x16F93, 0x1D166 },
+    { 0x116B8, 0x16AEF },
+    { 0x16AF5, 0x16B2F },
+    { 0x16B37, 0x16F8E },
+    { 0x16F93, 0x1BC9C },
+    { 0x1BC9F, 0x1BC9F },
+    { 0x1BCA4, 0x1D166 },
     { 0x1D16A, 0x1D172 },
     { 0x1D183, 0x1D184 },
     { 0x1D18C, 0x1D1A9 },
@@ -320,7 +357,9 @@
     { 0x1D750, 0x1D788 },
     { 0x1D78A, 0x1D7C2 },
     { 0x1D7C4, 0x1D7CD },
-    { 0x1D800, 0x1EDFF },
+    { 0x1D800, 0x1E7FF },
+    { 0x1E8C5, 0x1E8C6 },
+    { 0x1E8D7, 0x1EDFF },
     { 0x1EE04, 0x1EE04 },
     { 0x1EE20, 0x1EE20 },
     { 0x1EE23, 0x1EE23 },
@@ -358,29 +397,30 @@
     { 0x1F02C, 0x1F02F },
     { 0x1F094, 0x1F09F },
     { 0x1F0AF, 0x1F0B0 },
-    { 0x1F0BF, 0x1F0C0 },
+    { 0x1F0C0, 0x1F0C0 },
     { 0x1F0D0, 0x1F0D0 },
-    { 0x1F0E0, 0x1F0FF },
-    { 0x1F10B, 0x1F169 },
+    { 0x1F0F6, 0x1F0FF },
+    { 0x1F10D, 0x1F169 },
     { 0x1F16C, 0x1F2FF },
-    { 0x1F321, 0x1F32F },
-    { 0x1F336, 0x1F336 },
-    { 0x1F37D, 0x1F37F },
-    { 0x1F394, 0x1F39F },
-    { 0x1F3C5, 0x1F3C5 },
-    { 0x1F3CB, 0x1F3DF },
-    { 0x1F3F1, 0x1F3FF },
-    { 0x1F43F, 0x1F43F },
-    { 0x1F441, 0x1F441 },
-    { 0x1F4F8, 0x1F4F8 },
-    { 0x1F4FD, 0x1F4FF },
-    { 0x1F53E, 0x1F53F },
-    { 0x1F544, 0x1F54F },
-    { 0x1F568, 0x1F5FA },
-    { 0x1F641, 0x1F644 },
-    { 0x1F650, 0x1F67F },
-    { 0x1F6C6, 0x1F6FF },
-    { 0x1F774, 0x1FFFD },
+    { 0x1F32D, 0x1F32F },
+    { 0x1F37E, 0x1F37F },
+    { 0x1F3CF, 0x1F3D3 },
+    { 0x1F3F8, 0x1F3FF },
+    { 0x1F4FF, 0x1F4FF },
+    { 0x1F54B, 0x1F54F },
+    { 0x1F57A, 0x1F57A },
+    { 0x1F5A4, 0x1F5A4 },
+    { 0x1F643, 0x1F644 },
+    { 0x1F6D0, 0x1F6DF },
+    { 0x1F6ED, 0x1F6EF },
+    { 0x1F6F4, 0x1F6FF },
+    { 0x1F774, 0x1F77F },
+    { 0x1F7D5, 0x1F7FF },
+    { 0x1F80C, 0x1F80F },
+    { 0x1F848, 0x1F84F },
+    { 0x1F85A, 0x1F85F },
+    { 0x1F888, 0x1F88F },
+    { 0x1F8AE, 0x1FFFD },
     { 0x20000, 0x2FFFD },
     { 0x30000, 0x3FFFD },
     { 0x40000, 0x4FFFD },
--- a/tests/unictype/test-pr_bidi_non_spacing_mark.c
+++ b/tests/unictype/test-pr_bidi_non_spacing_mark.c
@@ -40,8 +40,7 @@
     { 0x0825, 0x0827 },
     { 0x0829, 0x082D },
     { 0x0859, 0x085B },
-    { 0x08E4, 0x08FE },
-    { 0x0900, 0x0902 },
+    { 0x08E4, 0x0902 },
     { 0x093A, 0x093A },
     { 0x093C, 0x093C },
     { 0x0941, 0x0948 },
@@ -77,14 +76,17 @@
     { 0x0B82, 0x0B82 },
     { 0x0BC0, 0x0BC0 },
     { 0x0BCD, 0x0BCD },
+    { 0x0C00, 0x0C00 },
     { 0x0C3E, 0x0C40 },
     { 0x0C46, 0x0C48 },
     { 0x0C4A, 0x0C4D },
     { 0x0C55, 0x0C56 },
     { 0x0C62, 0x0C63 },
+    { 0x0C81, 0x0C81 },
     { 0x0CBC, 0x0CBC },
     { 0x0CCC, 0x0CCD },
     { 0x0CE2, 0x0CE3 },
+    { 0x0D01, 0x0D01 },
     { 0x0D41, 0x0D44 },
     { 0x0D4D, 0x0D4D },
     { 0x0D62, 0x0D63 },
@@ -144,6 +146,7 @@
     { 0x1A65, 0x1A6C },
     { 0x1A73, 0x1A7C },
     { 0x1A7F, 0x1A7F },
+    { 0x1AB0, 0x1ABE },
     { 0x1B00, 0x1B03 },
     { 0x1B34, 0x1B34 },
     { 0x1B36, 0x1B3A },
@@ -153,7 +156,7 @@
     { 0x1B80, 0x1B81 },
     { 0x1BA2, 0x1BA5 },
     { 0x1BA8, 0x1BA9 },
-    { 0x1BAB, 0x1BAB },
+    { 0x1BAB, 0x1BAD },
     { 0x1BE6, 0x1BE6 },
     { 0x1BE8, 0x1BE9 },
     { 0x1BED, 0x1BED },
@@ -165,7 +168,8 @@
     { 0x1CE2, 0x1CE8 },
     { 0x1CED, 0x1CED },
     { 0x1CF4, 0x1CF4 },
-    { 0x1DC0, 0x1DE6 },
+    { 0x1CF8, 0x1CF9 },
+    { 0x1DC0, 0x1DF5 },
     { 0x1DFC, 0x1DFF },
     { 0x20D0, 0x20F0 },
     { 0x2CEF, 0x2CF1 },
@@ -189,11 +193,13 @@
     { 0xA9B3, 0xA9B3 },
     { 0xA9B6, 0xA9B9 },
     { 0xA9BC, 0xA9BC },
+    { 0xA9E5, 0xA9E5 },
     { 0xAA29, 0xAA2E },
     { 0xAA31, 0xAA32 },
     { 0xAA35, 0xAA36 },
     { 0xAA43, 0xAA43 },
     { 0xAA4C, 0xAA4C },
+    { 0xAA7C, 0xAA7C },
     { 0xAAB0, 0xAAB0 },
     { 0xAAB2, 0xAAB4 },
     { 0xAAB7, 0xAAB8 },
@@ -206,33 +212,61 @@
     { 0xABED, 0xABED },
     { 0xFB1E, 0xFB1E },
     { 0xFE00, 0xFE0F },
-    { 0xFE20, 0xFE26 },
+    { 0xFE20, 0xFE2D },
     { 0x101FD, 0x101FD },
+    { 0x102E0, 0x102E0 },
+    { 0x10376, 0x1037A },
     { 0x10A01, 0x10A03 },
     { 0x10A05, 0x10A06 },
     { 0x10A0C, 0x10A0F },
     { 0x10A38, 0x10A3A },
     { 0x10A3F, 0x10A3F },
+    { 0x10AE5, 0x10AE6 },
     { 0x11001, 0x11001 },
     { 0x11038, 0x11046 },
-    { 0x11080, 0x11081 },
+    { 0x1107F, 0x11081 },
     { 0x110B3, 0x110B6 },
     { 0x110B9, 0x110BA },
     { 0x11100, 0x11102 },
     { 0x11127, 0x1112B },
     { 0x1112D, 0x11134 },
+    { 0x11173, 0x11173 },
     { 0x11180, 0x11181 },
     { 0x111B6, 0x111BE },
+    { 0x1122F, 0x11231 },
+    { 0x11234, 0x11234 },
+    { 0x11236, 0x11237 },
+    { 0x112DF, 0x112DF },
+    { 0x112E3, 0x112EA },
+    { 0x11301, 0x11301 },
+    { 0x1133C, 0x1133C },
+    { 0x11340, 0x11340 },
+    { 0x11366, 0x1136C },
+    { 0x11370, 0x11374 },
+    { 0x114B3, 0x114B8 },
+    { 0x114BA, 0x114BA },
+    { 0x114BF, 0x114C0 },
+    { 0x114C2, 0x114C3 },
+    { 0x115B2, 0x115B5 },
+    { 0x115BC, 0x115BD },
+    { 0x115BF, 0x115C0 },
+    { 0x11633, 0x1163A },
+    { 0x1163D, 0x1163D },
+    { 0x1163F, 0x11640 },
     { 0x116AB, 0x116AB },
     { 0x116AD, 0x116AD },
     { 0x116B0, 0x116B5 },
     { 0x116B7, 0x116B7 },
+    { 0x16AF0, 0x16AF4 },
+    { 0x16B30, 0x16B36 },
     { 0x16F8F, 0x16F92 },
+    { 0x1BC9D, 0x1BC9E },
     { 0x1D167, 0x1D169 },
     { 0x1D17B, 0x1D182 },
     { 0x1D185, 0x1D18B },
     { 0x1D1AA, 0x1D1AD },
     { 0x1D242, 0x1D244 },
+    { 0x1E8D0, 0x1E8D6 },
     { 0xE0100, 0xE01EF }
 
 #define PREDICATE(c) uc_is_property_bidi_non_spacing_mark (c)
--- a/tests/unictype/test-pr_bidi_other_neutral.c
+++ b/tests/unictype/test-pr_bidi_other_neutral.c
@@ -42,6 +42,7 @@
     { 0x0387, 0x0387 },
     { 0x03F6, 0x03F6 },
     { 0x058A, 0x058A },
+    { 0x058D, 0x058E },
     { 0x0606, 0x0607 },
     { 0x060E, 0x060F },
     { 0x06DE, 0x06DE },
@@ -87,18 +88,20 @@
     { 0x2190, 0x2211 },
     { 0x2214, 0x2335 },
     { 0x237B, 0x2394 },
-    { 0x2396, 0x23F3 },
+    { 0x2396, 0x23FA },
     { 0x2400, 0x2426 },
     { 0x2440, 0x244A },
     { 0x2460, 0x2487 },
     { 0x24EA, 0x26AB },
-    { 0x26AD, 0x26FF },
-    { 0x2701, 0x27FF },
-    { 0x2900, 0x2B4C },
-    { 0x2B50, 0x2B59 },
+    { 0x26AD, 0x27FF },
+    { 0x2900, 0x2B73 },
+    { 0x2B76, 0x2B95 },
+    { 0x2B98, 0x2BB9 },
+    { 0x2BBD, 0x2BC8 },
+    { 0x2BCA, 0x2BD1 },
     { 0x2CE5, 0x2CEA },
     { 0x2CF9, 0x2CFF },
-    { 0x2E00, 0x2E3B },
+    { 0x2E00, 0x2E42 },
     { 0x2E80, 0x2E99 },
     { 0x2E9B, 0x2EF3 },
     { 0x2F00, 0x2FD5 },
@@ -149,8 +152,9 @@
     { 0xFFE8, 0xFFEE },
     { 0xFFF9, 0xFFFD },
     { 0x10101, 0x10101 },
-    { 0x10140, 0x1018A },
+    { 0x10140, 0x1018C },
     { 0x10190, 0x1019B },
+    { 0x101A0, 0x101A0 },
     { 0x1091F, 0x1091F },
     { 0x10B39, 0x10B3F },
     { 0x11052, 0x11065 },
@@ -166,28 +170,30 @@
     { 0x1F000, 0x1F02B },
     { 0x1F030, 0x1F093 },
     { 0x1F0A0, 0x1F0AE },
-    { 0x1F0B1, 0x1F0BE },
+    { 0x1F0B1, 0x1F0BF },
     { 0x1F0C1, 0x1F0CF },
-    { 0x1F0D1, 0x1F0DF },
+    { 0x1F0D1, 0x1F0F5 },
+    { 0x1F10B, 0x1F10C },
     { 0x1F16A, 0x1F16B },
-    { 0x1F300, 0x1F320 },
-    { 0x1F330, 0x1F335 },
-    { 0x1F337, 0x1F37C },
-    { 0x1F380, 0x1F393 },
-    { 0x1F3A0, 0x1F3C4 },
-    { 0x1F3C6, 0x1F3CA },
-    { 0x1F3E0, 0x1F3F0 },
-    { 0x1F400, 0x1F43E },
-    { 0x1F440, 0x1F440 },
-    { 0x1F442, 0x1F4F7 },
-    { 0x1F4F9, 0x1F4FC },
-    { 0x1F500, 0x1F53D },
-    { 0x1F540, 0x1F543 },
-    { 0x1F550, 0x1F567 },
-    { 0x1F5FB, 0x1F640 },
-    { 0x1F645, 0x1F64F },
-    { 0x1F680, 0x1F6C5 },
-    { 0x1F700, 0x1F773 }
+    { 0x1F300, 0x1F32C },
+    { 0x1F330, 0x1F37D },
+    { 0x1F380, 0x1F3CE },
+    { 0x1F3D4, 0x1F3F7 },
+    { 0x1F400, 0x1F4FE },
+    { 0x1F500, 0x1F54A },
+    { 0x1F550, 0x1F579 },
+    { 0x1F57B, 0x1F5A3 },
+    { 0x1F5A5, 0x1F642 },
+    { 0x1F645, 0x1F6CF },
+    { 0x1F6E0, 0x1F6EC },
+    { 0x1F6F0, 0x1F6F3 },
+    { 0x1F700, 0x1F773 },
+    { 0x1F780, 0x1F7D4 },
+    { 0x1F800, 0x1F80B },
+    { 0x1F810, 0x1F847 },
+    { 0x1F850, 0x1F859 },
+    { 0x1F860, 0x1F887 },
+    { 0x1F890, 0x1F8AD }
 
 #define PREDICATE(c) uc_is_property_bidi_other_neutral (c)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-pr_case_ignorable.c
+++ b/tests/unictype/test-pr_case_ignorable.c
@@ -40,7 +40,7 @@
     { 0x05C4, 0x05C5 },
     { 0x05C7, 0x05C7 },
     { 0x05F4, 0x05F4 },
-    { 0x0600, 0x0604 },
+    { 0x0600, 0x0605 },
     { 0x0610, 0x061A },
     { 0x061C, 0x061C },
     { 0x0640, 0x0640 },
@@ -57,8 +57,7 @@
     { 0x07FA, 0x07FA },
     { 0x0816, 0x082D },
     { 0x0859, 0x085B },
-    { 0x08E4, 0x08FE },
-    { 0x0900, 0x0902 },
+    { 0x08E4, 0x0902 },
     { 0x093A, 0x093A },
     { 0x093C, 0x093C },
     { 0x0941, 0x0948 },
@@ -95,16 +94,19 @@
     { 0x0B82, 0x0B82 },
     { 0x0BC0, 0x0BC0 },
     { 0x0BCD, 0x0BCD },
+    { 0x0C00, 0x0C00 },
     { 0x0C3E, 0x0C40 },
     { 0x0C46, 0x0C48 },
     { 0x0C4A, 0x0C4D },
     { 0x0C55, 0x0C56 },
     { 0x0C62, 0x0C63 },
+    { 0x0C81, 0x0C81 },
     { 0x0CBC, 0x0CBC },
     { 0x0CBF, 0x0CBF },
     { 0x0CC6, 0x0CC6 },
     { 0x0CCC, 0x0CCD },
     { 0x0CE2, 0x0CE3 },
+    { 0x0D01, 0x0D01 },
     { 0x0D41, 0x0D44 },
     { 0x0D4D, 0x0D4D },
     { 0x0D62, 0x0D63 },
@@ -169,6 +171,7 @@
     { 0x1A73, 0x1A7C },
     { 0x1A7F, 0x1A7F },
     { 0x1AA7, 0x1AA7 },
+    { 0x1AB0, 0x1ABE },
     { 0x1B00, 0x1B03 },
     { 0x1B34, 0x1B34 },
     { 0x1B36, 0x1B3A },
@@ -178,7 +181,7 @@
     { 0x1B80, 0x1B81 },
     { 0x1BA2, 0x1BA5 },
     { 0x1BA8, 0x1BA9 },
-    { 0x1BAB, 0x1BAB },
+    { 0x1BAB, 0x1BAD },
     { 0x1BE6, 0x1BE6 },
     { 0x1BE8, 0x1BE9 },
     { 0x1BED, 0x1BED },
@@ -191,9 +194,10 @@
     { 0x1CE2, 0x1CE8 },
     { 0x1CED, 0x1CED },
     { 0x1CF4, 0x1CF4 },
+    { 0x1CF8, 0x1CF9 },
     { 0x1D2C, 0x1D6A },
     { 0x1D78, 0x1D78 },
-    { 0x1D9B, 0x1DE6 },
+    { 0x1D9B, 0x1DF5 },
     { 0x1DFC, 0x1DFF },
     { 0x1FBD, 0x1FBD },
     { 0x1FBF, 0x1FC1 },
@@ -230,6 +234,7 @@
     { 0xA66F, 0xA672 },
     { 0xA674, 0xA67D },
     { 0xA67F, 0xA67F },
+    { 0xA69C, 0xA69D },
     { 0xA69F, 0xA69F },
     { 0xA6F0, 0xA6F1 },
     { 0xA700, 0xA721 },
@@ -249,12 +254,14 @@
     { 0xA9B6, 0xA9B9 },
     { 0xA9BC, 0xA9BC },
     { 0xA9CF, 0xA9CF },
+    { 0xA9E5, 0xA9E6 },
     { 0xAA29, 0xAA2E },
     { 0xAA31, 0xAA32 },
     { 0xAA35, 0xAA36 },
     { 0xAA43, 0xAA43 },
     { 0xAA4C, 0xAA4C },
     { 0xAA70, 0xAA70 },
+    { 0xAA7C, 0xAA7C },
     { 0xAAB0, 0xAAB0 },
     { 0xAAB2, 0xAAB4 },
     { 0xAAB7, 0xAAB8 },
@@ -264,6 +271,7 @@
     { 0xAAEC, 0xAAED },
     { 0xAAF3, 0xAAF4 },
     { 0xAAF6, 0xAAF6 },
+    { 0xAB5B, 0xAB5F },
     { 0xABE5, 0xABE5 },
     { 0xABE8, 0xABE8 },
     { 0xABED, 0xABED },
@@ -271,7 +279,7 @@
     { 0xFBB2, 0xFBC1 },
     { 0xFE00, 0xFE0F },
     { 0xFE13, 0xFE13 },
-    { 0xFE20, 0xFE26 },
+    { 0xFE20, 0xFE2D },
     { 0xFE52, 0xFE52 },
     { 0xFE55, 0xFE55 },
     { 0xFEFF, 0xFEFF },
@@ -285,32 +293,62 @@
     { 0xFFE3, 0xFFE3 },
     { 0xFFF9, 0xFFFB },
     { 0x101FD, 0x101FD },
+    { 0x102E0, 0x102E0 },
+    { 0x10376, 0x1037A },
     { 0x10A01, 0x10A03 },
     { 0x10A05, 0x10A06 },
     { 0x10A0C, 0x10A0F },
     { 0x10A38, 0x10A3A },
     { 0x10A3F, 0x10A3F },
+    { 0x10AE5, 0x10AE6 },
     { 0x11001, 0x11001 },
     { 0x11038, 0x11046 },
-    { 0x11080, 0x11081 },
+    { 0x1107F, 0x11081 },
     { 0x110B3, 0x110B6 },
     { 0x110B9, 0x110BA },
     { 0x110BD, 0x110BD },
     { 0x11100, 0x11102 },
     { 0x11127, 0x1112B },
     { 0x1112D, 0x11134 },
+    { 0x11173, 0x11173 },
     { 0x11180, 0x11181 },
     { 0x111B6, 0x111BE },
+    { 0x1122F, 0x11231 },
+    { 0x11234, 0x11234 },
+    { 0x11236, 0x11237 },
+    { 0x112DF, 0x112DF },
+    { 0x112E3, 0x112EA },
+    { 0x11301, 0x11301 },
+    { 0x1133C, 0x1133C },
+    { 0x11340, 0x11340 },
+    { 0x11366, 0x1136C },
+    { 0x11370, 0x11374 },
+    { 0x114B3, 0x114B8 },
+    { 0x114BA, 0x114BA },
+    { 0x114BF, 0x114C0 },
+    { 0x114C2, 0x114C3 },
+    { 0x115B2, 0x115B5 },
+    { 0x115BC, 0x115BD },
+    { 0x115BF, 0x115C0 },
+    { 0x11633, 0x1163A },
+    { 0x1163D, 0x1163D },
+    { 0x1163F, 0x11640 },
     { 0x116AB, 0x116AB },
     { 0x116AD, 0x116AD },
     { 0x116B0, 0x116B5 },
     { 0x116B7, 0x116B7 },
+    { 0x16AF0, 0x16AF4 },
+    { 0x16B30, 0x16B36 },
+    { 0x16B40, 0x16B43 },
     { 0x16F8F, 0x16F9F },
+    { 0x1BC9D, 0x1BC9E },
+    { 0x1BCA0, 0x1BCA3 },
     { 0x1D167, 0x1D169 },
     { 0x1D173, 0x1D182 },
     { 0x1D185, 0x1D18B },
     { 0x1D1AA, 0x1D1AD },
     { 0x1D242, 0x1D244 },
+    { 0x1E8D0, 0x1E8D6 },
     { 0xE0001, 0xE0001 },
     { 0xE0020, 0xE007F },
     { 0xE0100, 0xE01EF }
--- a/tests/unictype/test-pr_cased.c
+++ b/tests/unictype/test-pr_cased.c
@@ -34,13 +34,14 @@
     { 0x0370, 0x0373 },
     { 0x0376, 0x0377 },
     { 0x037A, 0x037D },
+    { 0x037F, 0x037F },
     { 0x0386, 0x0386 },
     { 0x0388, 0x038A },
     { 0x038C, 0x038C },
     { 0x038E, 0x03A1 },
     { 0x03A3, 0x03F5 },
     { 0x03F7, 0x0481 },
-    { 0x048A, 0x0527 },
+    { 0x048A, 0x052F },
     { 0x0531, 0x0556 },
     { 0x0561, 0x0587 },
     { 0x10A0, 0x10C5 },
@@ -95,17 +96,21 @@
     { 0x2D27, 0x2D27 },
     { 0x2D2D, 0x2D2D },
     { 0xA640, 0xA66D },
-    { 0xA680, 0xA697 },
+    { 0xA680, 0xA69D },
     { 0xA722, 0xA787 },
     { 0xA78B, 0xA78E },
-    { 0xA790, 0xA793 },
-    { 0xA7A0, 0xA7AA },
+    { 0xA790, 0xA7AD },
+    { 0xA7B0, 0xA7B1 },
     { 0xA7F8, 0xA7FA },
+    { 0xAB30, 0xAB5A },
+    { 0xAB5C, 0xAB5F },
+    { 0xAB64, 0xAB65 },
     { 0xFB00, 0xFB06 },
     { 0xFB13, 0xFB17 },
     { 0xFF21, 0xFF3A },
     { 0xFF41, 0xFF5A },
     { 0x10400, 0x1044F },
+    { 0x118A0, 0x118DF },
     { 0x1D400, 0x1D454 },
     { 0x1D456, 0x1D49C },
     { 0x1D49E, 0x1D49F },
@@ -135,7 +140,10 @@
     { 0x1D770, 0x1D788 },
     { 0x1D78A, 0x1D7A8 },
     { 0x1D7AA, 0x1D7C2 },
-    { 0x1D7C4, 0x1D7CB }
+    { 0x1D7C4, 0x1D7CB },
+    { 0x1F130, 0x1F149 },
+    { 0x1F150, 0x1F169 },
+    { 0x1F170, 0x1F189 }
 
 #define PREDICATE(c) uc_is_property_cased (c)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-pr_changes_when_casefolded.c
+++ b/tests/unictype/test-pr_changes_when_casefolded.c
@@ -167,6 +167,7 @@
     { 0x0370, 0x0370 },
     { 0x0372, 0x0372 },
     { 0x0376, 0x0376 },
+    { 0x037F, 0x037F },
     { 0x0386, 0x0386 },
     { 0x0388, 0x038A },
     { 0x038C, 0x038C },
@@ -288,6 +289,10 @@
     { 0x0522, 0x0522 },
     { 0x0524, 0x0524 },
     { 0x0526, 0x0526 },
+    { 0x0528, 0x0528 },
+    { 0x052A, 0x052A },
+    { 0x052C, 0x052C },
+    { 0x052E, 0x052E },
     { 0x0531, 0x0556 },
     { 0x0587, 0x0587 },
     { 0x10A0, 0x10C5 },
@@ -540,6 +545,8 @@
     { 0xA692, 0xA692 },
     { 0xA694, 0xA694 },
     { 0xA696, 0xA696 },
+    { 0xA698, 0xA698 },
+    { 0xA69A, 0xA69A },
     { 0xA722, 0xA722 },
     { 0xA724, 0xA724 },
     { 0xA726, 0xA726 },
@@ -589,16 +596,23 @@
     { 0xA78D, 0xA78D },
     { 0xA790, 0xA790 },
     { 0xA792, 0xA792 },
+    { 0xA796, 0xA796 },
+    { 0xA798, 0xA798 },
+    { 0xA79A, 0xA79A },
+    { 0xA79C, 0xA79C },
+    { 0xA79E, 0xA79E },
     { 0xA7A0, 0xA7A0 },
     { 0xA7A2, 0xA7A2 },
     { 0xA7A4, 0xA7A4 },
     { 0xA7A6, 0xA7A6 },
     { 0xA7A8, 0xA7A8 },
-    { 0xA7AA, 0xA7AA },
+    { 0xA7AA, 0xA7AD },
+    { 0xA7B0, 0xA7B1 },
     { 0xFB00, 0xFB06 },
     { 0xFB13, 0xFB17 },
     { 0xFF21, 0xFF3A },
-    { 0x10400, 0x10427 }
+    { 0x10400, 0x10427 },
+    { 0x118A0, 0x118BF }
 
 #define PREDICATE(c) uc_is_property_changes_when_casefolded (c)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-pr_changes_when_casemapped.c
+++ b/tests/unictype/test-pr_changes_when_casemapped.c
@@ -34,34 +34,35 @@
     { 0x023A, 0x0254 },
     { 0x0256, 0x0257 },
     { 0x0259, 0x0259 },
-    { 0x025B, 0x025B },
-    { 0x0260, 0x0260 },
+    { 0x025B, 0x025C },
+    { 0x0260, 0x0261 },
     { 0x0263, 0x0263 },
     { 0x0265, 0x0266 },
     { 0x0268, 0x0269 },
-    { 0x026B, 0x026B },
+    { 0x026B, 0x026C },
     { 0x026F, 0x026F },
     { 0x0271, 0x0272 },
     { 0x0275, 0x0275 },
     { 0x027D, 0x027D },
     { 0x0280, 0x0280 },
     { 0x0283, 0x0283 },
-    { 0x0288, 0x028C },
+    { 0x0287, 0x028C },
     { 0x0292, 0x0292 },
+    { 0x029E, 0x029E },
     { 0x0345, 0x0345 },
     { 0x0370, 0x0373 },
     { 0x0376, 0x0377 },
     { 0x037B, 0x037D },
+    { 0x037F, 0x037F },
     { 0x0386, 0x0386 },
     { 0x0388, 0x038A },
     { 0x038C, 0x038C },
     { 0x038E, 0x03A1 },
     { 0x03A3, 0x03D1 },
-    { 0x03D5, 0x03F2 },
-    { 0x03F4, 0x03F5 },
+    { 0x03D5, 0x03F5 },
     { 0x03F7, 0x03FB },
     { 0x03FD, 0x0481 },
-    { 0x048A, 0x0527 },
+    { 0x048A, 0x052F },
     { 0x0531, 0x0556 },
     { 0x0561, 0x0587 },
     { 0x10A0, 0x10C5 },
@@ -109,18 +110,20 @@
     { 0x2D27, 0x2D27 },
     { 0x2D2D, 0x2D2D },
     { 0xA640, 0xA66D },
-    { 0xA680, 0xA697 },
+    { 0xA680, 0xA69B },
     { 0xA722, 0xA72F },
     { 0xA732, 0xA76F },
     { 0xA779, 0xA787 },
     { 0xA78B, 0xA78D },
     { 0xA790, 0xA793 },
-    { 0xA7A0, 0xA7AA },
+    { 0xA796, 0xA7AD },
+    { 0xA7B0, 0xA7B1 },
     { 0xFB00, 0xFB06 },
     { 0xFB13, 0xFB17 },
     { 0xFF21, 0xFF3A },
     { 0xFF41, 0xFF5A },
-    { 0x10400, 0x1044F }
+    { 0x10400, 0x1044F },
+    { 0x118A0, 0x118DF }
 
 #define PREDICATE(c) uc_is_property_changes_when_casemapped (c)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-pr_changes_when_lowercased.c
+++ b/tests/unictype/test-pr_changes_when_lowercased.c
@@ -164,6 +164,7 @@
     { 0x0370, 0x0370 },
     { 0x0372, 0x0372 },
     { 0x0376, 0x0376 },
+    { 0x037F, 0x037F },
     { 0x0386, 0x0386 },
     { 0x0388, 0x038A },
     { 0x038C, 0x038C },
@@ -282,6 +283,10 @@
     { 0x0522, 0x0522 },
     { 0x0524, 0x0524 },
     { 0x0526, 0x0526 },
+    { 0x0528, 0x0528 },
+    { 0x052A, 0x052A },
+    { 0x052C, 0x052C },
+    { 0x052E, 0x052E },
     { 0x0531, 0x0556 },
     { 0x10A0, 0x10C5 },
     { 0x10C7, 0x10C7 },
@@ -531,6 +536,8 @@
     { 0xA692, 0xA692 },
     { 0xA694, 0xA694 },
     { 0xA696, 0xA696 },
+    { 0xA698, 0xA698 },
+    { 0xA69A, 0xA69A },
     { 0xA722, 0xA722 },
     { 0xA724, 0xA724 },
     { 0xA726, 0xA726 },
@@ -580,14 +587,21 @@
     { 0xA78D, 0xA78D },
     { 0xA790, 0xA790 },
     { 0xA792, 0xA792 },
+    { 0xA796, 0xA796 },
+    { 0xA798, 0xA798 },
+    { 0xA79A, 0xA79A },
+    { 0xA79C, 0xA79C },
+    { 0xA79E, 0xA79E },
     { 0xA7A0, 0xA7A0 },
     { 0xA7A2, 0xA7A2 },
     { 0xA7A4, 0xA7A4 },
     { 0xA7A6, 0xA7A6 },
     { 0xA7A8, 0xA7A8 },
-    { 0xA7AA, 0xA7AA },
+    { 0xA7AA, 0xA7AD },
+    { 0xA7B0, 0xA7B1 },
     { 0xFF21, 0xFF3A },
-    { 0x10400, 0x10427 }
+    { 0x10400, 0x10427 },
+    { 0x118A0, 0x118BF }
 
 #define PREDICATE(c) uc_is_property_changes_when_lowercased (c)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-pr_changes_when_titlecased.c
+++ b/tests/unictype/test-pr_changes_when_titlecased.c
@@ -164,20 +164,21 @@
     { 0x024F, 0x0254 },
     { 0x0256, 0x0257 },
     { 0x0259, 0x0259 },
-    { 0x025B, 0x025B },
-    { 0x0260, 0x0260 },
+    { 0x025B, 0x025C },
+    { 0x0260, 0x0261 },
     { 0x0263, 0x0263 },
     { 0x0265, 0x0266 },
     { 0x0268, 0x0269 },
-    { 0x026B, 0x026B },
+    { 0x026B, 0x026C },
     { 0x026F, 0x026F },
     { 0x0271, 0x0272 },
     { 0x0275, 0x0275 },
     { 0x027D, 0x027D },
     { 0x0280, 0x0280 },
     { 0x0283, 0x0283 },
-    { 0x0288, 0x028C },
+    { 0x0287, 0x028C },
     { 0x0292, 0x0292 },
+    { 0x029E, 0x029E },
     { 0x0345, 0x0345 },
     { 0x0371, 0x0371 },
     { 0x0373, 0x0373 },
@@ -198,7 +199,7 @@
     { 0x03E9, 0x03E9 },
     { 0x03EB, 0x03EB },
     { 0x03ED, 0x03ED },
-    { 0x03EF, 0x03F2 },
+    { 0x03EF, 0x03F3 },
     { 0x03F5, 0x03F5 },
     { 0x03F8, 0x03F8 },
     { 0x03FB, 0x03FB },
@@ -298,6 +299,10 @@
     { 0x0523, 0x0523 },
     { 0x0525, 0x0525 },
     { 0x0527, 0x0527 },
+    { 0x0529, 0x0529 },
+    { 0x052B, 0x052B },
+    { 0x052D, 0x052D },
+    { 0x052F, 0x052F },
     { 0x0561, 0x0587 },
     { 0x1D79, 0x1D79 },
     { 0x1D7D, 0x1D7D },
@@ -547,6 +552,8 @@
     { 0xA693, 0xA693 },
     { 0xA695, 0xA695 },
     { 0xA697, 0xA697 },
+    { 0xA699, 0xA699 },
+    { 0xA69B, 0xA69B },
     { 0xA723, 0xA723 },
     { 0xA725, 0xA725 },
     { 0xA727, 0xA727 },
@@ -595,6 +602,11 @@
     { 0xA78C, 0xA78C },
     { 0xA791, 0xA791 },
     { 0xA793, 0xA793 },
+    { 0xA797, 0xA797 },
+    { 0xA799, 0xA799 },
+    { 0xA79B, 0xA79B },
+    { 0xA79D, 0xA79D },
+    { 0xA79F, 0xA79F },
     { 0xA7A1, 0xA7A1 },
     { 0xA7A3, 0xA7A3 },
     { 0xA7A5, 0xA7A5 },
@@ -603,7 +615,8 @@
     { 0xFB00, 0xFB06 },
     { 0xFB13, 0xFB17 },
     { 0xFF41, 0xFF5A },
-    { 0x10428, 0x1044F }
+    { 0x10428, 0x1044F },
+    { 0x118C0, 0x118DF }
 
 #define PREDICATE(c) uc_is_property_changes_when_titlecased (c)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-pr_changes_when_uppercased.c
+++ b/tests/unictype/test-pr_changes_when_uppercased.c
@@ -163,20 +163,21 @@
     { 0x024F, 0x0254 },
     { 0x0256, 0x0257 },
     { 0x0259, 0x0259 },
-    { 0x025B, 0x025B },
-    { 0x0260, 0x0260 },
+    { 0x025B, 0x025C },
+    { 0x0260, 0x0261 },
     { 0x0263, 0x0263 },
     { 0x0265, 0x0266 },
     { 0x0268, 0x0269 },
-    { 0x026B, 0x026B },
+    { 0x026B, 0x026C },
     { 0x026F, 0x026F },
     { 0x0271, 0x0272 },
     { 0x0275, 0x0275 },
     { 0x027D, 0x027D },
     { 0x0280, 0x0280 },
     { 0x0283, 0x0283 },
-    { 0x0288, 0x028C },
+    { 0x0287, 0x028C },
     { 0x0292, 0x0292 },
+    { 0x029E, 0x029E },
     { 0x0345, 0x0345 },
     { 0x0371, 0x0371 },
     { 0x0373, 0x0373 },
@@ -197,7 +198,7 @@
     { 0x03E9, 0x03E9 },
     { 0x03EB, 0x03EB },
     { 0x03ED, 0x03ED },
-    { 0x03EF, 0x03F2 },
+    { 0x03EF, 0x03F3 },
     { 0x03F5, 0x03F5 },
     { 0x03F8, 0x03F8 },
     { 0x03FB, 0x03FB },
@@ -297,6 +298,10 @@
     { 0x0523, 0x0523 },
     { 0x0525, 0x0525 },
     { 0x0527, 0x0527 },
+    { 0x0529, 0x0529 },
+    { 0x052B, 0x052B },
+    { 0x052D, 0x052D },
+    { 0x052F, 0x052F },
     { 0x0561, 0x0587 },
     { 0x1D79, 0x1D79 },
     { 0x1D7D, 0x1D7D },
@@ -546,6 +551,8 @@
     { 0xA693, 0xA693 },
     { 0xA695, 0xA695 },
     { 0xA697, 0xA697 },
+    { 0xA699, 0xA699 },
+    { 0xA69B, 0xA69B },
     { 0xA723, 0xA723 },
     { 0xA725, 0xA725 },
     { 0xA727, 0xA727 },
@@ -594,6 +601,11 @@
     { 0xA78C, 0xA78C },
     { 0xA791, 0xA791 },
     { 0xA793, 0xA793 },
+    { 0xA797, 0xA797 },
+    { 0xA799, 0xA799 },
+    { 0xA79B, 0xA79B },
+    { 0xA79D, 0xA79D },
+    { 0xA79F, 0xA79F },
     { 0xA7A1, 0xA7A1 },
     { 0xA7A3, 0xA7A3 },
     { 0xA7A5, 0xA7A5 },
@@ -602,7 +614,8 @@
     { 0xFB00, 0xFB06 },
     { 0xFB13, 0xFB17 },
     { 0xFF41, 0xFF5A },
-    { 0x10428, 0x1044F }
+    { 0x10428, 0x1044F },
+    { 0x118C0, 0x118DF }
 
 #define PREDICATE(c) uc_is_property_changes_when_uppercased (c)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-pr_combining.c
+++ b/tests/unictype/test-pr_combining.c
@@ -40,8 +40,7 @@
     { 0x0825, 0x0827 },
     { 0x0829, 0x082D },
     { 0x0859, 0x085B },
-    { 0x08E4, 0x08FE },
-    { 0x0900, 0x0903 },
+    { 0x08E4, 0x0903 },
     { 0x093A, 0x093C },
     { 0x093E, 0x094F },
     { 0x0951, 0x0957 },
@@ -79,20 +78,20 @@
     { 0x0BC6, 0x0BC8 },
     { 0x0BCA, 0x0BCD },
     { 0x0BD7, 0x0BD7 },
-    { 0x0C01, 0x0C03 },
+    { 0x0C00, 0x0C03 },
     { 0x0C3E, 0x0C44 },
     { 0x0C46, 0x0C48 },
     { 0x0C4A, 0x0C4D },
     { 0x0C55, 0x0C56 },
     { 0x0C62, 0x0C63 },
-    { 0x0C82, 0x0C83 },
+    { 0x0C81, 0x0C83 },
     { 0x0CBC, 0x0CBC },
     { 0x0CBE, 0x0CC4 },
     { 0x0CC6, 0x0CC8 },
     { 0x0CCA, 0x0CCD },
     { 0x0CD5, 0x0CD6 },
     { 0x0CE2, 0x0CE3 },
-    { 0x0D02, 0x0D03 },
+    { 0x0D01, 0x0D03 },
     { 0x0D3E, 0x0D44 },
     { 0x0D46, 0x0D48 },
     { 0x0D4A, 0x0D4D },
@@ -147,6 +146,7 @@
     { 0x1A55, 0x1A5E },
     { 0x1A60, 0x1A7C },
     { 0x1A7F, 0x1A7F },
+    { 0x1AB0, 0x1ABE },
     { 0x1B00, 0x1B04 },
     { 0x1B34, 0x1B44 },
     { 0x1B6B, 0x1B73 },
@@ -158,7 +158,8 @@
     { 0x1CD4, 0x1CE8 },
     { 0x1CED, 0x1CED },
     { 0x1CF2, 0x1CF4 },
-    { 0x1DC0, 0x1DE6 },
+    { 0x1CF8, 0x1CF9 },
+    { 0x1DC0, 0x1DF5 },
     { 0x1DFC, 0x1DFF },
     { 0x20D0, 0x20F0 },
     { 0x2CEF, 0x2CF1 },
@@ -181,10 +182,11 @@
     { 0xA947, 0xA953 },
     { 0xA980, 0xA983 },
     { 0xA9B3, 0xA9C0 },
+    { 0xA9E5, 0xA9E5 },
     { 0xAA29, 0xAA36 },
     { 0xAA43, 0xAA43 },
     { 0xAA4C, 0xAA4D },
-    { 0xAA7B, 0xAA7B },
+    { 0xAA7B, 0xAA7D },
     { 0xAAB0, 0xAAB0 },
     { 0xAAB2, 0xAAB4 },
     { 0xAAB7, 0xAAB8 },
@@ -196,30 +198,53 @@
     { 0xABEC, 0xABED },
     { 0xFB1E, 0xFB1E },
     { 0xFE00, 0xFE0F },
-    { 0xFE20, 0xFE26 },
+    { 0xFE20, 0xFE2D },
     { 0x101FD, 0x101FD },
+    { 0x102E0, 0x102E0 },
+    { 0x10376, 0x1037A },
     { 0x10A01, 0x10A03 },
     { 0x10A05, 0x10A06 },
     { 0x10A0C, 0x10A0F },
     { 0x10A38, 0x10A3A },
     { 0x10A3F, 0x10A3F },
+    { 0x10AE5, 0x10AE6 },
     { 0x11000, 0x11002 },
     { 0x11038, 0x11046 },
-    { 0x11080, 0x11082 },
+    { 0x1107F, 0x11082 },
     { 0x110B0, 0x110BA },
     { 0x11100, 0x11102 },
     { 0x11127, 0x11134 },
+    { 0x11173, 0x11173 },
     { 0x11180, 0x11182 },
     { 0x111B3, 0x111C0 },
+    { 0x1122C, 0x11237 },
+    { 0x112DF, 0x112EA },
+    { 0x11301, 0x11303 },
+    { 0x1133C, 0x1133C },
+    { 0x1133E, 0x11344 },
+    { 0x11347, 0x11348 },
+    { 0x1134B, 0x1134D },
+    { 0x11357, 0x11357 },
+    { 0x11362, 0x11363 },
+    { 0x11366, 0x1136C },
+    { 0x11370, 0x11374 },
+    { 0x114B0, 0x114C3 },
+    { 0x115AF, 0x115B5 },
+    { 0x115B8, 0x115C0 },
+    { 0x11630, 0x11640 },
     { 0x116AB, 0x116B7 },
+    { 0x16AF0, 0x16AF4 },
+    { 0x16B30, 0x16B36 },
     { 0x16F51, 0x16F7E },
     { 0x16F8F, 0x16F92 },
+    { 0x1BC9D, 0x1BC9E },
     { 0x1D165, 0x1D169 },
     { 0x1D16D, 0x1D172 },
     { 0x1D17B, 0x1D182 },
     { 0x1D185, 0x1D18B },
     { 0x1D1AA, 0x1D1AD },
     { 0x1D242, 0x1D244 },
+    { 0x1E8D0, 0x1E8D6 },
     { 0xE0100, 0xE01EF }
 
 #define PREDICATE(c) uc_is_property_combining (c)
--- a/tests/unictype/test-pr_composite.c
+++ b/tests/unictype/test-pr_composite.c
@@ -289,6 +289,10 @@
     { 0x1109C, 0x1109C },
     { 0x110AB, 0x110AB },
     { 0x1112E, 0x1112F },
+    { 0x1134B, 0x1134C },
+    { 0x114BB, 0x114BC },
+    { 0x114BE, 0x114BE },
+    { 0x115BA, 0x115BB },
     { 0x1D15E, 0x1D164 },
     { 0x1D1BB, 0x1D1C0 },
     { 0x1F100, 0x1F10A },
--- a/tests/unictype/test-pr_currency_symbol.c
+++ b/tests/unictype/test-pr_currency_symbol.c
@@ -27,7 +27,7 @@
     { 0x0BF9, 0x0BF9 },
     { 0x0E3F, 0x0E3F },
     { 0x17DB, 0x17DB },
-    { 0x20A0, 0x20BA },
+    { 0x20A0, 0x20BD },
     { 0xA838, 0xA838 },
     { 0xFDFC, 0xFDFC },
     { 0xFE69, 0xFE69 },
--- a/tests/unictype/test-pr_dash.c
+++ b/tests/unictype/test-pr_dash.c
@@ -30,6 +30,7 @@
     { 0x2E17, 0x2E17 },
     { 0x2E1A, 0x2E1A },
     { 0x2E3A, 0x2E3B },
+    { 0x2E40, 0x2E40 },
     { 0x301C, 0x301C },
     { 0x3030, 0x3030 },
     { 0x30A0, 0x30A0 },
--- a/tests/unictype/test-pr_decimal_digit.c
+++ b/tests/unictype/test-pr_decimal_digit.c
@@ -30,6 +30,7 @@
     { 0x0C66, 0x0C6F },
     { 0x0CE6, 0x0CEF },
     { 0x0D66, 0x0D6F },
+    { 0x0DE6, 0x0DEF },
     { 0x0E50, 0x0E59 },
     { 0x0ED0, 0x0ED9 },
     { 0x0F20, 0x0F29 },
@@ -49,6 +50,7 @@
     { 0xA8D0, 0xA8D9 },
     { 0xA900, 0xA909 },
     { 0xA9D0, 0xA9D9 },
+    { 0xA9F0, 0xA9F9 },
     { 0xAA50, 0xAA59 },
     { 0xABF0, 0xABF9 },
     { 0xFF10, 0xFF19 },
@@ -57,7 +59,13 @@
     { 0x110F0, 0x110F9 },
     { 0x11136, 0x1113F },
     { 0x111D0, 0x111D9 },
+    { 0x112F0, 0x112F9 },
+    { 0x114D0, 0x114D9 },
+    { 0x11650, 0x11659 },
     { 0x116C0, 0x116C9 },
+    { 0x118E0, 0x118E9 },
+    { 0x16A60, 0x16A69 },
+    { 0x16B50, 0x16B59 },
     { 0x1D7CE, 0x1D7FF }
 
 #define PREDICATE(c) uc_is_property_decimal_digit (c)
--- a/tests/unictype/test-pr_default_ignorable_code_point.c
+++ b/tests/unictype/test-pr_default_ignorable_code_point.c
@@ -31,6 +31,7 @@
     { 0xFEFF, 0xFEFF },
     { 0xFFA0, 0xFFA0 },
     { 0xFFF0, 0xFFF8 },
+    { 0x1BCA0, 0x1BCA3 },
     { 0x1D173, 0x1D17A },
     { 0xE0000, 0xE0FFF }
 
--- a/tests/unictype/test-pr_diacritic.c
+++ b/tests/unictype/test-pr_diacritic.c
@@ -85,6 +85,7 @@
     { 0x1939, 0x193B },
     { 0x1A75, 0x1A7C },
     { 0x1A7F, 0x1A7F },
+    { 0x1AB0, 0x1ABD },
     { 0x1B34, 0x1B34 },
     { 0x1B44, 0x1B44 },
     { 0x1B6B, 0x1B73 },
@@ -94,8 +95,10 @@
     { 0x1CD0, 0x1CE8 },
     { 0x1CED, 0x1CED },
     { 0x1CF4, 0x1CF4 },
+    { 0x1CF8, 0x1CF9 },
     { 0x1D2C, 0x1D6A },
     { 0x1DC4, 0x1DCF },
+    { 0x1DF5, 0x1DF5 },
     { 0x1DFD, 0x1DFF },
     { 0x1FBD, 0x1FBD },
     { 0x1FBF, 0x1FC1 },
@@ -111,6 +114,7 @@
     { 0xA66F, 0xA66F },
     { 0xA67C, 0xA67D },
     { 0xA67F, 0xA67F },
+    { 0xA69C, 0xA69D },
     { 0xA6F0, 0xA6F1 },
     { 0xA717, 0xA721 },
     { 0xA788, 0xA788 },
@@ -121,27 +125,43 @@
     { 0xA953, 0xA953 },
     { 0xA9B3, 0xA9B3 },
     { 0xA9C0, 0xA9C0 },
-    { 0xAA7B, 0xAA7B },
+    { 0xA9E5, 0xA9E5 },
+    { 0xAA7B, 0xAA7D },
     { 0xAABF, 0xAAC2 },
     { 0xAAF6, 0xAAF6 },
+    { 0xAB5B, 0xAB5F },
     { 0xABEC, 0xABED },
     { 0xFB1E, 0xFB1E },
-    { 0xFE20, 0xFE26 },
+    { 0xFE20, 0xFE2D },
     { 0xFF3E, 0xFF3E },
     { 0xFF40, 0xFF40 },
     { 0xFF70, 0xFF70 },
     { 0xFF9E, 0xFF9F },
     { 0xFFE3, 0xFFE3 },
+    { 0x102E0, 0x102E0 },
+    { 0x10AE5, 0x10AE6 },
     { 0x110B9, 0x110BA },
     { 0x11133, 0x11134 },
+    { 0x11173, 0x11173 },
     { 0x111C0, 0x111C0 },
+    { 0x11235, 0x11236 },
+    { 0x112E9, 0x112EA },
+    { 0x1133C, 0x1133C },
+    { 0x1134D, 0x1134D },
+    { 0x11366, 0x1136C },
+    { 0x11370, 0x11374 },
+    { 0x114C2, 0x114C3 },
+    { 0x115BF, 0x115C0 },
+    { 0x1163F, 0x1163F },
     { 0x116B6, 0x116B7 },
+    { 0x16AF0, 0x16AF4 },
     { 0x16F8F, 0x16F9F },
     { 0x1D167, 0x1D169 },
     { 0x1D16D, 0x1D172 },
     { 0x1D17B, 0x1D182 },
     { 0x1D185, 0x1D18B },
-    { 0x1D1AA, 0x1D1AD }
+    { 0x1D1AA, 0x1D1AD },
+    { 0x1E8D0, 0x1E8D6 }
 
 #define PREDICATE(c) uc_is_property_diacritic (c)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-pr_extender.c
+++ b/tests/unictype/test-pr_extender.c
@@ -35,10 +35,14 @@
     { 0xA015, 0xA015 },
     { 0xA60C, 0xA60C },
     { 0xA9CF, 0xA9CF },
+    { 0xA9E6, 0xA9E6 },
     { 0xAA70, 0xAA70 },
     { 0xAADD, 0xAADD },
     { 0xAAF3, 0xAAF4 },
-    { 0xFF70, 0xFF70 }
+    { 0xFF70, 0xFF70 },
+    { 0x1135D, 0x1135D },
+    { 0x115C6, 0x115C8 },
+    { 0x16B42, 0x16B43 }
 
 #define PREDICATE(c) uc_is_property_extender (c)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-pr_format_control.c
+++ b/tests/unictype/test-pr_format_control.c
@@ -22,6 +22,7 @@
     { 0x200B, 0x200B },
     { 0x2060, 0x2064 },
     { 0x206A, 0x206F },
+    { 0x1BCA0, 0x1BCA3 },
     { 0x1D173, 0x1D17A },
     { 0xE0001, 0xE0001 },
     { 0xE0020, 0xE007F }
--- a/tests/unictype/test-pr_grapheme_base.c
+++ b/tests/unictype/test-pr_grapheme_base.c
@@ -21,17 +21,17 @@
     { 0x00A0, 0x00AC },
     { 0x00AE, 0x02FF },
     { 0x0370, 0x0377 },
-    { 0x037A, 0x037E },
+    { 0x037A, 0x037F },
     { 0x0384, 0x038A },
     { 0x038C, 0x038C },
     { 0x038E, 0x03A1 },
     { 0x03A3, 0x0482 },
-    { 0x048A, 0x0527 },
+    { 0x048A, 0x052F },
     { 0x0531, 0x0556 },
     { 0x0559, 0x055F },
     { 0x0561, 0x0587 },
     { 0x0589, 0x058A },
-    { 0x058F, 0x058F },
+    { 0x058D, 0x058F },
     { 0x05BE, 0x05BE },
     { 0x05C0, 0x05C0 },
     { 0x05C3, 0x05C3 },
@@ -60,16 +60,14 @@
     { 0x0830, 0x083E },
     { 0x0840, 0x0858 },
     { 0x085E, 0x085E },
-    { 0x08A0, 0x08A0 },
-    { 0x08A2, 0x08AC },
+    { 0x08A0, 0x08B2 },
     { 0x0903, 0x0939 },
     { 0x093B, 0x093B },
     { 0x093D, 0x0940 },
     { 0x0949, 0x094C },
     { 0x094E, 0x0950 },
     { 0x0958, 0x0961 },
-    { 0x0964, 0x0977 },
-    { 0x0979, 0x097F },
+    { 0x0964, 0x0980 },
     { 0x0982, 0x0983 },
     { 0x0985, 0x098C },
     { 0x098F, 0x0990 },
@@ -145,8 +143,7 @@
     { 0x0C05, 0x0C0C },
     { 0x0C0E, 0x0C10 },
     { 0x0C12, 0x0C28 },
-    { 0x0C2A, 0x0C33 },
-    { 0x0C35, 0x0C39 },
+    { 0x0C2A, 0x0C39 },
     { 0x0C3D, 0x0C3D },
     { 0x0C41, 0x0C44 },
     { 0x0C58, 0x0C59 },
@@ -188,6 +185,7 @@
     { 0x0DC0, 0x0DC6 },
     { 0x0DD0, 0x0DD1 },
     { 0x0DD8, 0x0DDE },
+    { 0x0DE6, 0x0DEF },
     { 0x0DF2, 0x0DF4 },
     { 0x0E01, 0x0E30 },
     { 0x0E32, 0x0E33 },
@@ -257,7 +255,7 @@
     { 0x1380, 0x1399 },
     { 0x13A0, 0x13F4 },
     { 0x1400, 0x169C },
-    { 0x16A0, 0x16F0 },
+    { 0x16A0, 0x16F8 },
     { 0x1700, 0x170C },
     { 0x170E, 0x1711 },
     { 0x1720, 0x1731 },
@@ -278,7 +276,7 @@
     { 0x1880, 0x18A8 },
     { 0x18AA, 0x18AA },
     { 0x18B0, 0x18F5 },
-    { 0x1900, 0x191C },
+    { 0x1900, 0x191E },
     { 0x1923, 0x1926 },
     { 0x1929, 0x192B },
     { 0x1930, 0x1931 },
@@ -309,7 +307,7 @@
     { 0x1B82, 0x1BA1 },
     { 0x1BA6, 0x1BA7 },
     { 0x1BAA, 0x1BAA },
-    { 0x1BAC, 0x1BE5 },
+    { 0x1BAE, 0x1BE5 },
     { 0x1BE7, 0x1BE7 },
     { 0x1BEA, 0x1BEC },
     { 0x1BEE, 0x1BEE },
@@ -347,14 +345,16 @@
     { 0x2070, 0x2071 },
     { 0x2074, 0x208E },
     { 0x2090, 0x209C },
-    { 0x20A0, 0x20BA },
+    { 0x20A0, 0x20BD },
     { 0x2100, 0x2189 },
-    { 0x2190, 0x23F3 },
+    { 0x2190, 0x23FA },
     { 0x2400, 0x2426 },
     { 0x2440, 0x244A },
-    { 0x2460, 0x26FF },
-    { 0x2701, 0x2B4C },
-    { 0x2B50, 0x2B59 },
+    { 0x2460, 0x2B73 },
+    { 0x2B76, 0x2B95 },
+    { 0x2B98, 0x2BB9 },
+    { 0x2BBD, 0x2BC8 },
+    { 0x2BCA, 0x2BD1 },
     { 0x2C00, 0x2C2E },
     { 0x2C30, 0x2C5E },
     { 0x2C60, 0x2CEE },
@@ -373,7 +373,7 @@
     { 0x2DC8, 0x2DCE },
     { 0x2DD0, 0x2DD6 },
     { 0x2DD8, 0x2DDE },
-    { 0x2E00, 0x2E3B },
+    { 0x2E00, 0x2E42 },
     { 0x2E80, 0x2E99 },
     { 0x2E9B, 0x2EF3 },
     { 0x2F00, 0x2FD5 },
@@ -395,13 +395,13 @@
     { 0xA4D0, 0xA62B },
     { 0xA640, 0xA66E },
     { 0xA673, 0xA673 },
-    { 0xA67E, 0xA697 },
+    { 0xA67E, 0xA69D },
     { 0xA6A0, 0xA6EF },
     { 0xA6F2, 0xA6F7 },
     { 0xA700, 0xA78E },
-    { 0xA790, 0xA793 },
-    { 0xA7A0, 0xA7AA },
-    { 0xA7F8, 0xA801 },
+    { 0xA790, 0xA7AD },
+    { 0xA7B0, 0xA7B1 },
+    { 0xA7F7, 0xA801 },
     { 0xA803, 0xA805 },
     { 0xA807, 0xA80A },
     { 0xA80C, 0xA824 },
@@ -420,7 +420,8 @@
     { 0xA9BA, 0xA9BB },
     { 0xA9BD, 0xA9CD },
     { 0xA9CF, 0xA9D9 },
-    { 0xA9DE, 0xA9DF },
+    { 0xA9DE, 0xA9E4 },
+    { 0xA9E6, 0xA9FE },
     { 0xAA00, 0xAA28 },
     { 0xAA2F, 0xAA30 },
     { 0xAA33, 0xAA34 },
@@ -429,7 +430,7 @@
     { 0xAA4D, 0xAA4D },
     { 0xAA50, 0xAA59 },
     { 0xAA5C, 0xAA7B },
-    { 0xAA80, 0xAAAF },
+    { 0xAA7D, 0xAAAF },
     { 0xAAB1, 0xAAB1 },
     { 0xAAB5, 0xAAB6 },
     { 0xAAB9, 0xAABD },
@@ -442,6 +443,8 @@
     { 0xAB11, 0xAB16 },
     { 0xAB20, 0xAB26 },
     { 0xAB28, 0xAB2E },
+    { 0xAB30, 0xAB5F },
+    { 0xAB64, 0xAB65 },
     { 0xABC0, 0xABE4 },
     { 0xABE6, 0xABE7 },
     { 0xABE9, 0xABEC },
@@ -488,26 +491,35 @@
     { 0x10080, 0x100FA },
     { 0x10100, 0x10102 },
     { 0x10107, 0x10133 },
-    { 0x10137, 0x1018A },
+    { 0x10137, 0x1018C },
     { 0x10190, 0x1019B },
+    { 0x101A0, 0x101A0 },
     { 0x101D0, 0x101FC },
     { 0x10280, 0x1029C },
     { 0x102A0, 0x102D0 },
-    { 0x10300, 0x1031E },
-    { 0x10320, 0x10323 },
+    { 0x102E1, 0x102FB },
+    { 0x10300, 0x10323 },
     { 0x10330, 0x1034A },
+    { 0x10350, 0x10375 },
     { 0x10380, 0x1039D },
     { 0x1039F, 0x103C3 },
     { 0x103C8, 0x103D5 },
     { 0x10400, 0x1049D },
     { 0x104A0, 0x104A9 },
+    { 0x10500, 0x10527 },
+    { 0x10530, 0x10563 },
+    { 0x1056F, 0x1056F },
+    { 0x10600, 0x10736 },
+    { 0x10740, 0x10755 },
+    { 0x10760, 0x10767 },
     { 0x10800, 0x10805 },
     { 0x10808, 0x10808 },
     { 0x1080A, 0x10835 },
     { 0x10837, 0x10838 },
     { 0x1083C, 0x1083C },
     { 0x1083F, 0x10855 },
-    { 0x10857, 0x1085F },
+    { 0x10857, 0x1089E },
+    { 0x108A7, 0x108AF },
     { 0x10900, 0x1091B },
     { 0x1091F, 0x10939 },
     { 0x1093F, 0x1093F },
@@ -519,11 +531,15 @@
     { 0x10A19, 0x10A33 },
     { 0x10A40, 0x10A47 },
     { 0x10A50, 0x10A58 },
-    { 0x10A60, 0x10A7F },
+    { 0x10A60, 0x10A9F },
+    { 0x10AC0, 0x10AE4 },
+    { 0x10AEB, 0x10AF6 },
     { 0x10B00, 0x10B35 },
     { 0x10B39, 0x10B55 },
     { 0x10B58, 0x10B72 },
-    { 0x10B78, 0x10B7F },
+    { 0x10B78, 0x10B91 },
+    { 0x10B99, 0x10B9C },
+    { 0x10BA9, 0x10BAF },
     { 0x10C00, 0x10C48 },
     { 0x10E60, 0x10E7E },
     { 0x11000, 0x11000 },
@@ -539,23 +555,86 @@
     { 0x11103, 0x11126 },
     { 0x1112C, 0x1112C },
     { 0x11136, 0x11143 },
+    { 0x11150, 0x11172 },
+    { 0x11174, 0x11176 },
     { 0x11182, 0x111B5 },
     { 0x111BF, 0x111C8 },
-    { 0x111D0, 0x111D9 },
+    { 0x111CD, 0x111CD },
+    { 0x111D0, 0x111DA },
+    { 0x111E1, 0x111F4 },
+    { 0x11200, 0x11211 },
+    { 0x11213, 0x1122E },
+    { 0x11232, 0x11233 },
+    { 0x11235, 0x11235 },
+    { 0x11238, 0x1123D },
+    { 0x112B0, 0x112DE },
+    { 0x112E0, 0x112E2 },
+    { 0x112F0, 0x112F9 },
+    { 0x11302, 0x11303 },
+    { 0x11305, 0x1130C },
+    { 0x1130F, 0x11310 },
+    { 0x11313, 0x11328 },
+    { 0x1132A, 0x11330 },
+    { 0x11332, 0x11333 },
+    { 0x11335, 0x11339 },
+    { 0x1133D, 0x1133D },
+    { 0x1133F, 0x1133F },
+    { 0x11341, 0x11344 },
+    { 0x11347, 0x11348 },
+    { 0x1134B, 0x1134D },
+    { 0x1135D, 0x11363 },
+    { 0x11480, 0x114AF },
+    { 0x114B1, 0x114B2 },
+    { 0x114B9, 0x114B9 },
+    { 0x114BB, 0x114BC },
+    { 0x114BE, 0x114BE },
+    { 0x114C1, 0x114C1 },
+    { 0x114C4, 0x114C7 },
+    { 0x114D0, 0x114D9 },
+    { 0x11580, 0x115AE },
+    { 0x115B0, 0x115B1 },
+    { 0x115B8, 0x115BB },
+    { 0x115BE, 0x115BE },
+    { 0x115C1, 0x115C9 },
+    { 0x11600, 0x11632 },
+    { 0x1163B, 0x1163C },
+    { 0x1163E, 0x1163E },
+    { 0x11641, 0x11644 },
+    { 0x11650, 0x11659 },
     { 0x11680, 0x116AA },
     { 0x116AC, 0x116AC },
     { 0x116AE, 0x116AF },
     { 0x116B6, 0x116B6 },
     { 0x116C0, 0x116C9 },
-    { 0x12000, 0x1236E },
-    { 0x12400, 0x12462 },
-    { 0x12470, 0x12473 },
+    { 0x118A0, 0x118F2 },
+    { 0x118FF, 0x118FF },
+    { 0x11AC0, 0x11AF8 },
+    { 0x12000, 0x12398 },
+    { 0x12400, 0x1246E },
+    { 0x12470, 0x12474 },
     { 0x13000, 0x1342E },
     { 0x16800, 0x16A38 },
+    { 0x16A40, 0x16A5E },
+    { 0x16A60, 0x16A69 },
+    { 0x16A6E, 0x16A6F },
+    { 0x16AD0, 0x16AED },
+    { 0x16AF5, 0x16AF5 },
+    { 0x16B00, 0x16B2F },
+    { 0x16B37, 0x16B45 },
+    { 0x16B50, 0x16B59 },
+    { 0x16B5B, 0x16B61 },
+    { 0x16B63, 0x16B77 },
+    { 0x16B7D, 0x16B8F },
     { 0x16F00, 0x16F44 },
     { 0x16F50, 0x16F7E },
     { 0x16F93, 0x16F9F },
     { 0x1B000, 0x1B001 },
+    { 0x1BC00, 0x1BC6A },
+    { 0x1BC70, 0x1BC7C },
+    { 0x1BC80, 0x1BC88 },
+    { 0x1BC90, 0x1BC99 },
+    { 0x1BC9C, 0x1BC9C },
+    { 0x1BC9F, 0x1BC9F },
     { 0x1D000, 0x1D0F5 },
     { 0x1D100, 0x1D126 },
     { 0x1D129, 0x1D164 },
@@ -589,6 +668,8 @@
     { 0x1D552, 0x1D6A5 },
     { 0x1D6A8, 0x1D7CB },
     { 0x1D7CE, 0x1D7FF },
+    { 0x1E800, 0x1E8C4 },
+    { 0x1E8C7, 0x1E8CF },
     { 0x1EE00, 0x1EE03 },
     { 0x1EE05, 0x1EE1F },
     { 0x1EE21, 0x1EE22 },
@@ -626,10 +707,10 @@
     { 0x1F000, 0x1F02B },
     { 0x1F030, 0x1F093 },
     { 0x1F0A0, 0x1F0AE },
-    { 0x1F0B1, 0x1F0BE },
+    { 0x1F0B1, 0x1F0BF },
     { 0x1F0C1, 0x1F0CF },
-    { 0x1F0D1, 0x1F0DF },
-    { 0x1F100, 0x1F10A },
+    { 0x1F0D1, 0x1F0F5 },
+    { 0x1F100, 0x1F10C },
     { 0x1F110, 0x1F12E },
     { 0x1F130, 0x1F16B },
     { 0x1F170, 0x1F19A },
@@ -637,24 +718,25 @@
     { 0x1F210, 0x1F23A },
     { 0x1F240, 0x1F248 },
     { 0x1F250, 0x1F251 },
-    { 0x1F300, 0x1F320 },
-    { 0x1F330, 0x1F335 },
-    { 0x1F337, 0x1F37C },
-    { 0x1F380, 0x1F393 },
-    { 0x1F3A0, 0x1F3C4 },
-    { 0x1F3C6, 0x1F3CA },
-    { 0x1F3E0, 0x1F3F0 },
-    { 0x1F400, 0x1F43E },
-    { 0x1F440, 0x1F440 },
-    { 0x1F442, 0x1F4F7 },
-    { 0x1F4F9, 0x1F4FC },
-    { 0x1F500, 0x1F53D },
-    { 0x1F540, 0x1F543 },
-    { 0x1F550, 0x1F567 },
-    { 0x1F5FB, 0x1F640 },
-    { 0x1F645, 0x1F64F },
-    { 0x1F680, 0x1F6C5 },
+    { 0x1F300, 0x1F32C },
+    { 0x1F330, 0x1F37D },
+    { 0x1F380, 0x1F3CE },
+    { 0x1F3D4, 0x1F3F7 },
+    { 0x1F400, 0x1F4FE },
+    { 0x1F500, 0x1F54A },
+    { 0x1F550, 0x1F579 },
+    { 0x1F57B, 0x1F5A3 },
+    { 0x1F5A5, 0x1F642 },
+    { 0x1F645, 0x1F6CF },
+    { 0x1F6E0, 0x1F6EC },
+    { 0x1F6F0, 0x1F6F3 },
     { 0x1F700, 0x1F773 },
+    { 0x1F780, 0x1F7D4 },
+    { 0x1F800, 0x1F80B },
+    { 0x1F810, 0x1F847 },
+    { 0x1F850, 0x1F859 },
+    { 0x1F860, 0x1F887 },
+    { 0x1F890, 0x1F8AD },
     { 0x20000, 0x2A6D6 },
     { 0x2A700, 0x2B734 },
     { 0x2B740, 0x2B81D },
--- a/tests/unictype/test-pr_grapheme_extend.c
+++ b/tests/unictype/test-pr_grapheme_extend.c
@@ -40,8 +40,7 @@
     { 0x0825, 0x0827 },
     { 0x0829, 0x082D },
     { 0x0859, 0x085B },
-    { 0x08E4, 0x08FE },
-    { 0x0900, 0x0902 },
+    { 0x08E4, 0x0902 },
     { 0x093A, 0x093A },
     { 0x093C, 0x093C },
     { 0x0941, 0x0948 },
@@ -81,11 +80,13 @@
     { 0x0BC0, 0x0BC0 },
     { 0x0BCD, 0x0BCD },
     { 0x0BD7, 0x0BD7 },
+    { 0x0C00, 0x0C00 },
     { 0x0C3E, 0x0C40 },
     { 0x0C46, 0x0C48 },
     { 0x0C4A, 0x0C4D },
     { 0x0C55, 0x0C56 },
     { 0x0C62, 0x0C63 },
+    { 0x0C81, 0x0C81 },
     { 0x0CBC, 0x0CBC },
     { 0x0CBF, 0x0CBF },
     { 0x0CC2, 0x0CC2 },
@@ -93,6 +94,7 @@
     { 0x0CCC, 0x0CCD },
     { 0x0CD5, 0x0CD6 },
     { 0x0CE2, 0x0CE3 },
+    { 0x0D01, 0x0D01 },
     { 0x0D3E, 0x0D3E },
     { 0x0D41, 0x0D44 },
     { 0x0D4D, 0x0D4D },
@@ -156,6 +158,7 @@
     { 0x1A65, 0x1A6C },
     { 0x1A73, 0x1A7C },
     { 0x1A7F, 0x1A7F },
+    { 0x1AB0, 0x1ABE },
     { 0x1B00, 0x1B03 },
     { 0x1B34, 0x1B34 },
     { 0x1B36, 0x1B3A },
@@ -165,7 +168,7 @@
     { 0x1B80, 0x1B81 },
     { 0x1BA2, 0x1BA5 },
     { 0x1BA8, 0x1BA9 },
-    { 0x1BAB, 0x1BAB },
+    { 0x1BAB, 0x1BAD },
     { 0x1BE6, 0x1BE6 },
     { 0x1BE8, 0x1BE9 },
     { 0x1BED, 0x1BED },
@@ -177,7 +180,8 @@
     { 0x1CE2, 0x1CE8 },
     { 0x1CED, 0x1CED },
     { 0x1CF4, 0x1CF4 },
-    { 0x1DC0, 0x1DE6 },
+    { 0x1CF8, 0x1CF9 },
+    { 0x1DC0, 0x1DF5 },
     { 0x1DFC, 0x1DFF },
     { 0x200C, 0x200D },
     { 0x20D0, 0x20F0 },
@@ -202,11 +206,13 @@
     { 0xA9B3, 0xA9B3 },
     { 0xA9B6, 0xA9B9 },
     { 0xA9BC, 0xA9BC },
+    { 0xA9E5, 0xA9E5 },
     { 0xAA29, 0xAA2E },
     { 0xAA31, 0xAA32 },
     { 0xAA35, 0xAA36 },
     { 0xAA43, 0xAA43 },
     { 0xAA4C, 0xAA4C },
+    { 0xAA7C, 0xAA7C },
     { 0xAAB0, 0xAAB0 },
     { 0xAAB2, 0xAAB4 },
     { 0xAAB7, 0xAAB8 },
@@ -219,29 +225,61 @@
     { 0xABED, 0xABED },
     { 0xFB1E, 0xFB1E },
     { 0xFE00, 0xFE0F },
-    { 0xFE20, 0xFE26 },
+    { 0xFE20, 0xFE2D },
     { 0xFF9E, 0xFF9F },
     { 0x101FD, 0x101FD },
+    { 0x102E0, 0x102E0 },
+    { 0x10376, 0x1037A },
     { 0x10A01, 0x10A03 },
     { 0x10A05, 0x10A06 },
     { 0x10A0C, 0x10A0F },
     { 0x10A38, 0x10A3A },
     { 0x10A3F, 0x10A3F },
+    { 0x10AE5, 0x10AE6 },
     { 0x11001, 0x11001 },
     { 0x11038, 0x11046 },
-    { 0x11080, 0x11081 },
+    { 0x1107F, 0x11081 },
     { 0x110B3, 0x110B6 },
     { 0x110B9, 0x110BA },
     { 0x11100, 0x11102 },
     { 0x11127, 0x1112B },
     { 0x1112D, 0x11134 },
+    { 0x11173, 0x11173 },
     { 0x11180, 0x11181 },
     { 0x111B6, 0x111BE },
+    { 0x1122F, 0x11231 },
+    { 0x11234, 0x11234 },
+    { 0x11236, 0x11237 },
+    { 0x112DF, 0x112DF },
+    { 0x112E3, 0x112EA },
+    { 0x11301, 0x11301 },
+    { 0x1133C, 0x1133C },
+    { 0x1133E, 0x1133E },
+    { 0x11340, 0x11340 },
+    { 0x11357, 0x11357 },
+    { 0x11366, 0x1136C },
+    { 0x11370, 0x11374 },
+    { 0x114B0, 0x114B0 },
+    { 0x114B3, 0x114B8 },
+    { 0x114BA, 0x114BA },
+    { 0x114BD, 0x114BD },
+    { 0x114BF, 0x114C0 },
+    { 0x114C2, 0x114C3 },
+    { 0x115AF, 0x115AF },
+    { 0x115B2, 0x115B5 },
+    { 0x115BC, 0x115BD },
+    { 0x115BF, 0x115C0 },
+    { 0x11633, 0x1163A },
+    { 0x1163D, 0x1163D },
+    { 0x1163F, 0x11640 },
     { 0x116AB, 0x116AB },
     { 0x116AD, 0x116AD },
     { 0x116B0, 0x116B5 },
     { 0x116B7, 0x116B7 },
+    { 0x16AF0, 0x16AF4 },
+    { 0x16B30, 0x16B36 },
     { 0x16F8F, 0x16F92 },
+    { 0x1BC9D, 0x1BC9E },
     { 0x1D165, 0x1D165 },
     { 0x1D167, 0x1D169 },
     { 0x1D16E, 0x1D172 },
@@ -249,6 +287,7 @@
     { 0x1D185, 0x1D18B },
     { 0x1D1AA, 0x1D1AD },
     { 0x1D242, 0x1D244 },
+    { 0x1E8D0, 0x1E8D6 },
     { 0xE0100, 0xE01EF }
 
 #define PREDICATE(c) uc_is_property_grapheme_extend (c)
--- a/tests/unictype/test-pr_grapheme_link.c
+++ b/tests/unictype/test-pr_grapheme_link.c
@@ -46,9 +46,16 @@
     { 0xABED, 0xABED },
     { 0x10A3F, 0x10A3F },
     { 0x11046, 0x11046 },
+    { 0x1107F, 0x1107F },
     { 0x110B9, 0x110B9 },
     { 0x11133, 0x11134 },
     { 0x111C0, 0x111C0 },
+    { 0x11235, 0x11235 },
+    { 0x112EA, 0x112EA },
+    { 0x1134D, 0x1134D },
+    { 0x114C2, 0x114C2 },
+    { 0x115BF, 0x115BF },
+    { 0x1163F, 0x1163F },
     { 0x116B6, 0x116B6 }
 
 #define PREDICATE(c) uc_is_property_grapheme_link (c)
--- a/tests/unictype/test-pr_id_continue.c
+++ b/tests/unictype/test-pr_id_continue.c
@@ -35,13 +35,14 @@
     { 0x0300, 0x0374 },
     { 0x0376, 0x0377 },
     { 0x037A, 0x037D },
+    { 0x037F, 0x037F },
     { 0x0386, 0x038A },
     { 0x038C, 0x038C },
     { 0x038E, 0x03A1 },
     { 0x03A3, 0x03F5 },
     { 0x03F7, 0x0481 },
     { 0x0483, 0x0487 },
-    { 0x048A, 0x0527 },
+    { 0x048A, 0x052F },
     { 0x0531, 0x0556 },
     { 0x0559, 0x0559 },
     { 0x0561, 0x0587 },
@@ -65,14 +66,10 @@
     { 0x07FA, 0x07FA },
     { 0x0800, 0x082D },
     { 0x0840, 0x085B },
-    { 0x08A0, 0x08A0 },
-    { 0x08A2, 0x08AC },
-    { 0x08E4, 0x08FE },
-    { 0x0900, 0x0963 },
+    { 0x08A0, 0x08B2 },
+    { 0x08E4, 0x0963 },
     { 0x0966, 0x096F },
-    { 0x0971, 0x0977 },
-    { 0x0979, 0x097F },
-    { 0x0981, 0x0983 },
+    { 0x0971, 0x0983 },
     { 0x0985, 0x098C },
     { 0x098F, 0x0990 },
     { 0x0993, 0x09A8 },
@@ -146,12 +143,11 @@
     { 0x0BD0, 0x0BD0 },
     { 0x0BD7, 0x0BD7 },
     { 0x0BE6, 0x0BEF },
-    { 0x0C01, 0x0C03 },
+    { 0x0C00, 0x0C03 },
     { 0x0C05, 0x0C0C },
     { 0x0C0E, 0x0C10 },
     { 0x0C12, 0x0C28 },
-    { 0x0C2A, 0x0C33 },
-    { 0x0C35, 0x0C39 },
+    { 0x0C2A, 0x0C39 },
     { 0x0C3D, 0x0C44 },
     { 0x0C46, 0x0C48 },
     { 0x0C4A, 0x0C4D },
@@ -159,7 +155,7 @@
     { 0x0C58, 0x0C59 },
     { 0x0C60, 0x0C63 },
     { 0x0C66, 0x0C6F },
-    { 0x0C82, 0x0C83 },
+    { 0x0C81, 0x0C83 },
     { 0x0C85, 0x0C8C },
     { 0x0C8E, 0x0C90 },
     { 0x0C92, 0x0CA8 },
@@ -173,7 +169,7 @@
     { 0x0CE0, 0x0CE3 },
     { 0x0CE6, 0x0CEF },
     { 0x0CF1, 0x0CF2 },
-    { 0x0D02, 0x0D03 },
+    { 0x0D01, 0x0D03 },
     { 0x0D05, 0x0D0C },
     { 0x0D0E, 0x0D10 },
     { 0x0D12, 0x0D3A },
@@ -194,6 +190,7 @@
     { 0x0DCF, 0x0DD4 },
     { 0x0DD6, 0x0DD6 },
     { 0x0DD8, 0x0DDF },
+    { 0x0DE6, 0x0DEF },
     { 0x0DF2, 0x0DF3 },
     { 0x0E01, 0x0E3A },
     { 0x0E40, 0x0E4E },
@@ -258,7 +255,7 @@
     { 0x166F, 0x167F },
     { 0x1681, 0x169A },
     { 0x16A0, 0x16EA },
-    { 0x16EE, 0x16F0 },
+    { 0x16EE, 0x16F8 },
     { 0x1700, 0x170C },
     { 0x170E, 0x1714 },
     { 0x1720, 0x1734 },
@@ -275,7 +272,7 @@
     { 0x1820, 0x1877 },
     { 0x1880, 0x18AA },
     { 0x18B0, 0x18F5 },
-    { 0x1900, 0x191C },
+    { 0x1900, 0x191E },
     { 0x1920, 0x192B },
     { 0x1930, 0x193B },
     { 0x1946, 0x196D },
@@ -289,6 +286,7 @@
     { 0x1A7F, 0x1A89 },
     { 0x1A90, 0x1A99 },
     { 0x1AA7, 0x1AA7 },
+    { 0x1AB0, 0x1ABD },
     { 0x1B00, 0x1B4B },
     { 0x1B50, 0x1B59 },
     { 0x1B6B, 0x1B73 },
@@ -298,7 +296,8 @@
     { 0x1C4D, 0x1C7D },
     { 0x1CD0, 0x1CD2 },
     { 0x1CD4, 0x1CF6 },
-    { 0x1D00, 0x1DE6 },
+    { 0x1CF8, 0x1CF9 },
+    { 0x1D00, 0x1DF5 },
     { 0x1DFC, 0x1F15 },
     { 0x1F18, 0x1F1D },
     { 0x1F20, 0x1F45 },
@@ -378,14 +377,14 @@
     { 0xA610, 0xA62B },
     { 0xA640, 0xA66F },
     { 0xA674, 0xA67D },
-    { 0xA67F, 0xA697 },
+    { 0xA67F, 0xA69D },
     { 0xA69F, 0xA6F1 },
     { 0xA717, 0xA71F },
     { 0xA722, 0xA788 },
     { 0xA78B, 0xA78E },
-    { 0xA790, 0xA793 },
-    { 0xA7A0, 0xA7AA },
-    { 0xA7F8, 0xA827 },
+    { 0xA790, 0xA7AD },
+    { 0xA7B0, 0xA7B1 },
+    { 0xA7F7, 0xA827 },
     { 0xA840, 0xA873 },
     { 0xA880, 0xA8C4 },
     { 0xA8D0, 0xA8D9 },
@@ -396,12 +395,12 @@
     { 0xA960, 0xA97C },
     { 0xA980, 0xA9C0 },
     { 0xA9CF, 0xA9D9 },
+    { 0xA9E0, 0xA9FE },
     { 0xAA00, 0xAA36 },
     { 0xAA40, 0xAA4D },
     { 0xAA50, 0xAA59 },
     { 0xAA60, 0xAA76 },
-    { 0xAA7A, 0xAA7B },
-    { 0xAA80, 0xAAC2 },
+    { 0xAA7A, 0xAAC2 },
     { 0xAADB, 0xAADD },
     { 0xAAE0, 0xAAEF },
     { 0xAAF2, 0xAAF6 },
@@ -410,6 +409,9 @@
     { 0xAB11, 0xAB16 },
     { 0xAB20, 0xAB26 },
     { 0xAB28, 0xAB2E },
+    { 0xAB30, 0xAB5A },
+    { 0xAB5C, 0xAB5F },
+    { 0xAB64, 0xAB65 },
     { 0xABC0, 0xABEA },
     { 0xABEC, 0xABED },
     { 0xABF0, 0xABF9 },
@@ -432,7 +434,7 @@
     { 0xFD92, 0xFDC7 },
     { 0xFDF0, 0xFDFB },
     { 0xFE00, 0xFE0F },
-    { 0xFE20, 0xFE26 },
+    { 0xFE20, 0xFE2D },
     { 0xFE33, 0xFE34 },
     { 0xFE4D, 0xFE4F },
     { 0xFE70, 0xFE74 },
@@ -457,20 +459,29 @@
     { 0x101FD, 0x101FD },
     { 0x10280, 0x1029C },
     { 0x102A0, 0x102D0 },
-    { 0x10300, 0x1031E },
+    { 0x102E0, 0x102E0 },
+    { 0x10300, 0x1031F },
     { 0x10330, 0x1034A },
+    { 0x10350, 0x1037A },
     { 0x10380, 0x1039D },
     { 0x103A0, 0x103C3 },
     { 0x103C8, 0x103CF },
     { 0x103D1, 0x103D5 },
     { 0x10400, 0x1049D },
     { 0x104A0, 0x104A9 },
+    { 0x10500, 0x10527 },
+    { 0x10530, 0x10563 },
+    { 0x10600, 0x10736 },
+    { 0x10740, 0x10755 },
+    { 0x10760, 0x10767 },
     { 0x10800, 0x10805 },
     { 0x10808, 0x10808 },
     { 0x1080A, 0x10835 },
     { 0x10837, 0x10838 },
     { 0x1083C, 0x1083C },
     { 0x1083F, 0x10855 },
+    { 0x10860, 0x10876 },
+    { 0x10880, 0x1089E },
     { 0x10900, 0x10915 },
     { 0x10920, 0x10939 },
     { 0x10980, 0x109B7 },
@@ -483,29 +494,78 @@
     { 0x10A38, 0x10A3A },
     { 0x10A3F, 0x10A3F },
     { 0x10A60, 0x10A7C },
+    { 0x10A80, 0x10A9C },
+    { 0x10AC0, 0x10AC7 },
+    { 0x10AC9, 0x10AE6 },
     { 0x10B00, 0x10B35 },
     { 0x10B40, 0x10B55 },
     { 0x10B60, 0x10B72 },
+    { 0x10B80, 0x10B91 },
     { 0x10C00, 0x10C48 },
     { 0x11000, 0x11046 },
     { 0x11066, 0x1106F },
-    { 0x11080, 0x110BA },
+    { 0x1107F, 0x110BA },
     { 0x110D0, 0x110E8 },
     { 0x110F0, 0x110F9 },
     { 0x11100, 0x11134 },
     { 0x11136, 0x1113F },
+    { 0x11150, 0x11173 },
+    { 0x11176, 0x11176 },
     { 0x11180, 0x111C4 },
-    { 0x111D0, 0x111D9 },
+    { 0x111D0, 0x111DA },
+    { 0x11200, 0x11211 },
+    { 0x11213, 0x11237 },
+    { 0x112B0, 0x112EA },
+    { 0x112F0, 0x112F9 },
+    { 0x11301, 0x11303 },
+    { 0x11305, 0x1130C },
+    { 0x1130F, 0x11310 },
+    { 0x11313, 0x11328 },
+    { 0x1132A, 0x11330 },
+    { 0x11332, 0x11333 },
+    { 0x11335, 0x11339 },
+    { 0x1133C, 0x11344 },
+    { 0x11347, 0x11348 },
+    { 0x1134B, 0x1134D },
+    { 0x11357, 0x11357 },
+    { 0x1135D, 0x11363 },
+    { 0x11366, 0x1136C },
+    { 0x11370, 0x11374 },
+    { 0x11480, 0x114C5 },
+    { 0x114C7, 0x114C7 },
+    { 0x114D0, 0x114D9 },
+    { 0x11580, 0x115B5 },
+    { 0x115B8, 0x115C0 },
+    { 0x11600, 0x11640 },
+    { 0x11644, 0x11644 },
+    { 0x11650, 0x11659 },
     { 0x11680, 0x116B7 },
     { 0x116C0, 0x116C9 },
-    { 0x12000, 0x1236E },
-    { 0x12400, 0x12462 },
+    { 0x118A0, 0x118E9 },
+    { 0x118FF, 0x118FF },
+    { 0x11AC0, 0x11AF8 },
+    { 0x12000, 0x12398 },
+    { 0x12400, 0x1246E },
     { 0x13000, 0x1342E },
     { 0x16800, 0x16A38 },
+    { 0x16A40, 0x16A5E },
+    { 0x16A60, 0x16A69 },
+    { 0x16AD0, 0x16AED },
+    { 0x16AF0, 0x16AF4 },
+    { 0x16B00, 0x16B36 },
+    { 0x16B40, 0x16B43 },
+    { 0x16B50, 0x16B59 },
+    { 0x16B63, 0x16B77 },
+    { 0x16B7D, 0x16B8F },
     { 0x16F00, 0x16F44 },
     { 0x16F50, 0x16F7E },
     { 0x16F8F, 0x16F9F },
     { 0x1B000, 0x1B001 },
+    { 0x1BC00, 0x1BC6A },
+    { 0x1BC70, 0x1BC7C },
+    { 0x1BC80, 0x1BC88 },
+    { 0x1BC90, 0x1BC99 },
+    { 0x1BC9D, 0x1BC9E },
     { 0x1D165, 0x1D169 },
     { 0x1D16D, 0x1D172 },
     { 0x1D17B, 0x1D182 },
@@ -543,6 +603,8 @@
     { 0x1D7AA, 0x1D7C2 },
     { 0x1D7C4, 0x1D7CB },
     { 0x1D7CE, 0x1D7FF },
+    { 0x1E800, 0x1E8C4 },
+    { 0x1E8D0, 0x1E8D6 },
     { 0x1EE00, 0x1EE03 },
     { 0x1EE05, 0x1EE1F },
     { 0x1EE21, 0x1EE22 },
--- a/tests/unictype/test-pr_id_start.c
+++ b/tests/unictype/test-pr_id_start.c
@@ -32,13 +32,14 @@
     { 0x0370, 0x0374 },
     { 0x0376, 0x0377 },
     { 0x037A, 0x037D },
+    { 0x037F, 0x037F },
     { 0x0386, 0x0386 },
     { 0x0388, 0x038A },
     { 0x038C, 0x038C },
     { 0x038E, 0x03A1 },
     { 0x03A3, 0x03F5 },
     { 0x03F7, 0x0481 },
-    { 0x048A, 0x0527 },
+    { 0x048A, 0x052F },
     { 0x0531, 0x0556 },
     { 0x0559, 0x0559 },
     { 0x0561, 0x0587 },
@@ -64,14 +65,12 @@
     { 0x0824, 0x0824 },
     { 0x0828, 0x0828 },
     { 0x0840, 0x0858 },
-    { 0x08A0, 0x08A0 },
-    { 0x08A2, 0x08AC },
+    { 0x08A0, 0x08B2 },
     { 0x0904, 0x0939 },
     { 0x093D, 0x093D },
     { 0x0950, 0x0950 },
     { 0x0958, 0x0961 },
-    { 0x0971, 0x0977 },
-    { 0x0979, 0x097F },
+    { 0x0971, 0x0980 },
     { 0x0985, 0x098C },
     { 0x098F, 0x0990 },
     { 0x0993, 0x09A8 },
@@ -126,8 +125,7 @@
     { 0x0C05, 0x0C0C },
     { 0x0C0E, 0x0C10 },
     { 0x0C12, 0x0C28 },
-    { 0x0C2A, 0x0C33 },
-    { 0x0C35, 0x0C39 },
+    { 0x0C2A, 0x0C39 },
     { 0x0C3D, 0x0C3D },
     { 0x0C58, 0x0C59 },
     { 0x0C60, 0x0C61 },
@@ -211,7 +209,7 @@
     { 0x166F, 0x167F },
     { 0x1681, 0x169A },
     { 0x16A0, 0x16EA },
-    { 0x16EE, 0x16F0 },
+    { 0x16EE, 0x16F8 },
     { 0x1700, 0x170C },
     { 0x170E, 0x1711 },
     { 0x1720, 0x1731 },
@@ -225,7 +223,7 @@
     { 0x1880, 0x18A8 },
     { 0x18AA, 0x18AA },
     { 0x18B0, 0x18F5 },
-    { 0x1900, 0x191C },
+    { 0x1900, 0x191E },
     { 0x1950, 0x196D },
     { 0x1970, 0x1974 },
     { 0x1980, 0x19AB },
@@ -319,14 +317,14 @@
     { 0xA610, 0xA61F },
     { 0xA62A, 0xA62B },
     { 0xA640, 0xA66E },
-    { 0xA67F, 0xA697 },
+    { 0xA67F, 0xA69D },
     { 0xA6A0, 0xA6EF },
     { 0xA717, 0xA71F },
     { 0xA722, 0xA788 },
     { 0xA78B, 0xA78E },
-    { 0xA790, 0xA793 },
-    { 0xA7A0, 0xA7AA },
-    { 0xA7F8, 0xA801 },
+    { 0xA790, 0xA7AD },
+    { 0xA7B0, 0xA7B1 },
+    { 0xA7F7, 0xA801 },
     { 0xA803, 0xA805 },
     { 0xA807, 0xA80A },
     { 0xA80C, 0xA822 },
@@ -339,12 +337,15 @@
     { 0xA960, 0xA97C },
     { 0xA984, 0xA9B2 },
     { 0xA9CF, 0xA9CF },
+    { 0xA9E0, 0xA9E4 },
+    { 0xA9E6, 0xA9EF },
+    { 0xA9FA, 0xA9FE },
     { 0xAA00, 0xAA28 },
     { 0xAA40, 0xAA42 },
     { 0xAA44, 0xAA4B },
     { 0xAA60, 0xAA76 },
     { 0xAA7A, 0xAA7A },
-    { 0xAA80, 0xAAAF },
+    { 0xAA7E, 0xAAAF },
     { 0xAAB1, 0xAAB1 },
     { 0xAAB5, 0xAAB6 },
     { 0xAAB9, 0xAABD },
@@ -358,6 +359,9 @@
     { 0xAB11, 0xAB16 },
     { 0xAB20, 0xAB26 },
     { 0xAB28, 0xAB2E },
+    { 0xAB30, 0xAB5A },
+    { 0xAB5C, 0xAB5F },
+    { 0xAB64, 0xAB65 },
     { 0xABC0, 0xABE2 },
     { 0xAC00, 0xD7A3 },
     { 0xD7B0, 0xD7C6 },
@@ -397,19 +401,27 @@
     { 0x10140, 0x10174 },
     { 0x10280, 0x1029C },
     { 0x102A0, 0x102D0 },
-    { 0x10300, 0x1031E },
+    { 0x10300, 0x1031F },
     { 0x10330, 0x1034A },
+    { 0x10350, 0x10375 },
     { 0x10380, 0x1039D },
     { 0x103A0, 0x103C3 },
     { 0x103C8, 0x103CF },
     { 0x103D1, 0x103D5 },
     { 0x10400, 0x1049D },
+    { 0x10500, 0x10527 },
+    { 0x10530, 0x10563 },
+    { 0x10600, 0x10736 },
+    { 0x10740, 0x10755 },
+    { 0x10760, 0x10767 },
     { 0x10800, 0x10805 },
     { 0x10808, 0x10808 },
     { 0x1080A, 0x10835 },
     { 0x10837, 0x10838 },
     { 0x1083C, 0x1083C },
     { 0x1083F, 0x10855 },
+    { 0x10860, 0x10876 },
+    { 0x10880, 0x1089E },
     { 0x10900, 0x10915 },
     { 0x10920, 0x10939 },
     { 0x10980, 0x109B7 },
@@ -419,25 +431,62 @@
     { 0x10A15, 0x10A17 },
     { 0x10A19, 0x10A33 },
     { 0x10A60, 0x10A7C },
+    { 0x10A80, 0x10A9C },
+    { 0x10AC0, 0x10AC7 },
+    { 0x10AC9, 0x10AE4 },
     { 0x10B00, 0x10B35 },
     { 0x10B40, 0x10B55 },
     { 0x10B60, 0x10B72 },
+    { 0x10B80, 0x10B91 },
     { 0x10C00, 0x10C48 },
     { 0x11003, 0x11037 },
     { 0x11083, 0x110AF },
     { 0x110D0, 0x110E8 },
     { 0x11103, 0x11126 },
+    { 0x11150, 0x11172 },
+    { 0x11176, 0x11176 },
     { 0x11183, 0x111B2 },
     { 0x111C1, 0x111C4 },
+    { 0x111DA, 0x111DA },
+    { 0x11200, 0x11211 },
+    { 0x11213, 0x1122B },
+    { 0x112B0, 0x112DE },
+    { 0x11305, 0x1130C },
+    { 0x1130F, 0x11310 },
+    { 0x11313, 0x11328 },
+    { 0x1132A, 0x11330 },
+    { 0x11332, 0x11333 },
+    { 0x11335, 0x11339 },
+    { 0x1133D, 0x1133D },
+    { 0x1135D, 0x11361 },
+    { 0x11480, 0x114AF },
+    { 0x114C4, 0x114C5 },
+    { 0x114C7, 0x114C7 },
+    { 0x11580, 0x115AE },
+    { 0x11600, 0x1162F },
+    { 0x11644, 0x11644 },
     { 0x11680, 0x116AA },
-    { 0x12000, 0x1236E },
-    { 0x12400, 0x12462 },
+    { 0x118A0, 0x118DF },
+    { 0x118FF, 0x118FF },
+    { 0x11AC0, 0x11AF8 },
+    { 0x12000, 0x12398 },
+    { 0x12400, 0x1246E },
     { 0x13000, 0x1342E },
     { 0x16800, 0x16A38 },
+    { 0x16A40, 0x16A5E },
+    { 0x16AD0, 0x16AED },
+    { 0x16B00, 0x16B2F },
+    { 0x16B40, 0x16B43 },
+    { 0x16B63, 0x16B77 },
+    { 0x16B7D, 0x16B8F },
     { 0x16F00, 0x16F44 },
     { 0x16F50, 0x16F50 },
     { 0x16F93, 0x16F9F },
     { 0x1B000, 0x1B001 },
+    { 0x1BC00, 0x1BC6A },
+    { 0x1BC70, 0x1BC7C },
+    { 0x1BC80, 0x1BC88 },
+    { 0x1BC90, 0x1BC99 },
     { 0x1D400, 0x1D454 },
     { 0x1D456, 0x1D49C },
     { 0x1D49E, 0x1D49F },
@@ -468,6 +517,7 @@
     { 0x1D78A, 0x1D7A8 },
     { 0x1D7AA, 0x1D7C2 },
     { 0x1D7C4, 0x1D7CB },
+    { 0x1E800, 0x1E8C4 },
     { 0x1EE00, 0x1EE03 },
     { 0x1EE05, 0x1EE1F },
     { 0x1EE21, 0x1EE22 },
--- a/tests/unictype/test-pr_ignorable_control.c
+++ b/tests/unictype/test-pr_ignorable_control.c
@@ -22,7 +22,7 @@
     { 0x007F, 0x0084 },
     { 0x0086, 0x009F },
     { 0x00AD, 0x00AD },
-    { 0x0600, 0x0604 },
+    { 0x0600, 0x0605 },
     { 0x061C, 0x061C },
     { 0x06DD, 0x06DD },
     { 0x070F, 0x070F },
@@ -34,6 +34,7 @@
     { 0xFEFF, 0xFEFF },
     { 0xFFF9, 0xFFFB },
     { 0x110BD, 0x110BD },
+    { 0x1BCA0, 0x1BCA3 },
     { 0x1D173, 0x1D17A },
     { 0xE0001, 0xE0001 },
     { 0xE0020, 0xE007F }
--- a/tests/unictype/test-pr_lowercase.c
+++ b/tests/unictype/test-pr_lowercase.c
@@ -287,6 +287,10 @@
     { 0x0523, 0x0523 },
     { 0x0525, 0x0525 },
     { 0x0527, 0x0527 },
+    { 0x0529, 0x0529 },
+    { 0x052B, 0x052B },
+    { 0x052D, 0x052D },
+    { 0x052F, 0x052F },
     { 0x0561, 0x0587 },
     { 0x1D00, 0x1DBF },
     { 0x1E01, 0x1E01 },
@@ -548,6 +552,8 @@
     { 0xA693, 0xA693 },
     { 0xA695, 0xA695 },
     { 0xA697, 0xA697 },
+    { 0xA699, 0xA699 },
+    { 0xA69B, 0xA69D },
     { 0xA723, 0xA723 },
     { 0xA725, 0xA725 },
     { 0xA727, 0xA727 },
@@ -596,17 +602,26 @@
     { 0xA78C, 0xA78C },
     { 0xA78E, 0xA78E },
     { 0xA791, 0xA791 },
-    { 0xA793, 0xA793 },
+    { 0xA793, 0xA795 },
+    { 0xA797, 0xA797 },
+    { 0xA799, 0xA799 },
+    { 0xA79B, 0xA79B },
+    { 0xA79D, 0xA79D },
+    { 0xA79F, 0xA79F },
     { 0xA7A1, 0xA7A1 },
     { 0xA7A3, 0xA7A3 },
     { 0xA7A5, 0xA7A5 },
     { 0xA7A7, 0xA7A7 },
     { 0xA7A9, 0xA7A9 },
     { 0xA7F8, 0xA7FA },
+    { 0xAB30, 0xAB5A },
+    { 0xAB5C, 0xAB5F },
+    { 0xAB64, 0xAB65 },
     { 0xFB00, 0xFB06 },
     { 0xFB13, 0xFB17 },
     { 0xFF41, 0xFF5A },
     { 0x10428, 0x1044F },
+    { 0x118C0, 0x118DF },
     { 0x1D41A, 0x1D433 },
     { 0x1D44E, 0x1D454 },
     { 0x1D456, 0x1D467 },
--- a/tests/unictype/test-pr_numeric.c
+++ b/tests/unictype/test-pr_numeric.c
@@ -36,6 +36,7 @@
     { 0x0C78, 0x0C7E },
     { 0x0CE6, 0x0CEF },
     { 0x0D66, 0x0D75 },
+    { 0x0DE6, 0x0DEF },
     { 0x0E50, 0x0E59 },
     { 0x0ED0, 0x0ED9 },
     { 0x0F20, 0x0F33 },
@@ -78,6 +79,7 @@
     { 0xA8D0, 0xA8D9 },
     { 0xA900, 0xA909 },
     { 0xA9D0, 0xA9D9 },
+    { 0xA9F0, 0xA9F9 },
     { 0xAA50, 0xAA59 },
     { 0xABF0, 0xABF9 },
     { 0xF96B, 0xF96B },
@@ -90,28 +92,43 @@
     { 0xFF10, 0xFF19 },
     { 0x10107, 0x10133 },
     { 0x10140, 0x10178 },
-    { 0x1018A, 0x1018A },
+    { 0x1018A, 0x1018B },
+    { 0x102E1, 0x102FB },
     { 0x10320, 0x10323 },
     { 0x10341, 0x10341 },
     { 0x1034A, 0x1034A },
     { 0x103D1, 0x103D5 },
     { 0x104A0, 0x104A9 },
     { 0x10858, 0x1085F },
+    { 0x10879, 0x1087F },
+    { 0x108A7, 0x108AF },
     { 0x10916, 0x1091B },
     { 0x10A40, 0x10A47 },
     { 0x10A7D, 0x10A7E },
+    { 0x10A9D, 0x10A9F },
+    { 0x10AEB, 0x10AEF },
     { 0x10B58, 0x10B5F },
     { 0x10B78, 0x10B7F },
+    { 0x10BA9, 0x10BAF },
     { 0x10E60, 0x10E7E },
     { 0x11052, 0x1106F },
     { 0x110F0, 0x110F9 },
     { 0x11136, 0x1113F },
     { 0x111D0, 0x111D9 },
+    { 0x111E1, 0x111F4 },
+    { 0x112F0, 0x112F9 },
+    { 0x114D0, 0x114D9 },
+    { 0x11650, 0x11659 },
     { 0x116C0, 0x116C9 },
-    { 0x12400, 0x12462 },
+    { 0x118E0, 0x118F2 },
+    { 0x12400, 0x1246E },
+    { 0x16A60, 0x16A69 },
+    { 0x16B50, 0x16B59 },
+    { 0x16B5B, 0x16B61 },
     { 0x1D360, 0x1D371 },
     { 0x1D7CE, 0x1D7FF },
-    { 0x1F100, 0x1F10A },
+    { 0x1E8C7, 0x1E8CF },
+    { 0x1F100, 0x1F10C },
     { 0x2F890, 0x2F890 }
 
 #define PREDICATE(c) uc_is_property_numeric (c)
--- a/tests/unictype/test-pr_other_alphabetic.c
+++ b/tests/unictype/test-pr_other_alphabetic.c
@@ -39,8 +39,7 @@
     { 0x0825, 0x0827 },
     { 0x0829, 0x082C },
     { 0x08E4, 0x08E9 },
-    { 0x08F0, 0x08FE },
-    { 0x0900, 0x0903 },
+    { 0x08F0, 0x0903 },
     { 0x093A, 0x093B },
     { 0x093E, 0x094C },
     { 0x094E, 0x094F },
@@ -75,19 +74,19 @@
     { 0x0BC6, 0x0BC8 },
     { 0x0BCA, 0x0BCC },
     { 0x0BD7, 0x0BD7 },
-    { 0x0C01, 0x0C03 },
+    { 0x0C00, 0x0C03 },
     { 0x0C3E, 0x0C44 },
     { 0x0C46, 0x0C48 },
     { 0x0C4A, 0x0C4C },
     { 0x0C55, 0x0C56 },
     { 0x0C62, 0x0C63 },
-    { 0x0C82, 0x0C83 },
+    { 0x0C81, 0x0C83 },
     { 0x0CBE, 0x0CC4 },
     { 0x0CC6, 0x0CC8 },
     { 0x0CCA, 0x0CCC },
     { 0x0CD5, 0x0CD6 },
     { 0x0CE2, 0x0CE3 },
-    { 0x0D02, 0x0D03 },
+    { 0x0D01, 0x0D03 },
     { 0x0D3E, 0x0D44 },
     { 0x0D46, 0x0D48 },
     { 0x0D4A, 0x0D4C },
@@ -140,6 +139,7 @@
     { 0x1BE7, 0x1BF1 },
     { 0x1C24, 0x1C35 },
     { 0x1CF2, 0x1CF3 },
+    { 0x1DE7, 0x1DF4 },
     { 0x24B6, 0x24E9 },
     { 0x2DE0, 0x2DFF },
     { 0xA674, 0xA67B },
@@ -162,6 +162,7 @@
     { 0xAAF5, 0xAAF5 },
     { 0xABE3, 0xABEA },
     { 0xFB1E, 0xFB1E },
+    { 0x10376, 0x1037A },
     { 0x10A01, 0x10A03 },
     { 0x10A05, 0x10A06 },
     { 0x10A0C, 0x10A0F },
@@ -173,8 +174,27 @@
     { 0x11127, 0x11132 },
     { 0x11180, 0x11182 },
     { 0x111B3, 0x111BF },
+    { 0x1122C, 0x11234 },
+    { 0x11237, 0x11237 },
+    { 0x112DF, 0x112E8 },
+    { 0x11301, 0x11303 },
+    { 0x1133E, 0x11344 },
+    { 0x11347, 0x11348 },
+    { 0x1134B, 0x1134C },
+    { 0x11357, 0x11357 },
+    { 0x11362, 0x11363 },
+    { 0x114B0, 0x114C1 },
+    { 0x115AF, 0x115B5 },
+    { 0x115B8, 0x115BE },
+    { 0x11630, 0x1163E },
+    { 0x11640, 0x11640 },
     { 0x116AB, 0x116B5 },
-    { 0x16F51, 0x16F7E }
+    { 0x16B30, 0x16B36 },
+    { 0x16F51, 0x16F7E },
+    { 0x1BC9E, 0x1BC9E },
+    { 0x1F130, 0x1F149 },
+    { 0x1F150, 0x1F169 },
+    { 0x1F170, 0x1F189 }
 
 #define PREDICATE(c) uc_is_property_other_alphabetic (c)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-pr_other_grapheme_extend.c
+++ b/tests/unictype/test-pr_other_grapheme_extend.c
@@ -32,6 +32,11 @@
     { 0x200C, 0x200D },
     { 0x302E, 0x302F },
     { 0xFF9E, 0xFF9F },
+    { 0x1133E, 0x1133E },
+    { 0x11357, 0x11357 },
+    { 0x114B0, 0x114B0 },
+    { 0x114BD, 0x114BD },
+    { 0x115AF, 0x115AF },
     { 0x1D165, 0x1D165 },
     { 0x1D16E, 0x1D172 }
 
--- a/tests/unictype/test-pr_other_lowercase.c
+++ b/tests/unictype/test-pr_other_lowercase.c
@@ -33,8 +33,10 @@
     { 0x2170, 0x217F },
     { 0x24D0, 0x24E9 },
     { 0x2C7C, 0x2C7D },
+    { 0xA69C, 0xA69D },
     { 0xA770, 0xA770 },
-    { 0xA7F8, 0xA7F9 }
+    { 0xA7F8, 0xA7F9 },
+    { 0xAB5C, 0xAB5F }
 
 #define PREDICATE(c) uc_is_property_other_lowercase (c)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-pr_other_uppercase.c
+++ b/tests/unictype/test-pr_other_uppercase.c
@@ -18,7 +18,10 @@
 #include "test-predicate-part1.h"
 
     { 0x2160, 0x216F },
-    { 0x24B6, 0x24CF }
+    { 0x24B6, 0x24CF },
+    { 0x1F130, 0x1F149 },
+    { 0x1F150, 0x1F169 },
+    { 0x1F170, 0x1F189 }
 
 #define PREDICATE(c) uc_is_property_other_uppercase (c)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-pr_punctuation.c
+++ b/tests/unictype/test-pr_punctuation.c
@@ -102,7 +102,7 @@
     { 0x2CFE, 0x2CFF },
     { 0x2D70, 0x2D70 },
     { 0x2E00, 0x2E2E },
-    { 0x2E30, 0x2E3B },
+    { 0x2E30, 0x2E42 },
     { 0x3001, 0x3003 },
     { 0x3008, 0x3011 },
     { 0x3014, 0x301F },
@@ -146,18 +146,32 @@
     { 0x10100, 0x10102 },
     { 0x1039F, 0x1039F },
     { 0x103D0, 0x103D0 },
+    { 0x1056F, 0x1056F },
     { 0x10857, 0x10857 },
     { 0x1091F, 0x1091F },
     { 0x1093F, 0x1093F },
     { 0x10A50, 0x10A58 },
     { 0x10A7F, 0x10A7F },
+    { 0x10AF0, 0x10AF6 },
     { 0x10B39, 0x10B3F },
+    { 0x10B99, 0x10B9C },
     { 0x11047, 0x1104D },
     { 0x110BB, 0x110BC },
     { 0x110BE, 0x110C1 },
     { 0x11140, 0x11143 },
+    { 0x11174, 0x11175 },
     { 0x111C5, 0x111C8 },
-    { 0x12470, 0x12473 }
+    { 0x111CD, 0x111CD },
+    { 0x11238, 0x1123D },
+    { 0x114C6, 0x114C6 },
+    { 0x115C1, 0x115C9 },
+    { 0x11641, 0x11643 },
+    { 0x12470, 0x12474 },
+    { 0x16A6E, 0x16A6F },
+    { 0x16AF5, 0x16AF5 },
+    { 0x16B37, 0x16B3B },
+    { 0x16B44, 0x16B44 },
+    { 0x1BC9F, 0x1BC9F }
 
 #define PREDICATE(c) uc_is_property_punctuation (c)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-pr_quotation_mark.c
+++ b/tests/unictype/test-pr_quotation_mark.c
@@ -23,6 +23,7 @@
     { 0x00BB, 0x00BB },
     { 0x2018, 0x201F },
     { 0x2039, 0x203A },
+    { 0x2E42, 0x2E42 },
     { 0x300C, 0x300F },
     { 0x301D, 0x301F },
     { 0xFE41, 0xFE44 },
--- a/tests/unictype/test-pr_sentence_terminal.c
+++ b/tests/unictype/test-pr_sentence_terminal.c
@@ -20,8 +20,6 @@
     { 0x0021, 0x0021 },
     { 0x002E, 0x002E },
     { 0x003F, 0x003F },
-    { 0x055C, 0x055C },
-    { 0x055E, 0x055E },
     { 0x0589, 0x0589 },
     { 0x061F, 0x061F },
     { 0x06D4, 0x06D4 },
@@ -44,6 +42,7 @@
     { 0x203C, 0x203D },
     { 0x2047, 0x2049 },
     { 0x2E2E, 0x2E2E },
+    { 0x2E3C, 0x2E3C },
     { 0x3002, 0x3002 },
     { 0xA4FF, 0xA4FF },
     { 0xA60E, 0xA60F },
@@ -66,7 +65,18 @@
     { 0x11047, 0x11048 },
     { 0x110BE, 0x110C1 },
     { 0x11141, 0x11143 },
-    { 0x111C5, 0x111C6 }
+    { 0x111C5, 0x111C6 },
+    { 0x111CD, 0x111CD },
+    { 0x11238, 0x11239 },
+    { 0x1123B, 0x1123C },
+    { 0x115C2, 0x115C3 },
+    { 0x115C9, 0x115C9 },
+    { 0x11641, 0x11642 },
+    { 0x16A6E, 0x16A6F },
+    { 0x16AF5, 0x16AF5 },
+    { 0x16B37, 0x16B38 },
+    { 0x16B44, 0x16B44 },
+    { 0x1BC9F, 0x1BC9F }
 
 #define PREDICATE(c) uc_is_property_sentence_terminal (c)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-pr_terminal_punctuation.c
+++ b/tests/unictype/test-pr_terminal_punctuation.c
@@ -43,6 +43,7 @@
     { 0x1361, 0x1368 },
     { 0x166D, 0x166E },
     { 0x16EB, 0x16ED },
+    { 0x1735, 0x1736 },
     { 0x17D4, 0x17D6 },
     { 0x17DA, 0x17DA },
     { 0x1802, 0x1805 },
@@ -56,6 +57,8 @@
     { 0x203C, 0x203D },
     { 0x2047, 0x2049 },
     { 0x2E2E, 0x2E2E },
+    { 0x2E3C, 0x2E3C },
+    { 0x2E41, 0x2E41 },
     { 0x3001, 0x3002 },
     { 0xA4FE, 0xA4FF },
     { 0xA60D, 0xA60F },
@@ -81,12 +84,25 @@
     { 0x103D0, 0x103D0 },
     { 0x10857, 0x10857 },
     { 0x1091F, 0x1091F },
+    { 0x10A56, 0x10A57 },
+    { 0x10AF0, 0x10AF5 },
     { 0x10B3A, 0x10B3F },
+    { 0x10B99, 0x10B9C },
     { 0x11047, 0x1104D },
     { 0x110BE, 0x110C1 },
     { 0x11141, 0x11143 },
     { 0x111C5, 0x111C6 },
-    { 0x12470, 0x12473 }
+    { 0x111CD, 0x111CD },
+    { 0x11238, 0x1123C },
+    { 0x115C2, 0x115C5 },
+    { 0x115C9, 0x115C9 },
+    { 0x11641, 0x11642 },
+    { 0x12470, 0x12474 },
+    { 0x16A6E, 0x16A6F },
+    { 0x16AF5, 0x16AF5 },
+    { 0x16B37, 0x16B39 },
+    { 0x16B44, 0x16B44 },
+    { 0x1BC9F, 0x1BC9F }
 
 #define PREDICATE(c) uc_is_property_terminal_punctuation (c)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-pr_unassigned_code_value.c
+++ b/tests/unictype/test-pr_unassigned_code_value.c
@@ -18,20 +18,19 @@
 #include "test-predicate-part1.h"
 
     { 0x0378, 0x0379 },
-    { 0x037F, 0x0383 },
+    { 0x0380, 0x0383 },
     { 0x038B, 0x038B },
     { 0x038D, 0x038D },
     { 0x03A2, 0x03A2 },
-    { 0x0528, 0x0530 },
+    { 0x0530, 0x0530 },
     { 0x0557, 0x0558 },
     { 0x0560, 0x0560 },
     { 0x0588, 0x0588 },
-    { 0x058B, 0x058E },
+    { 0x058B, 0x058C },
     { 0x0590, 0x0590 },
     { 0x05C8, 0x05CF },
     { 0x05EB, 0x05EF },
     { 0x05F5, 0x05FF },
-    { 0x0605, 0x0605 },
     { 0x061D, 0x061D },
     { 0x070E, 0x070E },
     { 0x074B, 0x074C },
@@ -41,11 +40,7 @@
     { 0x083F, 0x083F },
     { 0x085C, 0x085D },
     { 0x085F, 0x089F },
-    { 0x08A1, 0x08A1 },
-    { 0x08AD, 0x08E3 },
-    { 0x08FF, 0x08FF },
-    { 0x0978, 0x0978 },
-    { 0x0980, 0x0980 },
+    { 0x08B3, 0x08E3 },
     { 0x0984, 0x0984 },
     { 0x098D, 0x098E },
     { 0x0991, 0x0992 },
@@ -118,12 +113,11 @@
     { 0x0BCE, 0x0BCF },
     { 0x0BD1, 0x0BD6 },
     { 0x0BD8, 0x0BE5 },
-    { 0x0BFB, 0x0C00 },
+    { 0x0BFB, 0x0BFF },
     { 0x0C04, 0x0C04 },
     { 0x0C0D, 0x0C0D },
     { 0x0C11, 0x0C11 },
     { 0x0C29, 0x0C29 },
-    { 0x0C34, 0x0C34 },
     { 0x0C3A, 0x0C3C },
     { 0x0C45, 0x0C45 },
     { 0x0C49, 0x0C49 },
@@ -132,7 +126,7 @@
     { 0x0C5A, 0x0C5F },
     { 0x0C64, 0x0C65 },
     { 0x0C70, 0x0C77 },
-    { 0x0C80, 0x0C81 },
+    { 0x0C80, 0x0C80 },
     { 0x0C84, 0x0C84 },
     { 0x0C8D, 0x0C8D },
     { 0x0C91, 0x0C91 },
@@ -146,7 +140,7 @@
     { 0x0CDF, 0x0CDF },
     { 0x0CE4, 0x0CE5 },
     { 0x0CF0, 0x0CF0 },
-    { 0x0CF3, 0x0D01 },
+    { 0x0CF3, 0x0D00 },
     { 0x0D04, 0x0D04 },
     { 0x0D0D, 0x0D0D },
     { 0x0D11, 0x0D11 },
@@ -167,7 +161,8 @@
     { 0x0DCB, 0x0DCE },
     { 0x0DD5, 0x0DD5 },
     { 0x0DD7, 0x0DD7 },
-    { 0x0DE0, 0x0DF1 },
+    { 0x0DE0, 0x0DE5 },
+    { 0x0DF0, 0x0DF1 },
     { 0x0DF5, 0x0E00 },
     { 0x0E3B, 0x0E3E },
     { 0x0E5C, 0x0E80 },
@@ -218,7 +213,7 @@
     { 0x139A, 0x139F },
     { 0x13F5, 0x13FF },
     { 0x169D, 0x169F },
-    { 0x16F1, 0x16FF },
+    { 0x16F9, 0x16FF },
     { 0x170D, 0x170D },
     { 0x1715, 0x171F },
     { 0x1737, 0x173F },
@@ -234,7 +229,7 @@
     { 0x1878, 0x187F },
     { 0x18AB, 0x18AF },
     { 0x18F6, 0x18FF },
-    { 0x191D, 0x191F },
+    { 0x191F, 0x191F },
     { 0x192C, 0x192F },
     { 0x193C, 0x193F },
     { 0x1941, 0x1943 },
@@ -248,7 +243,8 @@
     { 0x1A7D, 0x1A7E },
     { 0x1A8A, 0x1A8F },
     { 0x1A9A, 0x1A9F },
-    { 0x1AAE, 0x1AFF },
+    { 0x1AAE, 0x1AAF },
+    { 0x1ABF, 0x1AFF },
     { 0x1B4C, 0x1B4F },
     { 0x1B7D, 0x1B7F },
     { 0x1BF4, 0x1BFB },
@@ -256,8 +252,9 @@
     { 0x1C4A, 0x1C4C },
     { 0x1C80, 0x1CBF },
     { 0x1CC8, 0x1CCF },
-    { 0x1CF7, 0x1CFF },
-    { 0x1DE7, 0x1DFB },
+    { 0x1CF7, 0x1CF7 },
+    { 0x1CFA, 0x1CFF },
+    { 0x1DF6, 0x1DFB },
     { 0x1F16, 0x1F17 },
     { 0x1F1E, 0x1F1F },
     { 0x1F46, 0x1F47 },
@@ -278,15 +275,17 @@
     { 0x2072, 0x2073 },
     { 0x208F, 0x208F },
     { 0x209D, 0x209F },
-    { 0x20BB, 0x20CF },
+    { 0x20BE, 0x20CF },
     { 0x20F1, 0x20FF },
     { 0x218A, 0x218F },
-    { 0x23F4, 0x23FF },
+    { 0x23FB, 0x23FF },
     { 0x2427, 0x243F },
     { 0x244B, 0x245F },
-    { 0x2700, 0x2700 },
-    { 0x2B4D, 0x2B4F },
-    { 0x2B5A, 0x2BFF },
+    { 0x2B74, 0x2B75 },
+    { 0x2B96, 0x2B97 },
+    { 0x2BBA, 0x2BBC },
+    { 0x2BC9, 0x2BC9 },
+    { 0x2BD2, 0x2BFF },
     { 0x2C2F, 0x2C2F },
     { 0x2C5F, 0x2C5F },
     { 0x2CF4, 0x2CF8 },
@@ -304,7 +303,7 @@
     { 0x2DCF, 0x2DCF },
     { 0x2DD7, 0x2DD7 },
     { 0x2DDF, 0x2DDF },
-    { 0x2E3C, 0x2E7F },
+    { 0x2E43, 0x2E7F },
     { 0x2E9A, 0x2E9A },
     { 0x2EF4, 0x2EFF },
     { 0x2FD6, 0x2FEF },
@@ -323,11 +322,11 @@
     { 0xA48D, 0xA48F },
     { 0xA4C7, 0xA4CF },
     { 0xA62C, 0xA63F },
-    { 0xA698, 0xA69E },
+    { 0xA69E, 0xA69E },
     { 0xA6F8, 0xA6FF },
     { 0xA78F, 0xA78F },
-    { 0xA794, 0xA79F },
-    { 0xA7AB, 0xA7F7 },
+    { 0xA7AE, 0xA7AF },
+    { 0xA7B2, 0xA7F6 },
     { 0xA82C, 0xA82F },
     { 0xA83A, 0xA83F },
     { 0xA878, 0xA87F },
@@ -338,18 +337,19 @@
     { 0xA97D, 0xA97F },
     { 0xA9CE, 0xA9CE },
     { 0xA9DA, 0xA9DD },
-    { 0xA9E0, 0xA9FF },
+    { 0xA9FF, 0xA9FF },
     { 0xAA37, 0xAA3F },
     { 0xAA4E, 0xAA4F },
     { 0xAA5A, 0xAA5B },
-    { 0xAA7C, 0xAA7F },
     { 0xAAC3, 0xAADA },
     { 0xAAF7, 0xAB00 },
     { 0xAB07, 0xAB08 },
     { 0xAB0F, 0xAB10 },
     { 0xAB17, 0xAB1F },
     { 0xAB27, 0xAB27 },
-    { 0xAB2F, 0xABBF },
+    { 0xAB2F, 0xAB2F },
+    { 0xAB60, 0xAB63 },
+    { 0xAB66, 0xABBF },
     { 0xABEE, 0xABEF },
     { 0xABFA, 0xABFF },
     { 0xD7A4, 0xD7AF },
@@ -370,7 +370,7 @@
     { 0xFDC8, 0xFDCF },
     { 0xFDFE, 0xFDFF },
     { 0xFE1A, 0xFE1F },
-    { 0xFE27, 0xFE2F },
+    { 0xFE2E, 0xFE2F },
     { 0xFE53, 0xFE53 },
     { 0xFE67, 0xFE67 },
     { 0xFE6C, 0xFE6F },
@@ -393,26 +393,35 @@
     { 0x100FB, 0x100FF },
     { 0x10103, 0x10106 },
     { 0x10134, 0x10136 },
-    { 0x1018B, 0x1018F },
-    { 0x1019C, 0x101CF },
+    { 0x1018D, 0x1018F },
+    { 0x1019C, 0x1019F },
+    { 0x101A1, 0x101CF },
     { 0x101FE, 0x1027F },
     { 0x1029D, 0x1029F },
-    { 0x102D1, 0x102FF },
-    { 0x1031F, 0x1031F },
+    { 0x102D1, 0x102DF },
+    { 0x102FC, 0x102FF },
     { 0x10324, 0x1032F },
-    { 0x1034B, 0x1037F },
+    { 0x1034B, 0x1034F },
+    { 0x1037B, 0x1037F },
     { 0x1039E, 0x1039E },
     { 0x103C4, 0x103C7 },
     { 0x103D6, 0x103FF },
     { 0x1049E, 0x1049F },
-    { 0x104AA, 0x107FF },
+    { 0x104AA, 0x104FF },
+    { 0x10528, 0x1052F },
+    { 0x10564, 0x1056E },
+    { 0x10570, 0x105FF },
+    { 0x10737, 0x1073F },
+    { 0x10756, 0x1075F },
+    { 0x10768, 0x107FF },
     { 0x10806, 0x10807 },
     { 0x10809, 0x10809 },
     { 0x10836, 0x10836 },
     { 0x10839, 0x1083B },
     { 0x1083D, 0x1083E },
     { 0x10856, 0x10856 },
-    { 0x10860, 0x108FF },
+    { 0x1089F, 0x108A6 },
+    { 0x108B0, 0x108FF },
     { 0x1091C, 0x1091E },
     { 0x1093A, 0x1093E },
     { 0x10940, 0x1097F },
@@ -426,33 +435,82 @@
     { 0x10A3B, 0x10A3E },
     { 0x10A48, 0x10A4F },
     { 0x10A59, 0x10A5F },
-    { 0x10A80, 0x10AFF },
+    { 0x10AA0, 0x10ABF },
+    { 0x10AE7, 0x10AEA },
+    { 0x10AF7, 0x10AFF },
     { 0x10B36, 0x10B38 },
     { 0x10B56, 0x10B57 },
     { 0x10B73, 0x10B77 },
-    { 0x10B80, 0x10BFF },
+    { 0x10B92, 0x10B98 },
+    { 0x10B9D, 0x10BA8 },
+    { 0x10BB0, 0x10BFF },
     { 0x10C49, 0x10E5F },
     { 0x10E7F, 0x10FFF },
     { 0x1104E, 0x11051 },
-    { 0x11070, 0x1107F },
+    { 0x11070, 0x1107E },
     { 0x110C2, 0x110CF },
     { 0x110E9, 0x110EF },
     { 0x110FA, 0x110FF },
     { 0x11135, 0x11135 },
-    { 0x11144, 0x1117F },
-    { 0x111C9, 0x111CF },
-    { 0x111DA, 0x1167F },
+    { 0x11144, 0x1114F },
+    { 0x11177, 0x1117F },
+    { 0x111C9, 0x111CC },
+    { 0x111CE, 0x111CF },
+    { 0x111DB, 0x111E0 },
+    { 0x111F5, 0x111FF },
+    { 0x11212, 0x11212 },
+    { 0x1123E, 0x112AF },
+    { 0x112EB, 0x112EF },
+    { 0x112FA, 0x11300 },
+    { 0x11304, 0x11304 },
+    { 0x1130D, 0x1130E },
+    { 0x11311, 0x11312 },
+    { 0x11329, 0x11329 },
+    { 0x11331, 0x11331 },
+    { 0x11334, 0x11334 },
+    { 0x1133A, 0x1133B },
+    { 0x11345, 0x11346 },
+    { 0x11349, 0x1134A },
+    { 0x1134E, 0x11356 },
+    { 0x11358, 0x1135C },
+    { 0x11364, 0x11365 },
+    { 0x1136D, 0x1136F },
+    { 0x11375, 0x1147F },
+    { 0x114C8, 0x114CF },
+    { 0x114DA, 0x1157F },
+    { 0x115B6, 0x115B7 },
+    { 0x115CA, 0x115FF },
+    { 0x11645, 0x1164F },
+    { 0x1165A, 0x1167F },
     { 0x116B8, 0x116BF },
-    { 0x116CA, 0x11FFF },
-    { 0x1236F, 0x123FF },
-    { 0x12463, 0x1246F },
-    { 0x12474, 0x12FFF },
+    { 0x116CA, 0x1189F },
+    { 0x118F3, 0x118FE },
+    { 0x11900, 0x11ABF },
+    { 0x11AF9, 0x11FFF },
+    { 0x12399, 0x123FF },
+    { 0x1246F, 0x1246F },
+    { 0x12475, 0x12FFF },
     { 0x1342F, 0x167FF },
-    { 0x16A39, 0x16EFF },
+    { 0x16A39, 0x16A3F },
+    { 0x16A5F, 0x16A5F },
+    { 0x16A6A, 0x16A6D },
+    { 0x16A70, 0x16ACF },
+    { 0x16AEE, 0x16AEF },
+    { 0x16AF6, 0x16AFF },
+    { 0x16B46, 0x16B4F },
+    { 0x16B5A, 0x16B5A },
+    { 0x16B62, 0x16B62 },
+    { 0x16B78, 0x16B7C },
+    { 0x16B90, 0x16EFF },
     { 0x16F45, 0x16F4F },
     { 0x16F7F, 0x16F8E },
     { 0x16FA0, 0x1AFFF },
-    { 0x1B002, 0x1CFFF },
+    { 0x1B002, 0x1BBFF },
+    { 0x1BC6B, 0x1BC6F },
+    { 0x1BC7D, 0x1BC7F },
+    { 0x1BC89, 0x1BC8F },
+    { 0x1BC9A, 0x1BC9B },
+    { 0x1BCA4, 0x1CFFF },
     { 0x1D0F6, 0x1D0FF },
     { 0x1D127, 0x1D128 },
     { 0x1D1DE, 0x1D1FF },
@@ -479,7 +537,9 @@
     { 0x1D551, 0x1D551 },
     { 0x1D6A6, 0x1D6A7 },
     { 0x1D7CC, 0x1D7CD },
-    { 0x1D800, 0x1EDFF },
+    { 0x1D800, 0x1E7FF },
+    { 0x1E8C5, 0x1E8C6 },
+    { 0x1E8D7, 0x1EDFF },
     { 0x1EE04, 0x1EE04 },
     { 0x1EE20, 0x1EE20 },
     { 0x1EE23, 0x1EE23 },
@@ -517,10 +577,10 @@
     { 0x1F02C, 0x1F02F },
     { 0x1F094, 0x1F09F },
     { 0x1F0AF, 0x1F0B0 },
-    { 0x1F0BF, 0x1F0C0 },
+    { 0x1F0C0, 0x1F0C0 },
     { 0x1F0D0, 0x1F0D0 },
-    { 0x1F0E0, 0x1F0FF },
-    { 0x1F10B, 0x1F10F },
+    { 0x1F0F6, 0x1F0FF },
+    { 0x1F10D, 0x1F10F },
     { 0x1F12F, 0x1F12F },
     { 0x1F16C, 0x1F16F },
     { 0x1F19B, 0x1F1E5 },
@@ -528,24 +588,25 @@
     { 0x1F23B, 0x1F23F },
     { 0x1F249, 0x1F24F },
     { 0x1F252, 0x1F2FF },
-    { 0x1F321, 0x1F32F },
-    { 0x1F336, 0x1F336 },
-    { 0x1F37D, 0x1F37F },
-    { 0x1F394, 0x1F39F },
-    { 0x1F3C5, 0x1F3C5 },
-    { 0x1F3CB, 0x1F3DF },
-    { 0x1F3F1, 0x1F3FF },
-    { 0x1F43F, 0x1F43F },
-    { 0x1F441, 0x1F441 },
-    { 0x1F4F8, 0x1F4F8 },
-    { 0x1F4FD, 0x1F4FF },
-    { 0x1F53E, 0x1F53F },
-    { 0x1F544, 0x1F54F },
-    { 0x1F568, 0x1F5FA },
-    { 0x1F641, 0x1F644 },
-    { 0x1F650, 0x1F67F },
-    { 0x1F6C6, 0x1F6FF },
-    { 0x1F774, 0x1FFFD },
+    { 0x1F32D, 0x1F32F },
+    { 0x1F37E, 0x1F37F },
+    { 0x1F3CF, 0x1F3D3 },
+    { 0x1F3F8, 0x1F3FF },
+    { 0x1F4FF, 0x1F4FF },
+    { 0x1F54B, 0x1F54F },
+    { 0x1F57A, 0x1F57A },
+    { 0x1F5A4, 0x1F5A4 },
+    { 0x1F643, 0x1F644 },
+    { 0x1F6D0, 0x1F6DF },
+    { 0x1F6ED, 0x1F6EF },
+    { 0x1F6F4, 0x1F6FF },
+    { 0x1F774, 0x1F77F },
+    { 0x1F7D5, 0x1F7FF },
+    { 0x1F80C, 0x1F80F },
+    { 0x1F848, 0x1F84F },
+    { 0x1F85A, 0x1F85F },
+    { 0x1F888, 0x1F88F },
+    { 0x1F8AE, 0x1FFFD },
     { 0x2A6D7, 0x2A6FF },
     { 0x2B735, 0x2B73F },
     { 0x2B81E, 0x2F7FF },
--- a/tests/unictype/test-pr_uppercase.c
+++ b/tests/unictype/test-pr_uppercase.c
@@ -164,6 +164,7 @@
     { 0x0370, 0x0370 },
     { 0x0372, 0x0372 },
     { 0x0376, 0x0376 },
+    { 0x037F, 0x037F },
     { 0x0386, 0x0386 },
     { 0x0388, 0x038A },
     { 0x038C, 0x038C },
@@ -283,6 +284,10 @@
     { 0x0522, 0x0522 },
     { 0x0524, 0x0524 },
     { 0x0526, 0x0526 },
+    { 0x0528, 0x0528 },
+    { 0x052A, 0x052A },
+    { 0x052C, 0x052C },
+    { 0x052E, 0x052E },
     { 0x0531, 0x0556 },
     { 0x10A0, 0x10C5 },
     { 0x10C7, 0x10C7 },
@@ -539,6 +544,8 @@
     { 0xA692, 0xA692 },
     { 0xA694, 0xA694 },
     { 0xA696, 0xA696 },
+    { 0xA698, 0xA698 },
+    { 0xA69A, 0xA69A },
     { 0xA722, 0xA722 },
     { 0xA724, 0xA724 },
     { 0xA726, 0xA726 },
@@ -588,14 +595,21 @@
     { 0xA78D, 0xA78D },
     { 0xA790, 0xA790 },
     { 0xA792, 0xA792 },
+    { 0xA796, 0xA796 },
+    { 0xA798, 0xA798 },
+    { 0xA79A, 0xA79A },
+    { 0xA79C, 0xA79C },
+    { 0xA79E, 0xA79E },
     { 0xA7A0, 0xA7A0 },
     { 0xA7A2, 0xA7A2 },
     { 0xA7A4, 0xA7A4 },
     { 0xA7A6, 0xA7A6 },
     { 0xA7A8, 0xA7A8 },
-    { 0xA7AA, 0xA7AA },
+    { 0xA7AA, 0xA7AD },
+    { 0xA7B0, 0xA7B1 },
     { 0xFF21, 0xFF3A },
     { 0x10400, 0x10427 },
+    { 0x118A0, 0x118BF },
     { 0x1D400, 0x1D419 },
     { 0x1D434, 0x1D44D },
     { 0x1D468, 0x1D481 },
@@ -626,7 +640,10 @@
     { 0x1D71C, 0x1D734 },
     { 0x1D756, 0x1D76E },
     { 0x1D790, 0x1D7A8 },
-    { 0x1D7CA, 0x1D7CA }
+    { 0x1D7CA, 0x1D7CA },
+    { 0x1F130, 0x1F149 },
+    { 0x1F150, 0x1F169 },
+    { 0x1F170, 0x1F189 }
 
 #define PREDICATE(c) uc_is_property_uppercase (c)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-pr_xid_continue.c
+++ b/tests/unictype/test-pr_xid_continue.c
@@ -35,13 +35,14 @@
     { 0x0300, 0x0374 },
     { 0x0376, 0x0377 },
     { 0x037B, 0x037D },
+    { 0x037F, 0x037F },
     { 0x0386, 0x038A },
     { 0x038C, 0x038C },
     { 0x038E, 0x03A1 },
     { 0x03A3, 0x03F5 },
     { 0x03F7, 0x0481 },
     { 0x0483, 0x0487 },
-    { 0x048A, 0x0527 },
+    { 0x048A, 0x052F },
     { 0x0531, 0x0556 },
     { 0x0559, 0x0559 },
     { 0x0561, 0x0587 },
@@ -65,14 +66,10 @@
     { 0x07FA, 0x07FA },
     { 0x0800, 0x082D },
     { 0x0840, 0x085B },
-    { 0x08A0, 0x08A0 },
-    { 0x08A2, 0x08AC },
-    { 0x08E4, 0x08FE },
-    { 0x0900, 0x0963 },
+    { 0x08A0, 0x08B2 },
+    { 0x08E4, 0x0963 },
     { 0x0966, 0x096F },
-    { 0x0971, 0x0977 },
-    { 0x0979, 0x097F },
-    { 0x0981, 0x0983 },
+    { 0x0971, 0x0983 },
     { 0x0985, 0x098C },
     { 0x098F, 0x0990 },
     { 0x0993, 0x09A8 },
@@ -146,12 +143,11 @@
     { 0x0BD0, 0x0BD0 },
     { 0x0BD7, 0x0BD7 },
     { 0x0BE6, 0x0BEF },
-    { 0x0C01, 0x0C03 },
+    { 0x0C00, 0x0C03 },
     { 0x0C05, 0x0C0C },
     { 0x0C0E, 0x0C10 },
     { 0x0C12, 0x0C28 },
-    { 0x0C2A, 0x0C33 },
-    { 0x0C35, 0x0C39 },
+    { 0x0C2A, 0x0C39 },
     { 0x0C3D, 0x0C44 },
     { 0x0C46, 0x0C48 },
     { 0x0C4A, 0x0C4D },
@@ -159,7 +155,7 @@
     { 0x0C58, 0x0C59 },
     { 0x0C60, 0x0C63 },
     { 0x0C66, 0x0C6F },
-    { 0x0C82, 0x0C83 },
+    { 0x0C81, 0x0C83 },
     { 0x0C85, 0x0C8C },
     { 0x0C8E, 0x0C90 },
     { 0x0C92, 0x0CA8 },
@@ -173,7 +169,7 @@
     { 0x0CE0, 0x0CE3 },
     { 0x0CE6, 0x0CEF },
     { 0x0CF1, 0x0CF2 },
-    { 0x0D02, 0x0D03 },
+    { 0x0D01, 0x0D03 },
     { 0x0D05, 0x0D0C },
     { 0x0D0E, 0x0D10 },
     { 0x0D12, 0x0D3A },
@@ -194,6 +190,7 @@
     { 0x0DCF, 0x0DD4 },
     { 0x0DD6, 0x0DD6 },
     { 0x0DD8, 0x0DDF },
+    { 0x0DE6, 0x0DEF },
     { 0x0DF2, 0x0DF3 },
     { 0x0E01, 0x0E3A },
     { 0x0E40, 0x0E4E },
@@ -258,7 +255,7 @@
     { 0x166F, 0x167F },
     { 0x1681, 0x169A },
     { 0x16A0, 0x16EA },
-    { 0x16EE, 0x16F0 },
+    { 0x16EE, 0x16F8 },
     { 0x1700, 0x170C },
     { 0x170E, 0x1714 },
     { 0x1720, 0x1734 },
@@ -275,7 +272,7 @@
     { 0x1820, 0x1877 },
     { 0x1880, 0x18AA },
     { 0x18B0, 0x18F5 },
-    { 0x1900, 0x191C },
+    { 0x1900, 0x191E },
     { 0x1920, 0x192B },
     { 0x1930, 0x193B },
     { 0x1946, 0x196D },
@@ -289,6 +286,7 @@
     { 0x1A7F, 0x1A89 },
     { 0x1A90, 0x1A99 },
     { 0x1AA7, 0x1AA7 },
+    { 0x1AB0, 0x1ABD },
     { 0x1B00, 0x1B4B },
     { 0x1B50, 0x1B59 },
     { 0x1B6B, 0x1B73 },
@@ -298,7 +296,8 @@
     { 0x1C4D, 0x1C7D },
     { 0x1CD0, 0x1CD2 },
     { 0x1CD4, 0x1CF6 },
-    { 0x1D00, 0x1DE6 },
+    { 0x1CF8, 0x1CF9 },
+    { 0x1D00, 0x1DF5 },
     { 0x1DFC, 0x1F15 },
     { 0x1F18, 0x1F1D },
     { 0x1F20, 0x1F45 },
@@ -379,14 +378,14 @@
     { 0xA610, 0xA62B },
     { 0xA640, 0xA66F },
     { 0xA674, 0xA67D },
-    { 0xA67F, 0xA697 },
+    { 0xA67F, 0xA69D },
     { 0xA69F, 0xA6F1 },
     { 0xA717, 0xA71F },
     { 0xA722, 0xA788 },
     { 0xA78B, 0xA78E },
-    { 0xA790, 0xA793 },
-    { 0xA7A0, 0xA7AA },
-    { 0xA7F8, 0xA827 },
+    { 0xA790, 0xA7AD },
+    { 0xA7B0, 0xA7B1 },
+    { 0xA7F7, 0xA827 },
     { 0xA840, 0xA873 },
     { 0xA880, 0xA8C4 },
     { 0xA8D0, 0xA8D9 },
@@ -397,12 +396,12 @@
     { 0xA960, 0xA97C },
     { 0xA980, 0xA9C0 },
     { 0xA9CF, 0xA9D9 },
+    { 0xA9E0, 0xA9FE },
     { 0xAA00, 0xAA36 },
     { 0xAA40, 0xAA4D },
     { 0xAA50, 0xAA59 },
     { 0xAA60, 0xAA76 },
-    { 0xAA7A, 0xAA7B },
-    { 0xAA80, 0xAAC2 },
+    { 0xAA7A, 0xAAC2 },
     { 0xAADB, 0xAADD },
     { 0xAAE0, 0xAAEF },
     { 0xAAF2, 0xAAF6 },
@@ -411,6 +410,9 @@
     { 0xAB11, 0xAB16 },
     { 0xAB20, 0xAB26 },
     { 0xAB28, 0xAB2E },
+    { 0xAB30, 0xAB5A },
+    { 0xAB5C, 0xAB5F },
+    { 0xAB64, 0xAB65 },
     { 0xABC0, 0xABEA },
     { 0xABEC, 0xABED },
     { 0xABF0, 0xABF9 },
@@ -434,7 +436,7 @@
     { 0xFD92, 0xFDC7 },
     { 0xFDF0, 0xFDF9 },
     { 0xFE00, 0xFE0F },
-    { 0xFE20, 0xFE26 },
+    { 0xFE20, 0xFE2D },
     { 0xFE33, 0xFE34 },
     { 0xFE4D, 0xFE4F },
     { 0xFE71, 0xFE71 },
@@ -464,20 +466,29 @@
     { 0x101FD, 0x101FD },
     { 0x10280, 0x1029C },
     { 0x102A0, 0x102D0 },
-    { 0x10300, 0x1031E },
+    { 0x102E0, 0x102E0 },
+    { 0x10300, 0x1031F },
     { 0x10330, 0x1034A },
+    { 0x10350, 0x1037A },
     { 0x10380, 0x1039D },
     { 0x103A0, 0x103C3 },
     { 0x103C8, 0x103CF },
     { 0x103D1, 0x103D5 },
     { 0x10400, 0x1049D },
     { 0x104A0, 0x104A9 },
+    { 0x10500, 0x10527 },
+    { 0x10530, 0x10563 },
+    { 0x10600, 0x10736 },
+    { 0x10740, 0x10755 },
+    { 0x10760, 0x10767 },
     { 0x10800, 0x10805 },
     { 0x10808, 0x10808 },
     { 0x1080A, 0x10835 },
     { 0x10837, 0x10838 },
     { 0x1083C, 0x1083C },
     { 0x1083F, 0x10855 },
+    { 0x10860, 0x10876 },
+    { 0x10880, 0x1089E },
     { 0x10900, 0x10915 },
     { 0x10920, 0x10939 },
     { 0x10980, 0x109B7 },
@@ -490,29 +501,78 @@
     { 0x10A38, 0x10A3A },
     { 0x10A3F, 0x10A3F },
     { 0x10A60, 0x10A7C },
+    { 0x10A80, 0x10A9C },
+    { 0x10AC0, 0x10AC7 },
+    { 0x10AC9, 0x10AE6 },
     { 0x10B00, 0x10B35 },
     { 0x10B40, 0x10B55 },
     { 0x10B60, 0x10B72 },
+    { 0x10B80, 0x10B91 },
     { 0x10C00, 0x10C48 },
     { 0x11000, 0x11046 },
     { 0x11066, 0x1106F },
-    { 0x11080, 0x110BA },
+    { 0x1107F, 0x110BA },
     { 0x110D0, 0x110E8 },
     { 0x110F0, 0x110F9 },
     { 0x11100, 0x11134 },
     { 0x11136, 0x1113F },
+    { 0x11150, 0x11173 },
+    { 0x11176, 0x11176 },
     { 0x11180, 0x111C4 },
-    { 0x111D0, 0x111D9 },
+    { 0x111D0, 0x111DA },
+    { 0x11200, 0x11211 },
+    { 0x11213, 0x11237 },
+    { 0x112B0, 0x112EA },
+    { 0x112F0, 0x112F9 },
+    { 0x11301, 0x11303 },
+    { 0x11305, 0x1130C },
+    { 0x1130F, 0x11310 },
+    { 0x11313, 0x11328 },
+    { 0x1132A, 0x11330 },
+    { 0x11332, 0x11333 },
+    { 0x11335, 0x11339 },
+    { 0x1133C, 0x11344 },
+    { 0x11347, 0x11348 },
+    { 0x1134B, 0x1134D },
+    { 0x11357, 0x11357 },
+    { 0x1135D, 0x11363 },
+    { 0x11366, 0x1136C },
+    { 0x11370, 0x11374 },
+    { 0x11480, 0x114C5 },
+    { 0x114C7, 0x114C7 },
+    { 0x114D0, 0x114D9 },
+    { 0x11580, 0x115B5 },
+    { 0x115B8, 0x115C0 },
+    { 0x11600, 0x11640 },
+    { 0x11644, 0x11644 },
+    { 0x11650, 0x11659 },
     { 0x11680, 0x116B7 },
     { 0x116C0, 0x116C9 },
-    { 0x12000, 0x1236E },
-    { 0x12400, 0x12462 },
+    { 0x118A0, 0x118E9 },
+    { 0x118FF, 0x118FF },
+    { 0x11AC0, 0x11AF8 },
+    { 0x12000, 0x12398 },
+    { 0x12400, 0x1246E },
     { 0x13000, 0x1342E },
     { 0x16800, 0x16A38 },
+    { 0x16A40, 0x16A5E },
+    { 0x16A60, 0x16A69 },
+    { 0x16AD0, 0x16AED },
+    { 0x16AF0, 0x16AF4 },
+    { 0x16B00, 0x16B36 },
+    { 0x16B40, 0x16B43 },
+    { 0x16B50, 0x16B59 },
+    { 0x16B63, 0x16B77 },
+    { 0x16B7D, 0x16B8F },
     { 0x16F00, 0x16F44 },
     { 0x16F50, 0x16F7E },
     { 0x16F8F, 0x16F9F },
     { 0x1B000, 0x1B001 },
+    { 0x1BC00, 0x1BC6A },
+    { 0x1BC70, 0x1BC7C },
+    { 0x1BC80, 0x1BC88 },
+    { 0x1BC90, 0x1BC99 },
+    { 0x1BC9D, 0x1BC9E },
     { 0x1D165, 0x1D169 },
     { 0x1D16D, 0x1D172 },
     { 0x1D17B, 0x1D182 },
@@ -550,6 +610,8 @@
     { 0x1D7AA, 0x1D7C2 },
     { 0x1D7C4, 0x1D7CB },
     { 0x1D7CE, 0x1D7FF },
+    { 0x1E800, 0x1E8C4 },
+    { 0x1E8D0, 0x1E8D6 },
     { 0x1EE00, 0x1EE03 },
     { 0x1EE05, 0x1EE1F },
     { 0x1EE21, 0x1EE22 },
--- a/tests/unictype/test-pr_xid_start.c
+++ b/tests/unictype/test-pr_xid_start.c
@@ -32,13 +32,14 @@
     { 0x0370, 0x0374 },
     { 0x0376, 0x0377 },
     { 0x037B, 0x037D },
+    { 0x037F, 0x037F },
     { 0x0386, 0x0386 },
     { 0x0388, 0x038A },
     { 0x038C, 0x038C },
     { 0x038E, 0x03A1 },
     { 0x03A3, 0x03F5 },
     { 0x03F7, 0x0481 },
-    { 0x048A, 0x0527 },
+    { 0x048A, 0x052F },
     { 0x0531, 0x0556 },
     { 0x0559, 0x0559 },
     { 0x0561, 0x0587 },
@@ -64,14 +65,12 @@
     { 0x0824, 0x0824 },
     { 0x0828, 0x0828 },
     { 0x0840, 0x0858 },
-    { 0x08A0, 0x08A0 },
-    { 0x08A2, 0x08AC },
+    { 0x08A0, 0x08B2 },
     { 0x0904, 0x0939 },
     { 0x093D, 0x093D },
     { 0x0950, 0x0950 },
     { 0x0958, 0x0961 },
-    { 0x0971, 0x0977 },
-    { 0x0979, 0x097F },
+    { 0x0971, 0x0980 },
     { 0x0985, 0x098C },
     { 0x098F, 0x0990 },
     { 0x0993, 0x09A8 },
@@ -126,8 +125,7 @@
     { 0x0C05, 0x0C0C },
     { 0x0C0E, 0x0C10 },
     { 0x0C12, 0x0C28 },
-    { 0x0C2A, 0x0C33 },
-    { 0x0C35, 0x0C39 },
+    { 0x0C2A, 0x0C39 },
     { 0x0C3D, 0x0C3D },
     { 0x0C58, 0x0C59 },
     { 0x0C60, 0x0C61 },
@@ -211,7 +209,7 @@
     { 0x166F, 0x167F },
     { 0x1681, 0x169A },
     { 0x16A0, 0x16EA },
-    { 0x16EE, 0x16F0 },
+    { 0x16EE, 0x16F8 },
     { 0x1700, 0x170C },
     { 0x170E, 0x1711 },
     { 0x1720, 0x1731 },
@@ -225,7 +223,7 @@
     { 0x1880, 0x18A8 },
     { 0x18AA, 0x18AA },
     { 0x18B0, 0x18F5 },
-    { 0x1900, 0x191C },
+    { 0x1900, 0x191E },
     { 0x1950, 0x196D },
     { 0x1970, 0x1974 },
     { 0x1980, 0x19AB },
@@ -319,14 +317,14 @@
     { 0xA610, 0xA61F },
     { 0xA62A, 0xA62B },
     { 0xA640, 0xA66E },
-    { 0xA67F, 0xA697 },
+    { 0xA67F, 0xA69D },
     { 0xA6A0, 0xA6EF },
     { 0xA717, 0xA71F },
     { 0xA722, 0xA788 },
     { 0xA78B, 0xA78E },
-    { 0xA790, 0xA793 },
-    { 0xA7A0, 0xA7AA },
-    { 0xA7F8, 0xA801 },
+    { 0xA790, 0xA7AD },
+    { 0xA7B0, 0xA7B1 },
+    { 0xA7F7, 0xA801 },
     { 0xA803, 0xA805 },
     { 0xA807, 0xA80A },
     { 0xA80C, 0xA822 },
@@ -339,12 +337,15 @@
     { 0xA960, 0xA97C },
     { 0xA984, 0xA9B2 },
     { 0xA9CF, 0xA9CF },
+    { 0xA9E0, 0xA9E4 },
+    { 0xA9E6, 0xA9EF },
+    { 0xA9FA, 0xA9FE },
     { 0xAA00, 0xAA28 },
     { 0xAA40, 0xAA42 },
     { 0xAA44, 0xAA4B },
     { 0xAA60, 0xAA76 },
     { 0xAA7A, 0xAA7A },
-    { 0xAA80, 0xAAAF },
+    { 0xAA7E, 0xAAAF },
     { 0xAAB1, 0xAAB1 },
     { 0xAAB5, 0xAAB6 },
     { 0xAAB9, 0xAABD },
@@ -358,6 +359,9 @@
     { 0xAB11, 0xAB16 },
     { 0xAB20, 0xAB26 },
     { 0xAB28, 0xAB2E },
+    { 0xAB30, 0xAB5A },
+    { 0xAB5C, 0xAB5F },
+    { 0xAB64, 0xAB65 },
     { 0xABC0, 0xABE2 },
     { 0xAC00, 0xD7A3 },
     { 0xD7B0, 0xD7C6 },
@@ -404,19 +408,27 @@
     { 0x10140, 0x10174 },
     { 0x10280, 0x1029C },
     { 0x102A0, 0x102D0 },
-    { 0x10300, 0x1031E },
+    { 0x10300, 0x1031F },
     { 0x10330, 0x1034A },
+    { 0x10350, 0x10375 },
     { 0x10380, 0x1039D },
     { 0x103A0, 0x103C3 },
     { 0x103C8, 0x103CF },
     { 0x103D1, 0x103D5 },
     { 0x10400, 0x1049D },
+    { 0x10500, 0x10527 },
+    { 0x10530, 0x10563 },
+    { 0x10600, 0x10736 },
+    { 0x10740, 0x10755 },
+    { 0x10760, 0x10767 },
     { 0x10800, 0x10805 },
     { 0x10808, 0x10808 },
     { 0x1080A, 0x10835 },
     { 0x10837, 0x10838 },
     { 0x1083C, 0x1083C },
     { 0x1083F, 0x10855 },
+    { 0x10860, 0x10876 },
+    { 0x10880, 0x1089E },
     { 0x10900, 0x10915 },
     { 0x10920, 0x10939 },
     { 0x10980, 0x109B7 },
@@ -426,25 +438,62 @@
     { 0x10A15, 0x10A17 },
     { 0x10A19, 0x10A33 },
     { 0x10A60, 0x10A7C },
+    { 0x10A80, 0x10A9C },
+    { 0x10AC0, 0x10AC7 },
+    { 0x10AC9, 0x10AE4 },
     { 0x10B00, 0x10B35 },
     { 0x10B40, 0x10B55 },
     { 0x10B60, 0x10B72 },
+    { 0x10B80, 0x10B91 },
     { 0x10C00, 0x10C48 },
     { 0x11003, 0x11037 },
     { 0x11083, 0x110AF },
     { 0x110D0, 0x110E8 },
     { 0x11103, 0x11126 },
+    { 0x11150, 0x11172 },
+    { 0x11176, 0x11176 },
     { 0x11183, 0x111B2 },
     { 0x111C1, 0x111C4 },
+    { 0x111DA, 0x111DA },
+    { 0x11200, 0x11211 },
+    { 0x11213, 0x1122B },
+    { 0x112B0, 0x112DE },
+    { 0x11305, 0x1130C },
+    { 0x1130F, 0x11310 },
+    { 0x11313, 0x11328 },
+    { 0x1132A, 0x11330 },
+    { 0x11332, 0x11333 },
+    { 0x11335, 0x11339 },
+    { 0x1133D, 0x1133D },
+    { 0x1135D, 0x11361 },
+    { 0x11480, 0x114AF },
+    { 0x114C4, 0x114C5 },
+    { 0x114C7, 0x114C7 },
+    { 0x11580, 0x115AE },
+    { 0x11600, 0x1162F },
+    { 0x11644, 0x11644 },
     { 0x11680, 0x116AA },
-    { 0x12000, 0x1236E },
-    { 0x12400, 0x12462 },
+    { 0x118A0, 0x118DF },
+    { 0x118FF, 0x118FF },
+    { 0x11AC0, 0x11AF8 },
+    { 0x12000, 0x12398 },
+    { 0x12400, 0x1246E },
     { 0x13000, 0x1342E },
     { 0x16800, 0x16A38 },
+    { 0x16A40, 0x16A5E },
+    { 0x16AD0, 0x16AED },
+    { 0x16B00, 0x16B2F },
+    { 0x16B40, 0x16B43 },
+    { 0x16B63, 0x16B77 },
+    { 0x16B7D, 0x16B8F },
     { 0x16F00, 0x16F44 },
     { 0x16F50, 0x16F50 },
     { 0x16F93, 0x16F9F },
     { 0x1B000, 0x1B001 },
+    { 0x1BC00, 0x1BC6A },
+    { 0x1BC70, 0x1BC7C },
+    { 0x1BC80, 0x1BC88 },
+    { 0x1BC90, 0x1BC99 },
     { 0x1D400, 0x1D454 },
     { 0x1D456, 0x1D49C },
     { 0x1D49E, 0x1D49F },
@@ -475,6 +524,7 @@
     { 0x1D78A, 0x1D7A8 },
     { 0x1D7AA, 0x1D7C2 },
     { 0x1D7C4, 0x1D7CB },
+    { 0x1E800, 0x1E8C4 },
     { 0x1EE00, 0x1EE03 },
     { 0x1EE05, 0x1EE1F },
     { 0x1EE21, 0x1EE22 },
--- a/tests/unictype/test-pr_zero_width.c
+++ b/tests/unictype/test-pr_zero_width.c
@@ -18,7 +18,7 @@
 #include "test-predicate-part1.h"
 
     { 0x00AD, 0x00AD },
-    { 0x0600, 0x0604 },
+    { 0x0600, 0x0605 },
     { 0x061C, 0x061C },
     { 0x06DD, 0x06DD },
     { 0x070F, 0x070F },
@@ -30,6 +30,7 @@
     { 0xFEFF, 0xFEFF },
     { 0xFFF9, 0xFFFB },
     { 0x110BD, 0x110BD },
+    { 0x1BCA0, 0x1BCA3 },
     { 0x1D173, 0x1D17A },
     { 0xE0001, 0xE0001 },
     { 0xE0020, 0xE007F }
--- a/tests/unigbrk/GraphemeBreakTest.txt
+++ b/tests/unigbrk/GraphemeBreakTest.txt
@@ -1,5 +1,5 @@
-# GraphemeBreakTest-6.3.0.txt
-# Date: 2012-12-20, 22:18:29 GMT [MD]
+# GraphemeBreakTest-7.0.0.txt
+# Date: 2013-11-27, 09:54:39 GMT [MD]
 #
 # Unicode Character Database
 # Copyright (c) 1991-2013 Unicode, Inc.
--- a/tests/unigbrk/test-uc-gbrk-prop.h
+++ b/tests/unigbrk/test-uc-gbrk-prop.h
@@ -39,7 +39,7 @@
 { 0x05C7, GBP_OTHER },
 { 0x05C8, GBP_EXTEND },
 { 0x0600, GBP_OTHER },
-{ 0x0605, GBP_CONTROL },
+{ 0x0606, GBP_CONTROL },
 { 0x0610, GBP_OTHER },
 { 0x061B, GBP_EXTEND },
 { 0x061C, GBP_OTHER },
@@ -78,8 +78,6 @@
 { 0x0859, GBP_OTHER },
 { 0x085C, GBP_EXTEND },
 { 0x08E4, GBP_OTHER },
-{ 0x08FF, GBP_EXTEND },
-{ 0x0900, GBP_OTHER },
 { 0x0903, GBP_EXTEND },
 { 0x0904, GBP_SPACINGMARK },
 { 0x093A, GBP_OTHER },
@@ -180,7 +178,8 @@
 { 0x0BCE, GBP_EXTEND },
 { 0x0BD7, GBP_OTHER },
 { 0x0BD8, GBP_EXTEND },
-{ 0x0C01, GBP_OTHER },
+{ 0x0C00, GBP_OTHER },
+{ 0x0C01, GBP_EXTEND },
 { 0x0C04, GBP_SPACINGMARK },
 { 0x0C3E, GBP_OTHER },
 { 0x0C41, GBP_EXTEND },
@@ -193,7 +192,8 @@
 { 0x0C57, GBP_EXTEND },
 { 0x0C62, GBP_OTHER },
 { 0x0C64, GBP_EXTEND },
-{ 0x0C82, GBP_OTHER },
+{ 0x0C81, GBP_OTHER },
+{ 0x0C82, GBP_EXTEND },
 { 0x0C84, GBP_SPACINGMARK },
 { 0x0CBC, GBP_OTHER },
 { 0x0CBD, GBP_EXTEND },
@@ -213,7 +213,8 @@
 { 0x0CD7, GBP_EXTEND },
 { 0x0CE2, GBP_OTHER },
 { 0x0CE4, GBP_EXTEND },
-{ 0x0D02, GBP_OTHER },
+{ 0x0D01, GBP_OTHER },
+{ 0x0D02, GBP_EXTEND },
 { 0x0D04, GBP_SPACINGMARK },
 { 0x0D3E, GBP_OTHER },
 { 0x0D3F, GBP_EXTEND },
@@ -367,6 +368,8 @@
 { 0x1A7D, GBP_EXTEND },
 { 0x1A7F, GBP_OTHER },
 { 0x1A80, GBP_EXTEND },
+{ 0x1AB0, GBP_OTHER },
+{ 0x1ABF, GBP_EXTEND },
 { 0x1B00, GBP_OTHER },
 { 0x1B04, GBP_EXTEND },
 { 0x1B05, GBP_SPACINGMARK },
@@ -390,8 +393,7 @@
 { 0x1BA8, GBP_SPACINGMARK },
 { 0x1BAA, GBP_EXTEND },
 { 0x1BAB, GBP_SPACINGMARK },
-{ 0x1BAC, GBP_EXTEND },
-{ 0x1BAE, GBP_SPACINGMARK },
+{ 0x1BAE, GBP_EXTEND },
 { 0x1BE6, GBP_OTHER },
 { 0x1BE7, GBP_EXTEND },
 { 0x1BE8, GBP_SPACINGMARK },
@@ -417,8 +419,10 @@
 { 0x1CF2, GBP_OTHER },
 { 0x1CF4, GBP_SPACINGMARK },
 { 0x1CF5, GBP_EXTEND },
+{ 0x1CF8, GBP_OTHER },
+{ 0x1CFA, GBP_EXTEND },
 { 0x1DC0, GBP_OTHER },
-{ 0x1DE7, GBP_EXTEND },
+{ 0x1DF6, GBP_EXTEND },
 { 0x1DFC, GBP_OTHER },
 { 0x1E00, GBP_EXTEND },
 { 0x200B, GBP_OTHER },
@@ -483,6 +487,8 @@
 { 0xA9BC, GBP_SPACINGMARK },
 { 0xA9BD, GBP_EXTEND },
 { 0xA9C1, GBP_SPACINGMARK },
+{ 0xA9E5, GBP_OTHER },
+{ 0xA9E6, GBP_EXTEND },
 { 0xAA29, GBP_OTHER },
 { 0xAA2F, GBP_EXTEND },
 { 0xAA31, GBP_SPACINGMARK },
@@ -494,6 +500,8 @@
 { 0xAA4C, GBP_OTHER },
 { 0xAA4D, GBP_EXTEND },
 { 0xAA4E, GBP_SPACINGMARK },
+{ 0xAA7C, GBP_OTHER },
+{ 0xAA7D, GBP_EXTEND },
 { 0xAAB0, GBP_OTHER },
 { 0xAAB1, GBP_EXTEND },
 { 0xAAB2, GBP_OTHER },
@@ -1330,7 +1338,7 @@
 { 0xFE00, GBP_OTHER },
 { 0xFE10, GBP_EXTEND },
 { 0xFE20, GBP_OTHER },
-{ 0xFE27, GBP_EXTEND },
+{ 0xFE2E, GBP_EXTEND },
 { 0xFEFF, GBP_OTHER },
 { 0xFF00, GBP_CONTROL },
 { 0xFF9E, GBP_OTHER },
@@ -1339,6 +1347,10 @@
 { 0xFFFC, GBP_CONTROL },
 { 0x101FD, GBP_OTHER },
 { 0x101FE, GBP_EXTEND },
+{ 0x102E0, GBP_OTHER },
+{ 0x102E1, GBP_EXTEND },
+{ 0x10376, GBP_OTHER },
+{ 0x1037B, GBP_EXTEND },
 { 0x10A01, GBP_OTHER },
 { 0x10A04, GBP_EXTEND },
 { 0x10A05, GBP_OTHER },
@@ -1349,13 +1361,15 @@
 { 0x10A3B, GBP_EXTEND },
 { 0x10A3F, GBP_OTHER },
 { 0x10A40, GBP_EXTEND },
+{ 0x10AE5, GBP_OTHER },
+{ 0x10AE7, GBP_EXTEND },
 { 0x11000, GBP_OTHER },
 { 0x11001, GBP_SPACINGMARK },
 { 0x11002, GBP_EXTEND },
 { 0x11003, GBP_SPACINGMARK },
 { 0x11038, GBP_OTHER },
 { 0x11047, GBP_EXTEND },
-{ 0x11080, GBP_OTHER },
+{ 0x1107F, GBP_OTHER },
 { 0x11082, GBP_EXTEND },
 { 0x11083, GBP_SPACINGMARK },
 { 0x110B0, GBP_OTHER },
@@ -1371,6 +1385,8 @@
 { 0x1112C, GBP_EXTEND },
 { 0x1112D, GBP_SPACINGMARK },
 { 0x11135, GBP_EXTEND },
+{ 0x11173, GBP_OTHER },
+{ 0x11174, GBP_EXTEND },
 { 0x11180, GBP_OTHER },
 { 0x11182, GBP_EXTEND },
 { 0x11183, GBP_SPACINGMARK },
@@ -1378,6 +1394,67 @@
 { 0x111B6, GBP_SPACINGMARK },
 { 0x111BF, GBP_EXTEND },
 { 0x111C1, GBP_SPACINGMARK },
+{ 0x1122C, GBP_OTHER },
+{ 0x1122F, GBP_SPACINGMARK },
+{ 0x11232, GBP_EXTEND },
+{ 0x11234, GBP_SPACINGMARK },
+{ 0x11235, GBP_EXTEND },
+{ 0x11236, GBP_SPACINGMARK },
+{ 0x11238, GBP_EXTEND },
+{ 0x112DF, GBP_OTHER },
+{ 0x112E0, GBP_EXTEND },
+{ 0x112E3, GBP_SPACINGMARK },
+{ 0x112EB, GBP_EXTEND },
+{ 0x11301, GBP_OTHER },
+{ 0x11302, GBP_EXTEND },
+{ 0x11304, GBP_SPACINGMARK },
+{ 0x1133C, GBP_OTHER },
+{ 0x1133D, GBP_EXTEND },
+{ 0x1133E, GBP_OTHER },
+{ 0x1133F, GBP_EXTEND },
+{ 0x11340, GBP_SPACINGMARK },
+{ 0x11341, GBP_EXTEND },
+{ 0x11345, GBP_SPACINGMARK },
+{ 0x11347, GBP_OTHER },
+{ 0x11349, GBP_SPACINGMARK },
+{ 0x1134B, GBP_OTHER },
+{ 0x1134E, GBP_SPACINGMARK },
+{ 0x11357, GBP_OTHER },
+{ 0x11358, GBP_EXTEND },
+{ 0x11362, GBP_OTHER },
+{ 0x11364, GBP_SPACINGMARK },
+{ 0x11366, GBP_OTHER },
+{ 0x1136D, GBP_EXTEND },
+{ 0x11370, GBP_OTHER },
+{ 0x11375, GBP_EXTEND },
+{ 0x114B0, GBP_OTHER },
+{ 0x114B1, GBP_EXTEND },
+{ 0x114B3, GBP_SPACINGMARK },
+{ 0x114B9, GBP_EXTEND },
+{ 0x114BA, GBP_SPACINGMARK },
+{ 0x114BB, GBP_EXTEND },
+{ 0x114BD, GBP_SPACINGMARK },
+{ 0x114BE, GBP_EXTEND },
+{ 0x114BF, GBP_SPACINGMARK },
+{ 0x114C1, GBP_EXTEND },
+{ 0x114C2, GBP_SPACINGMARK },
+{ 0x114C4, GBP_EXTEND },
+{ 0x115AF, GBP_OTHER },
+{ 0x115B0, GBP_EXTEND },
+{ 0x115B2, GBP_SPACINGMARK },
+{ 0x115B6, GBP_EXTEND },
+{ 0x115B8, GBP_OTHER },
+{ 0x115BC, GBP_SPACINGMARK },
+{ 0x115BE, GBP_EXTEND },
+{ 0x115BF, GBP_SPACINGMARK },
+{ 0x115C1, GBP_EXTEND },
+{ 0x11630, GBP_OTHER },
+{ 0x11633, GBP_SPACINGMARK },
+{ 0x1163B, GBP_EXTEND },
+{ 0x1163D, GBP_SPACINGMARK },
+{ 0x1163E, GBP_EXTEND },
+{ 0x1163F, GBP_SPACINGMARK },
+{ 0x11641, GBP_EXTEND },
 { 0x116AB, GBP_OTHER },
 { 0x116AC, GBP_EXTEND },
 { 0x116AD, GBP_SPACINGMARK },
@@ -1386,10 +1463,18 @@
 { 0x116B6, GBP_EXTEND },
 { 0x116B7, GBP_SPACINGMARK },
 { 0x116B8, GBP_EXTEND },
+{ 0x16AF0, GBP_OTHER },
+{ 0x16AF5, GBP_EXTEND },
+{ 0x16B30, GBP_OTHER },
+{ 0x16B37, GBP_EXTEND },
 { 0x16F51, GBP_OTHER },
 { 0x16F7F, GBP_SPACINGMARK },
 { 0x16F8F, GBP_OTHER },
 { 0x16F93, GBP_EXTEND },
+{ 0x1BC9D, GBP_OTHER },
+{ 0x1BC9F, GBP_EXTEND },
+{ 0x1BCA0, GBP_OTHER },
+{ 0x1BCA4, GBP_CONTROL },
 { 0x1D165, GBP_OTHER },
 { 0x1D166, GBP_EXTEND },
 { 0x1D167, GBP_SPACINGMARK },
@@ -1405,6 +1490,8 @@
 { 0x1D1AE, GBP_EXTEND },
 { 0x1D242, GBP_OTHER },
 { 0x1D245, GBP_EXTEND },
+{ 0x1E8D0, GBP_OTHER },
+{ 0x1E8D7, GBP_EXTEND },
 { 0x1F1E6, GBP_OTHER },
 { 0x1F200, GBP_RI },
 { 0xE0000, GBP_OTHER },
--- a/tests/uninorm/NormalizationTest.txt
+++ b/tests/uninorm/NormalizationTest.txt
@@ -1,5 +1,5 @@
-# NormalizationTest-6.3.0.txt
-# Date: 2012-12-20, 22:18:30 GMT [MD]
+# NormalizationTest-7.0.0.txt
+# Date: 2013-11-27, 09:54:41 GMT [MD]
 #
 # Unicode Character Database
 # Copyright (c) 1991-2013 Unicode, Inc.
@@ -2402,9 +2402,15 @@
 33FD;33FD;33FD;0033 0030 65E5;0033 0030 65E5; # (㏽; ㏽; ㏽; 30日; 30日; ) IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTY
 33FE;33FE;33FE;0033 0031 65E5;0033 0031 65E5; # (㏾; ㏾; ㏾; 31日; 31日; ) IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTY-ONE
 33FF;33FF;33FF;0067 0061 006C;0067 0061 006C; # (㏿; ㏿; ㏿; gal; gal; ) SQUARE GAL
+A69C;A69C;A69C;044A;044A; # (ꚜ; ꚜ; ꚜ; ъ; ъ; ) MODIFIER LETTER CYRILLIC HARD SIGN
+A69D;A69D;A69D;044C;044C; # (ꚝ; ꚝ; ꚝ; ь; ь; ) MODIFIER LETTER CYRILLIC SOFT SIGN
 A770;A770;A770;A76F;A76F; # (ꝰ; ꝰ; ꝰ; ꝯ; ꝯ; ) MODIFIER LETTER US
 A7F8;A7F8;A7F8;0126;0126; # (ꟸ; ꟸ; ꟸ; Ħ; Ħ; ) MODIFIER LETTER CAPITAL H WITH STROKE
 A7F9;A7F9;A7F9;0153;0153; # (ꟹ; ꟹ; ꟹ; œ; œ; ) MODIFIER LETTER SMALL LIGATURE OE
+AB5C;AB5C;AB5C;A727;A727; # (ꭜ; ꭜ; ꭜ; ꜧ; ꜧ; ) MODIFIER LETTER SMALL HENG
+AB5D;AB5D;AB5D;AB37;AB37; # (ꭝ; ꭝ; ꭝ; ꬷ; ꬷ; ) MODIFIER LETTER SMALL L WITH INVERTED LAZY S
+AB5E;AB5E;AB5E;026B;026B; # (ꭞ; ꭞ; ꭞ; ɫ; ɫ; ) MODIFIER LETTER SMALL L WITH MIDDLE TILDE
+AB5F;AB5F;AB5F;AB52;AB52; # (ꭟ; ꭟ; ꭟ; ꭒ; ꭒ; ) MODIFIER LETTER SMALL U WITH LEFT HOOK
 AC00;AC00;1100 1161;AC00;1100 1161; # (가; 가; 가; 가; 가; ) HANGUL SYLLABLE GA
 AC01;AC01;1100 1161 11A8;AC01;1100 1161 11A8; # (각; 각; 각; 각; 각; ) HANGUL SYLLABLE GAG
 AC02;AC02;1100 1161 11A9;AC02;1100 1161 11A9; # (갂; 갂; 갂; 갂; 갂; ) HANGUL SYLLABLE GAGG
@@ -15121,6 +15127,13 @@
 110AB;110AB;110A5 110BA;110AB;110A5 110BA; # (𑂫; 𑂫; 𑂥◌𑂺; 𑂫; 𑂥◌𑂺; ) KAITHI LETTER VA
 1112E;1112E;11131 11127;1112E;11131 11127; # (◌𑄮; ◌𑄮; ◌𑄱◌𑄧; ◌𑄮; ◌𑄱◌𑄧; ) CHAKMA VOWEL SIGN O
 1112F;1112F;11132 11127;1112F;11132 11127; # (◌𑄯; ◌𑄯; ◌𑄲◌𑄧; ◌𑄯; ◌𑄲◌𑄧; ) CHAKMA VOWEL SIGN AU
+1134B;1134B;11347 1133E;1134B;11347 1133E; # (𑍋; 𑍋; 𑍋; 𑍋; 𑍋; ) GRANTHA VOWEL SIGN OO
+1134C;1134C;11347 11357;1134C;11347 11357; # (𑍌; 𑍌; 𑍌; 𑍌; 𑍌; ) GRANTHA VOWEL SIGN AU
+114BB;114BB;114B9 114BA;114BB;114B9 114BA; # (𑒻; 𑒻; 𑒹◌𑒺; 𑒻; 𑒹◌𑒺; ) TIRHUTA VOWEL SIGN AI
+114BC;114BC;114B9 114B0;114BC;114B9 114B0; # (𑒼; 𑒼; 𑒼; 𑒼; 𑒼; ) TIRHUTA VOWEL SIGN O
+114BE;114BE;114B9 114BD;114BE;114B9 114BD; # (𑒾; 𑒾; 𑒾; 𑒾; 𑒾; ) TIRHUTA VOWEL SIGN AU
+115BA;115BA;115B8 115AF;115BA;115B8 115AF; # (𑖺; 𑖺; 𑖺; 𑖺; 𑖺; ) SIDDHAM VOWEL SIGN O
+115BB;115BB;115B9 115AF;115BB;115B9 115AF; # (𑖻; 𑖻; 𑖻; 𑖻; 𑖻; ) SIDDHAM VOWEL SIGN AU
 1D15E;1D157 1D165;1D157 1D165;1D157 1D165;1D157 1D165; # (𝅗𝅥; 𝅗𝅥; 𝅗𝅥; 𝅗𝅥; 𝅗𝅥; ) MUSICAL SYMBOL HALF NOTE
 1D15F;1D158 1D165;1D158 1D165;1D158 1D165;1D158 1D165; # (𝅘𝅥; 𝅘𝅥; 𝅘𝅥; 𝅘𝅥; 𝅘𝅥; ) MUSICAL SYMBOL QUARTER NOTE
 1D160;1D158 1D165 1D16E;1D158 1D165 1D16E;1D158 1D165 1D16E;1D158 1D165 1D16E; # (𝅘𝅥𝅮; 𝅘𝅥𝅮; 𝅘𝅥𝅮; 𝅘𝅥𝅮; 𝅘𝅥𝅮; ) MUSICAL SYMBOL EIGHTH NOTE
@@ -17564,6 +17577,8 @@
 0061 08FD 0315 0300 05AE 0062;0061 05AE 08FD 0300 0315 0062;0061 05AE 08FD 0300 0315 0062;0061 05AE 08FD 0300 0315 0062;0061 05AE 08FD 0300 0315 0062; # (a◌ࣽ◌̕◌̀◌֮b; a◌֮◌ࣽ◌̀◌̕b; a◌֮◌ࣽ◌̀◌̕b; a◌֮◌ࣽ◌̀◌̕b; a◌֮◌ࣽ◌̀◌̕b; ) LATIN SMALL LETTER A, ARABIC RIGHT ARROWHEAD ABOVE WITH DOT, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
 0061 0315 0300 05AE 08FE 0062;00E0 05AE 08FE 0315 0062;0061 05AE 0300 08FE 0315 0062;00E0 05AE 08FE 0315 0062;0061 05AE 0300 08FE 0315 0062; # (a◌̕◌̀◌֮◌ࣾb; à◌֮◌ࣾ◌̕b; a◌֮◌̀◌ࣾ◌̕b; à◌֮◌ࣾ◌̕b; a◌֮◌̀◌ࣾ◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, ARABIC DAMMA WITH DOT, LATIN SMALL LETTER B
 0061 08FE 0315 0300 05AE 0062;0061 05AE 08FE 0300 0315 0062;0061 05AE 08FE 0300 0315 0062;0061 05AE 08FE 0300 0315 0062;0061 05AE 08FE 0300 0315 0062; # (a◌ࣾ◌̕◌̀◌֮b; a◌֮◌ࣾ◌̀◌̕b; a◌֮◌ࣾ◌̀◌̕b; a◌֮◌ࣾ◌̀◌̕b; a◌֮◌ࣾ◌̀◌̕b; ) LATIN SMALL LETTER A, ARABIC DAMMA WITH DOT, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 08FF 0062;00E0 05AE 08FF 0315 0062;0061 05AE 0300 08FF 0315 0062;00E0 05AE 08FF 0315 0062;0061 05AE 0300 08FF 0315 0062; # (a◌̕◌̀◌֮◌ࣿb; à◌֮◌ࣿ◌̕b; a◌֮◌̀◌ࣿ◌̕b; à◌֮◌ࣿ◌̕b; a◌֮◌̀◌ࣿ◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, ARABIC MARK SIDEWAYS NOON GHUNNA, LATIN SMALL LETTER B
+0061 08FF 0315 0300 05AE 0062;0061 05AE 08FF 0300 0315 0062;0061 05AE 08FF 0300 0315 0062;0061 05AE 08FF 0300 0315 0062;0061 05AE 08FF 0300 0315 0062; # (a◌ࣿ◌̕◌̀◌֮b; a◌֮◌ࣿ◌̀◌̕b; a◌֮◌ࣿ◌̀◌̕b; a◌֮◌ࣿ◌̀◌̕b; a◌֮◌ࣿ◌̀◌̕b; ) LATIN SMALL LETTER A, ARABIC MARK SIDEWAYS NOON GHUNNA, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
 0061 3099 093C 0334 093C 0062;0061 0334 093C 093C 3099 0062;0061 0334 093C 093C 3099 0062;0061 0334 093C 093C 3099 0062;0061 0334 093C 093C 3099 0062; # (a◌゙◌़◌̴◌़b; a◌̴◌़◌़◌゙b; a◌̴◌़◌़◌゙b; a◌̴◌़◌़◌゙b; a◌̴◌़◌़◌゙b; ) LATIN SMALL LETTER A, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, DEVANAGARI SIGN NUKTA, LATIN SMALL LETTER B
 0061 093C 3099 093C 0334 0062;0061 0334 093C 093C 3099 0062;0061 0334 093C 093C 3099 0062;0061 0334 093C 093C 3099 0062;0061 0334 093C 093C 3099 0062; # (a◌़◌゙◌़◌̴b; a◌̴◌़◌़◌゙b; a◌̴◌़◌़◌゙b; a◌̴◌़◌़◌゙b; a◌̴◌़◌़◌゙b; ) LATIN SMALL LETTER A, DEVANAGARI SIGN NUKTA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, LATIN SMALL LETTER B
 0061 05B0 094D 3099 094D 0062;0061 3099 094D 094D 05B0 0062;0061 3099 094D 094D 05B0 0062;0061 3099 094D 094D 05B0 0062;0061 3099 094D 094D 05B0 0062; # (a◌ְ◌्◌゙◌्b; a◌゙◌्◌्◌ְb; a◌゙◌्◌्◌ְb; a◌゙◌्◌्◌ְb; a◌゙◌्◌्◌ְb; ) LATIN SMALL LETTER A, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, DEVANAGARI SIGN VIRAMA, LATIN SMALL LETTER B
@@ -17726,6 +17741,34 @@
 0061 1A7C 0315 0300 05AE 0062;0061 05AE 1A7C 0300 0315 0062;0061 05AE 1A7C 0300 0315 0062;0061 05AE 1A7C 0300 0315 0062;0061 05AE 1A7C 0300 0315 0062; # (a◌᩼◌̕◌̀◌֮b; a◌֮◌᩼◌̀◌̕b; a◌֮◌᩼◌̀◌̕b; a◌֮◌᩼◌̀◌̕b; a◌֮◌᩼◌̀◌̕b; ) LATIN SMALL LETTER A, TAI THAM SIGN KHUEN-LUE KARAN, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
 0061 059A 0316 302A 1A7F 0062;0061 302A 0316 1A7F 059A 0062;0061 302A 0316 1A7F 059A 0062;0061 302A 0316 1A7F 059A 0062;0061 302A 0316 1A7F 059A 0062; # (a◌֚◌̖◌〪◌᩿b; a◌〪◌̖◌᩿◌֚b; a◌〪◌̖◌᩿◌֚b; a◌〪◌̖◌᩿◌֚b; a◌〪◌̖◌᩿◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, TAI THAM COMBINING CRYPTOGRAMMIC DOT, LATIN SMALL LETTER B
 0061 1A7F 059A 0316 302A 0062;0061 302A 1A7F 0316 059A 0062;0061 302A 1A7F 0316 059A 0062;0061 302A 1A7F 0316 059A 0062;0061 302A 1A7F 0316 059A 0062; # (a◌᩿◌֚◌̖◌〪b; a◌〪◌᩿◌̖◌֚b; a◌〪◌᩿◌̖◌֚b; a◌〪◌᩿◌̖◌֚b; a◌〪◌᩿◌̖◌֚b; ) LATIN SMALL LETTER A, TAI THAM COMBINING CRYPTOGRAMMIC DOT, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1AB0 0062;00E0 05AE 1AB0 0315 0062;0061 05AE 0300 1AB0 0315 0062;00E0 05AE 1AB0 0315 0062;0061 05AE 0300 1AB0 0315 0062; # (a◌̕◌̀◌֮◌᪰b; à◌֮◌᪰◌̕b; a◌֮◌̀◌᪰◌̕b; à◌֮◌᪰◌̕b; a◌֮◌̀◌᪰◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING DOUBLED CIRCUMFLEX ACCENT, LATIN SMALL LETTER B
+0061 1AB0 0315 0300 05AE 0062;0061 05AE 1AB0 0300 0315 0062;0061 05AE 1AB0 0300 0315 0062;0061 05AE 1AB0 0300 0315 0062;0061 05AE 1AB0 0300 0315 0062; # (a◌᪰◌̕◌̀◌֮b; a◌֮◌᪰◌̀◌̕b; a◌֮◌᪰◌̀◌̕b; a◌֮◌᪰◌̀◌̕b; a◌֮◌᪰◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING DOUBLED CIRCUMFLEX ACCENT, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1AB1 0062;00E0 05AE 1AB1 0315 0062;0061 05AE 0300 1AB1 0315 0062;00E0 05AE 1AB1 0315 0062;0061 05AE 0300 1AB1 0315 0062; # (a◌̕◌̀◌֮◌᪱b; à◌֮◌᪱◌̕b; a◌֮◌̀◌᪱◌̕b; à◌֮◌᪱◌̕b; a◌֮◌̀◌᪱◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING DIAERESIS-RING, LATIN SMALL LETTER B
+0061 1AB1 0315 0300 05AE 0062;0061 05AE 1AB1 0300 0315 0062;0061 05AE 1AB1 0300 0315 0062;0061 05AE 1AB1 0300 0315 0062;0061 05AE 1AB1 0300 0315 0062; # (a◌᪱◌̕◌̀◌֮b; a◌֮◌᪱◌̀◌̕b; a◌֮◌᪱◌̀◌̕b; a◌֮◌᪱◌̀◌̕b; a◌֮◌᪱◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING DIAERESIS-RING, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1AB2 0062;00E0 05AE 1AB2 0315 0062;0061 05AE 0300 1AB2 0315 0062;00E0 05AE 1AB2 0315 0062;0061 05AE 0300 1AB2 0315 0062; # (a◌̕◌̀◌֮◌᪲b; à◌֮◌᪲◌̕b; a◌֮◌̀◌᪲◌̕b; à◌֮◌᪲◌̕b; a◌֮◌̀◌᪲◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING INFINITY, LATIN SMALL LETTER B
+0061 1AB2 0315 0300 05AE 0062;0061 05AE 1AB2 0300 0315 0062;0061 05AE 1AB2 0300 0315 0062;0061 05AE 1AB2 0300 0315 0062;0061 05AE 1AB2 0300 0315 0062; # (a◌᪲◌̕◌̀◌֮b; a◌֮◌᪲◌̀◌̕b; a◌֮◌᪲◌̀◌̕b; a◌֮◌᪲◌̀◌̕b; a◌֮◌᪲◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING INFINITY, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1AB3 0062;00E0 05AE 1AB3 0315 0062;0061 05AE 0300 1AB3 0315 0062;00E0 05AE 1AB3 0315 0062;0061 05AE 0300 1AB3 0315 0062; # (a◌̕◌̀◌֮◌᪳b; à◌֮◌᪳◌̕b; a◌֮◌̀◌᪳◌̕b; à◌֮◌᪳◌̕b; a◌֮◌̀◌᪳◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING DOWNWARDS ARROW, LATIN SMALL LETTER B
+0061 1AB3 0315 0300 05AE 0062;0061 05AE 1AB3 0300 0315 0062;0061 05AE 1AB3 0300 0315 0062;0061 05AE 1AB3 0300 0315 0062;0061 05AE 1AB3 0300 0315 0062; # (a◌᪳◌̕◌̀◌֮b; a◌֮◌᪳◌̀◌̕b; a◌֮◌᪳◌̀◌̕b; a◌֮◌᪳◌̀◌̕b; a◌֮◌᪳◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING DOWNWARDS ARROW, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1AB4 0062;00E0 05AE 1AB4 0315 0062;0061 05AE 0300 1AB4 0315 0062;00E0 05AE 1AB4 0315 0062;0061 05AE 0300 1AB4 0315 0062; # (a◌̕◌̀◌֮◌᪴b; à◌֮◌᪴◌̕b; a◌֮◌̀◌᪴◌̕b; à◌֮◌᪴◌̕b; a◌֮◌̀◌᪴◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING TRIPLE DOT, LATIN SMALL LETTER B
+0061 1AB4 0315 0300 05AE 0062;0061 05AE 1AB4 0300 0315 0062;0061 05AE 1AB4 0300 0315 0062;0061 05AE 1AB4 0300 0315 0062;0061 05AE 1AB4 0300 0315 0062; # (a◌᪴◌̕◌̀◌֮b; a◌֮◌᪴◌̀◌̕b; a◌֮◌᪴◌̀◌̕b; a◌֮◌᪴◌̀◌̕b; a◌֮◌᪴◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING TRIPLE DOT, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 059A 0316 302A 1AB5 0062;0061 302A 0316 1AB5 059A 0062;0061 302A 0316 1AB5 059A 0062;0061 302A 0316 1AB5 059A 0062;0061 302A 0316 1AB5 059A 0062; # (a◌֚◌̖◌〪◌᪵b; a◌〪◌̖◌᪵◌֚b; a◌〪◌̖◌᪵◌֚b; a◌〪◌̖◌᪵◌֚b; a◌〪◌̖◌᪵◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, COMBINING X-X BELOW, LATIN SMALL LETTER B
+0061 1AB5 059A 0316 302A 0062;0061 302A 1AB5 0316 059A 0062;0061 302A 1AB5 0316 059A 0062;0061 302A 1AB5 0316 059A 0062;0061 302A 1AB5 0316 059A 0062; # (a◌᪵◌֚◌̖◌〪b; a◌〪◌᪵◌̖◌֚b; a◌〪◌᪵◌̖◌֚b; a◌〪◌᪵◌̖◌֚b; a◌〪◌᪵◌̖◌֚b; ) LATIN SMALL LETTER A, COMBINING X-X BELOW, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
+0061 059A 0316 302A 1AB6 0062;0061 302A 0316 1AB6 059A 0062;0061 302A 0316 1AB6 059A 0062;0061 302A 0316 1AB6 059A 0062;0061 302A 0316 1AB6 059A 0062; # (a◌֚◌̖◌〪◌᪶b; a◌〪◌̖◌᪶◌֚b; a◌〪◌̖◌᪶◌֚b; a◌〪◌̖◌᪶◌֚b; a◌〪◌̖◌᪶◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, COMBINING WIGGLY LINE BELOW, LATIN SMALL LETTER B
+0061 1AB6 059A 0316 302A 0062;0061 302A 1AB6 0316 059A 0062;0061 302A 1AB6 0316 059A 0062;0061 302A 1AB6 0316 059A 0062;0061 302A 1AB6 0316 059A 0062; # (a◌᪶◌֚◌̖◌〪b; a◌〪◌᪶◌̖◌֚b; a◌〪◌᪶◌̖◌֚b; a◌〪◌᪶◌̖◌֚b; a◌〪◌᪶◌̖◌֚b; ) LATIN SMALL LETTER A, COMBINING WIGGLY LINE BELOW, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
+0061 059A 0316 302A 1AB7 0062;0061 302A 0316 1AB7 059A 0062;0061 302A 0316 1AB7 059A 0062;0061 302A 0316 1AB7 059A 0062;0061 302A 0316 1AB7 059A 0062; # (a◌֚◌̖◌〪◌᪷b; a◌〪◌̖◌᪷◌֚b; a◌〪◌̖◌᪷◌֚b; a◌〪◌̖◌᪷◌֚b; a◌〪◌̖◌᪷◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, COMBINING OPEN MARK BELOW, LATIN SMALL LETTER B
+0061 1AB7 059A 0316 302A 0062;0061 302A 1AB7 0316 059A 0062;0061 302A 1AB7 0316 059A 0062;0061 302A 1AB7 0316 059A 0062;0061 302A 1AB7 0316 059A 0062; # (a◌᪷◌֚◌̖◌〪b; a◌〪◌᪷◌̖◌֚b; a◌〪◌᪷◌̖◌֚b; a◌〪◌᪷◌̖◌֚b; a◌〪◌᪷◌̖◌֚b; ) LATIN SMALL LETTER A, COMBINING OPEN MARK BELOW, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
+0061 059A 0316 302A 1AB8 0062;0061 302A 0316 1AB8 059A 0062;0061 302A 0316 1AB8 059A 0062;0061 302A 0316 1AB8 059A 0062;0061 302A 0316 1AB8 059A 0062; # (a◌֚◌̖◌〪◌᪸b; a◌〪◌̖◌᪸◌֚b; a◌〪◌̖◌᪸◌֚b; a◌〪◌̖◌᪸◌֚b; a◌〪◌̖◌᪸◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, COMBINING DOUBLE OPEN MARK BELOW, LATIN SMALL LETTER B
+0061 1AB8 059A 0316 302A 0062;0061 302A 1AB8 0316 059A 0062;0061 302A 1AB8 0316 059A 0062;0061 302A 1AB8 0316 059A 0062;0061 302A 1AB8 0316 059A 0062; # (a◌᪸◌֚◌̖◌〪b; a◌〪◌᪸◌̖◌֚b; a◌〪◌᪸◌̖◌֚b; a◌〪◌᪸◌̖◌֚b; a◌〪◌᪸◌̖◌֚b; ) LATIN SMALL LETTER A, COMBINING DOUBLE OPEN MARK BELOW, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
+0061 059A 0316 302A 1AB9 0062;0061 302A 0316 1AB9 059A 0062;0061 302A 0316 1AB9 059A 0062;0061 302A 0316 1AB9 059A 0062;0061 302A 0316 1AB9 059A 0062; # (a◌֚◌̖◌〪◌᪹b; a◌〪◌̖◌᪹◌֚b; a◌〪◌̖◌᪹◌֚b; a◌〪◌̖◌᪹◌֚b; a◌〪◌̖◌᪹◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, COMBINING LIGHT CENTRALIZATION STROKE BELOW, LATIN SMALL LETTER B
+0061 1AB9 059A 0316 302A 0062;0061 302A 1AB9 0316 059A 0062;0061 302A 1AB9 0316 059A 0062;0061 302A 1AB9 0316 059A 0062;0061 302A 1AB9 0316 059A 0062; # (a◌᪹◌֚◌̖◌〪b; a◌〪◌᪹◌̖◌֚b; a◌〪◌᪹◌̖◌֚b; a◌〪◌᪹◌̖◌֚b; a◌〪◌᪹◌̖◌֚b; ) LATIN SMALL LETTER A, COMBINING LIGHT CENTRALIZATION STROKE BELOW, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
+0061 059A 0316 302A 1ABA 0062;0061 302A 0316 1ABA 059A 0062;0061 302A 0316 1ABA 059A 0062;0061 302A 0316 1ABA 059A 0062;0061 302A 0316 1ABA 059A 0062; # (a◌֚◌̖◌〪◌᪺b; a◌〪◌̖◌᪺◌֚b; a◌〪◌̖◌᪺◌֚b; a◌〪◌̖◌᪺◌֚b; a◌〪◌̖◌᪺◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, COMBINING STRONG CENTRALIZATION STROKE BELOW, LATIN SMALL LETTER B
+0061 1ABA 059A 0316 302A 0062;0061 302A 1ABA 0316 059A 0062;0061 302A 1ABA 0316 059A 0062;0061 302A 1ABA 0316 059A 0062;0061 302A 1ABA 0316 059A 0062; # (a◌᪺◌֚◌̖◌〪b; a◌〪◌᪺◌̖◌֚b; a◌〪◌᪺◌̖◌֚b; a◌〪◌᪺◌̖◌֚b; a◌〪◌᪺◌̖◌֚b; ) LATIN SMALL LETTER A, COMBINING STRONG CENTRALIZATION STROKE BELOW, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1ABB 0062;00E0 05AE 1ABB 0315 0062;0061 05AE 0300 1ABB 0315 0062;00E0 05AE 1ABB 0315 0062;0061 05AE 0300 1ABB 0315 0062; # (a◌̕◌̀◌֮◌᪻b; à◌֮◌᪻◌̕b; a◌֮◌̀◌᪻◌̕b; à◌֮◌᪻◌̕b; a◌֮◌̀◌᪻◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING PARENTHESES ABOVE, LATIN SMALL LETTER B
+0061 1ABB 0315 0300 05AE 0062;0061 05AE 1ABB 0300 0315 0062;0061 05AE 1ABB 0300 0315 0062;0061 05AE 1ABB 0300 0315 0062;0061 05AE 1ABB 0300 0315 0062; # (a◌᪻◌̕◌̀◌֮b; a◌֮◌᪻◌̀◌̕b; a◌֮◌᪻◌̀◌̕b; a◌֮◌᪻◌̀◌̕b; a◌֮◌᪻◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING PARENTHESES ABOVE, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1ABC 0062;00E0 05AE 1ABC 0315 0062;0061 05AE 0300 1ABC 0315 0062;00E0 05AE 1ABC 0315 0062;0061 05AE 0300 1ABC 0315 0062; # (a◌̕◌̀◌֮◌᪼b; à◌֮◌᪼◌̕b; a◌֮◌̀◌᪼◌̕b; à◌֮◌᪼◌̕b; a◌֮◌̀◌᪼◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING DOUBLE PARENTHESES ABOVE, LATIN SMALL LETTER B
+0061 1ABC 0315 0300 05AE 0062;0061 05AE 1ABC 0300 0315 0062;0061 05AE 1ABC 0300 0315 0062;0061 05AE 1ABC 0300 0315 0062;0061 05AE 1ABC 0300 0315 0062; # (a◌᪼◌̕◌̀◌֮b; a◌֮◌᪼◌̀◌̕b; a◌֮◌᪼◌̀◌̕b; a◌֮◌᪼◌̀◌̕b; a◌֮◌᪼◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING DOUBLE PARENTHESES ABOVE, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 059A 0316 302A 1ABD 0062;0061 302A 0316 1ABD 059A 0062;0061 302A 0316 1ABD 059A 0062;0061 302A 0316 1ABD 059A 0062;0061 302A 0316 1ABD 059A 0062; # (a◌֚◌̖◌〪◌᪽b; a◌〪◌̖◌᪽◌֚b; a◌〪◌̖◌᪽◌֚b; a◌〪◌̖◌᪽◌֚b; a◌〪◌̖◌᪽◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, COMBINING PARENTHESES BELOW, LATIN SMALL LETTER B
+0061 1ABD 059A 0316 302A 0062;0061 302A 1ABD 0316 059A 0062;0061 302A 1ABD 0316 059A 0062;0061 302A 1ABD 0316 059A 0062;0061 302A 1ABD 0316 059A 0062; # (a◌᪽◌֚◌̖◌〪b; a◌〪◌᪽◌̖◌֚b; a◌〪◌᪽◌̖◌֚b; a◌〪◌᪽◌̖◌֚b; a◌〪◌᪽◌̖◌֚b; ) LATIN SMALL LETTER A, COMBINING PARENTHESES BELOW, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
 0061 3099 093C 0334 1B34 0062;0061 0334 093C 1B34 3099 0062;0061 0334 093C 1B34 3099 0062;0061 0334 093C 1B34 3099 0062;0061 0334 093C 1B34 3099 0062; # (a◌゙◌़◌̴◌᬴b; a◌̴◌़◌᬴◌゙b; a◌̴◌़◌᬴◌゙b; a◌̴◌़◌᬴◌゙b; a◌̴◌़◌᬴◌゙b; ) LATIN SMALL LETTER A, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, BALINESE SIGN REREKAN, LATIN SMALL LETTER B
 0061 1B34 3099 093C 0334 0062;0061 0334 1B34 093C 3099 0062;0061 0334 1B34 093C 3099 0062;0061 0334 1B34 093C 3099 0062;0061 0334 1B34 093C 3099 0062; # (a◌᬴◌゙◌़◌̴b; a◌̴◌᬴◌़◌゙b; a◌̴◌᬴◌़◌゙b; a◌̴◌᬴◌़◌゙b; a◌̴◌᬴◌़◌゙b; ) LATIN SMALL LETTER A, BALINESE SIGN REREKAN, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, LATIN SMALL LETTER B
 0061 05B0 094D 3099 1B44 0062;0061 3099 094D 1B44 05B0 0062;0061 3099 094D 1B44 05B0 0062;0061 3099 094D 1B44 05B0 0062;0061 3099 094D 1B44 05B0 0062; # (a◌ְ◌्◌゙᭄b; a◌゙◌्᭄◌ְb; a◌゙◌्᭄◌ְb; a◌゙◌्᭄◌ְb; a◌゙◌्᭄◌ְb; ) LATIN SMALL LETTER A, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, BALINESE ADEG ADEG, LATIN SMALL LETTER B
@@ -17810,6 +17853,10 @@
 0061 1CED 059A 0316 302A 0062;0061 302A 1CED 0316 059A 0062;0061 302A 1CED 0316 059A 0062;0061 302A 1CED 0316 059A 0062;0061 302A 1CED 0316 059A 0062; # (a◌᳭◌֚◌̖◌〪b; a◌〪◌᳭◌̖◌֚b; a◌〪◌᳭◌̖◌֚b; a◌〪◌᳭◌̖◌֚b; a◌〪◌᳭◌̖◌֚b; ) LATIN SMALL LETTER A, VEDIC SIGN TIRYAK, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
 0061 0315 0300 05AE 1CF4 0062;00E0 05AE 1CF4 0315 0062;0061 05AE 0300 1CF4 0315 0062;00E0 05AE 1CF4 0315 0062;0061 05AE 0300 1CF4 0315 0062; # (a◌̕◌̀◌֮◌᳴b; à◌֮◌᳴◌̕b; a◌֮◌̀◌᳴◌̕b; à◌֮◌᳴◌̕b; a◌֮◌̀◌᳴◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, VEDIC TONE CANDRA ABOVE, LATIN SMALL LETTER B
 0061 1CF4 0315 0300 05AE 0062;0061 05AE 1CF4 0300 0315 0062;0061 05AE 1CF4 0300 0315 0062;0061 05AE 1CF4 0300 0315 0062;0061 05AE 1CF4 0300 0315 0062; # (a◌᳴◌̕◌̀◌֮b; a◌֮◌᳴◌̀◌̕b; a◌֮◌᳴◌̀◌̕b; a◌֮◌᳴◌̀◌̕b; a◌֮◌᳴◌̀◌̕b; ) LATIN SMALL LETTER A, VEDIC TONE CANDRA ABOVE, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1CF8 0062;00E0 05AE 1CF8 0315 0062;0061 05AE 0300 1CF8 0315 0062;00E0 05AE 1CF8 0315 0062;0061 05AE 0300 1CF8 0315 0062; # (a◌̕◌̀◌֮◌᳸b; à◌֮◌᳸◌̕b; a◌֮◌̀◌᳸◌̕b; à◌֮◌᳸◌̕b; a◌֮◌̀◌᳸◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, VEDIC TONE RING ABOVE, LATIN SMALL LETTER B
+0061 1CF8 0315 0300 05AE 0062;0061 05AE 1CF8 0300 0315 0062;0061 05AE 1CF8 0300 0315 0062;0061 05AE 1CF8 0300 0315 0062;0061 05AE 1CF8 0300 0315 0062; # (a◌᳸◌̕◌̀◌֮b; a◌֮◌᳸◌̀◌̕b; a◌֮◌᳸◌̀◌̕b; a◌֮◌᳸◌̀◌̕b; a◌֮◌᳸◌̀◌̕b; ) LATIN SMALL LETTER A, VEDIC TONE RING ABOVE, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1CF9 0062;00E0 05AE 1CF9 0315 0062;0061 05AE 0300 1CF9 0315 0062;00E0 05AE 1CF9 0315 0062;0061 05AE 0300 1CF9 0315 0062; # (a◌̕◌̀◌֮◌᳹b; à◌֮◌᳹◌̕b; a◌֮◌̀◌᳹◌̕b; à◌֮◌᳹◌̕b; a◌֮◌̀◌᳹◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, VEDIC TONE DOUBLE RING ABOVE, LATIN SMALL LETTER B
+0061 1CF9 0315 0300 05AE 0062;0061 05AE 1CF9 0300 0315 0062;0061 05AE 1CF9 0300 0315 0062;0061 05AE 1CF9 0300 0315 0062;0061 05AE 1CF9 0300 0315 0062; # (a◌᳹◌̕◌̀◌֮b; a◌֮◌᳹◌̀◌̕b; a◌֮◌᳹◌̀◌̕b; a◌֮◌᳹◌̀◌̕b; a◌֮◌᳹◌̀◌̕b; ) LATIN SMALL LETTER A, VEDIC TONE DOUBLE RING ABOVE, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
 0061 0315 0300 05AE 1DC0 0062;00E0 05AE 1DC0 0315 0062;0061 05AE 0300 1DC0 0315 0062;00E0 05AE 1DC0 0315 0062;0061 05AE 0300 1DC0 0315 0062; # (a◌̕◌̀◌֮◌᷀b; à◌֮◌᷀◌̕b; a◌֮◌̀◌᷀◌̕b; à◌֮◌᷀◌̕b; a◌֮◌̀◌᷀◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING DOTTED GRAVE ACCENT, LATIN SMALL LETTER B
 0061 1DC0 0315 0300 05AE 0062;0061 05AE 1DC0 0300 0315 0062;0061 05AE 1DC0 0300 0315 0062;0061 05AE 1DC0 0300 0315 0062;0061 05AE 1DC0 0300 0315 0062; # (a◌᷀◌̕◌̀◌֮b; a◌֮◌᷀◌̀◌̕b; a◌֮◌᷀◌̀◌̕b; a◌֮◌᷀◌̀◌̕b; a◌֮◌᷀◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING DOTTED GRAVE ACCENT, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
 0061 0315 0300 05AE 1DC1 0062;00E0 05AE 1DC1 0315 0062;0061 05AE 0300 1DC1 0315 0062;00E0 05AE 1DC1 0315 0062;0061 05AE 0300 1DC1 0315 0062; # (a◌̕◌̀◌֮◌᷁b; à◌֮◌᷁◌̕b; a◌֮◌̀◌᷁◌̕b; à◌֮◌᷁◌̕b; a◌֮◌̀◌᷁◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING DOTTED ACUTE ACCENT, LATIN SMALL LETTER B
@@ -17888,6 +17935,36 @@
 0061 1DE5 0315 0300 05AE 0062;0061 05AE 1DE5 0300 0315 0062;0061 05AE 1DE5 0300 0315 0062;0061 05AE 1DE5 0300 0315 0062;0061 05AE 1DE5 0300 0315 0062; # (a◌ᷥ◌̕◌̀◌֮b; a◌֮◌ᷥ◌̀◌̕b; a◌֮◌ᷥ◌̀◌̕b; a◌֮◌ᷥ◌̀◌̕b; a◌֮◌ᷥ◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING LATIN SMALL LETTER LONG S, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
 0061 0315 0300 05AE 1DE6 0062;00E0 05AE 1DE6 0315 0062;0061 05AE 0300 1DE6 0315 0062;00E0 05AE 1DE6 0315 0062;0061 05AE 0300 1DE6 0315 0062; # (a◌̕◌̀◌֮◌ᷦb; à◌֮◌ᷦ◌̕b; a◌֮◌̀◌ᷦ◌̕b; à◌֮◌ᷦ◌̕b; a◌֮◌̀◌ᷦ◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING LATIN SMALL LETTER Z, LATIN SMALL LETTER B
 0061 1DE6 0315 0300 05AE 0062;0061 05AE 1DE6 0300 0315 0062;0061 05AE 1DE6 0300 0315 0062;0061 05AE 1DE6 0300 0315 0062;0061 05AE 1DE6 0300 0315 0062; # (a◌ᷦ◌̕◌̀◌֮b; a◌֮◌ᷦ◌̀◌̕b; a◌֮◌ᷦ◌̀◌̕b; a◌֮◌ᷦ◌̀◌̕b; a◌֮◌ᷦ◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING LATIN SMALL LETTER Z, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1DE7 0062;00E0 05AE 1DE7 0315 0062;0061 05AE 0300 1DE7 0315 0062;00E0 05AE 1DE7 0315 0062;0061 05AE 0300 1DE7 0315 0062; # (a◌̕◌̀◌֮◌ᷧb; à◌֮◌ᷧ◌̕b; a◌֮◌̀◌ᷧ◌̕b; à◌֮◌ᷧ◌̕b; a◌֮◌̀◌ᷧ◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING LATIN SMALL LETTER ALPHA, LATIN SMALL LETTER B
+0061 1DE7 0315 0300 05AE 0062;0061 05AE 1DE7 0300 0315 0062;0061 05AE 1DE7 0300 0315 0062;0061 05AE 1DE7 0300 0315 0062;0061 05AE 1DE7 0300 0315 0062; # (a◌ᷧ◌̕◌̀◌֮b; a◌֮◌ᷧ◌̀◌̕b; a◌֮◌ᷧ◌̀◌̕b; a◌֮◌ᷧ◌̀◌̕b; a◌֮◌ᷧ◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING LATIN SMALL LETTER ALPHA, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1DE8 0062;00E0 05AE 1DE8 0315 0062;0061 05AE 0300 1DE8 0315 0062;00E0 05AE 1DE8 0315 0062;0061 05AE 0300 1DE8 0315 0062; # (a◌̕◌̀◌֮◌ᷨb; à◌֮◌ᷨ◌̕b; a◌֮◌̀◌ᷨ◌̕b; à◌֮◌ᷨ◌̕b; a◌֮◌̀◌ᷨ◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING LATIN SMALL LETTER B, LATIN SMALL LETTER B
+0061 1DE8 0315 0300 05AE 0062;0061 05AE 1DE8 0300 0315 0062;0061 05AE 1DE8 0300 0315 0062;0061 05AE 1DE8 0300 0315 0062;0061 05AE 1DE8 0300 0315 0062; # (a◌ᷨ◌̕◌̀◌֮b; a◌֮◌ᷨ◌̀◌̕b; a◌֮◌ᷨ◌̀◌̕b; a◌֮◌ᷨ◌̀◌̕b; a◌֮◌ᷨ◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING LATIN SMALL LETTER B, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1DE9 0062;00E0 05AE 1DE9 0315 0062;0061 05AE 0300 1DE9 0315 0062;00E0 05AE 1DE9 0315 0062;0061 05AE 0300 1DE9 0315 0062; # (a◌̕◌̀◌֮◌ᷩb; à◌֮◌ᷩ◌̕b; a◌֮◌̀◌ᷩ◌̕b; à◌֮◌ᷩ◌̕b; a◌֮◌̀◌ᷩ◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING LATIN SMALL LETTER BETA, LATIN SMALL LETTER B
+0061 1DE9 0315 0300 05AE 0062;0061 05AE 1DE9 0300 0315 0062;0061 05AE 1DE9 0300 0315 0062;0061 05AE 1DE9 0300 0315 0062;0061 05AE 1DE9 0300 0315 0062; # (a◌ᷩ◌̕◌̀◌֮b; a◌֮◌ᷩ◌̀◌̕b; a◌֮◌ᷩ◌̀◌̕b; a◌֮◌ᷩ◌̀◌̕b; a◌֮◌ᷩ◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING LATIN SMALL LETTER BETA, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1DEA 0062;00E0 05AE 1DEA 0315 0062;0061 05AE 0300 1DEA 0315 0062;00E0 05AE 1DEA 0315 0062;0061 05AE 0300 1DEA 0315 0062; # (a◌̕◌̀◌֮◌ᷪb; à◌֮◌ᷪ◌̕b; a◌֮◌̀◌ᷪ◌̕b; à◌֮◌ᷪ◌̕b; a◌֮◌̀◌ᷪ◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING LATIN SMALL LETTER SCHWA, LATIN SMALL LETTER B
+0061 1DEA 0315 0300 05AE 0062;0061 05AE 1DEA 0300 0315 0062;0061 05AE 1DEA 0300 0315 0062;0061 05AE 1DEA 0300 0315 0062;0061 05AE 1DEA 0300 0315 0062; # (a◌ᷪ◌̕◌̀◌֮b; a◌֮◌ᷪ◌̀◌̕b; a◌֮◌ᷪ◌̀◌̕b; a◌֮◌ᷪ◌̀◌̕b; a◌֮◌ᷪ◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING LATIN SMALL LETTER SCHWA, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1DEB 0062;00E0 05AE 1DEB 0315 0062;0061 05AE 0300 1DEB 0315 0062;00E0 05AE 1DEB 0315 0062;0061 05AE 0300 1DEB 0315 0062; # (a◌̕◌̀◌֮◌ᷫb; à◌֮◌ᷫ◌̕b; a◌֮◌̀◌ᷫ◌̕b; à◌֮◌ᷫ◌̕b; a◌֮◌̀◌ᷫ◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING LATIN SMALL LETTER F, LATIN SMALL LETTER B
+0061 1DEB 0315 0300 05AE 0062;0061 05AE 1DEB 0300 0315 0062;0061 05AE 1DEB 0300 0315 0062;0061 05AE 1DEB 0300 0315 0062;0061 05AE 1DEB 0300 0315 0062; # (a◌ᷫ◌̕◌̀◌֮b; a◌֮◌ᷫ◌̀◌̕b; a◌֮◌ᷫ◌̀◌̕b; a◌֮◌ᷫ◌̀◌̕b; a◌֮◌ᷫ◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING LATIN SMALL LETTER F, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1DEC 0062;00E0 05AE 1DEC 0315 0062;0061 05AE 0300 1DEC 0315 0062;00E0 05AE 1DEC 0315 0062;0061 05AE 0300 1DEC 0315 0062; # (a◌̕◌̀◌֮◌ᷬb; à◌֮◌ᷬ◌̕b; a◌֮◌̀◌ᷬ◌̕b; à◌֮◌ᷬ◌̕b; a◌֮◌̀◌ᷬ◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING LATIN SMALL LETTER L WITH DOUBLE MIDDLE TILDE, LATIN SMALL LETTER B
+0061 1DEC 0315 0300 05AE 0062;0061 05AE 1DEC 0300 0315 0062;0061 05AE 1DEC 0300 0315 0062;0061 05AE 1DEC 0300 0315 0062;0061 05AE 1DEC 0300 0315 0062; # (a◌ᷬ◌̕◌̀◌֮b; a◌֮◌ᷬ◌̀◌̕b; a◌֮◌ᷬ◌̀◌̕b; a◌֮◌ᷬ◌̀◌̕b; a◌֮◌ᷬ◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING LATIN SMALL LETTER L WITH DOUBLE MIDDLE TILDE, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1DED 0062;00E0 05AE 1DED 0315 0062;0061 05AE 0300 1DED 0315 0062;00E0 05AE 1DED 0315 0062;0061 05AE 0300 1DED 0315 0062; # (a◌̕◌̀◌֮◌ᷭb; à◌֮◌ᷭ◌̕b; a◌֮◌̀◌ᷭ◌̕b; à◌֮◌ᷭ◌̕b; a◌֮◌̀◌ᷭ◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING LATIN SMALL LETTER O WITH LIGHT CENTRALIZATION STROKE, LATIN SMALL LETTER B
+0061 1DED 0315 0300 05AE 0062;0061 05AE 1DED 0300 0315 0062;0061 05AE 1DED 0300 0315 0062;0061 05AE 1DED 0300 0315 0062;0061 05AE 1DED 0300 0315 0062; # (a◌ᷭ◌̕◌̀◌֮b; a◌֮◌ᷭ◌̀◌̕b; a◌֮◌ᷭ◌̀◌̕b; a◌֮◌ᷭ◌̀◌̕b; a◌֮◌ᷭ◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING LATIN SMALL LETTER O WITH LIGHT CENTRALIZATION STROKE, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1DEE 0062;00E0 05AE 1DEE 0315 0062;0061 05AE 0300 1DEE 0315 0062;00E0 05AE 1DEE 0315 0062;0061 05AE 0300 1DEE 0315 0062; # (a◌̕◌̀◌֮◌ᷮb; à◌֮◌ᷮ◌̕b; a◌֮◌̀◌ᷮ◌̕b; à◌֮◌ᷮ◌̕b; a◌֮◌̀◌ᷮ◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING LATIN SMALL LETTER P, LATIN SMALL LETTER B
+0061 1DEE 0315 0300 05AE 0062;0061 05AE 1DEE 0300 0315 0062;0061 05AE 1DEE 0300 0315 0062;0061 05AE 1DEE 0300 0315 0062;0061 05AE 1DEE 0300 0315 0062; # (a◌ᷮ◌̕◌̀◌֮b; a◌֮◌ᷮ◌̀◌̕b; a◌֮◌ᷮ◌̀◌̕b; a◌֮◌ᷮ◌̀◌̕b; a◌֮◌ᷮ◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING LATIN SMALL LETTER P, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1DEF 0062;00E0 05AE 1DEF 0315 0062;0061 05AE 0300 1DEF 0315 0062;00E0 05AE 1DEF 0315 0062;0061 05AE 0300 1DEF 0315 0062; # (a◌̕◌̀◌֮◌ᷯb; à◌֮◌ᷯ◌̕b; a◌֮◌̀◌ᷯ◌̕b; à◌֮◌ᷯ◌̕b; a◌֮◌̀◌ᷯ◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING LATIN SMALL LETTER ESH, LATIN SMALL LETTER B
+0061 1DEF 0315 0300 05AE 0062;0061 05AE 1DEF 0300 0315 0062;0061 05AE 1DEF 0300 0315 0062;0061 05AE 1DEF 0300 0315 0062;0061 05AE 1DEF 0300 0315 0062; # (a◌ᷯ◌̕◌̀◌֮b; a◌֮◌ᷯ◌̀◌̕b; a◌֮◌ᷯ◌̀◌̕b; a◌֮◌ᷯ◌̀◌̕b; a◌֮◌ᷯ◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING LATIN SMALL LETTER ESH, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1DF0 0062;00E0 05AE 1DF0 0315 0062;0061 05AE 0300 1DF0 0315 0062;00E0 05AE 1DF0 0315 0062;0061 05AE 0300 1DF0 0315 0062; # (a◌̕◌̀◌֮◌ᷰb; à◌֮◌ᷰ◌̕b; a◌֮◌̀◌ᷰ◌̕b; à◌֮◌ᷰ◌̕b; a◌֮◌̀◌ᷰ◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING LATIN SMALL LETTER U WITH LIGHT CENTRALIZATION STROKE, LATIN SMALL LETTER B
+0061 1DF0 0315 0300 05AE 0062;0061 05AE 1DF0 0300 0315 0062;0061 05AE 1DF0 0300 0315 0062;0061 05AE 1DF0 0300 0315 0062;0061 05AE 1DF0 0300 0315 0062; # (a◌ᷰ◌̕◌̀◌֮b; a◌֮◌ᷰ◌̀◌̕b; a◌֮◌ᷰ◌̀◌̕b; a◌֮◌ᷰ◌̀◌̕b; a◌֮◌ᷰ◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING LATIN SMALL LETTER U WITH LIGHT CENTRALIZATION STROKE, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1DF1 0062;00E0 05AE 1DF1 0315 0062;0061 05AE 0300 1DF1 0315 0062;00E0 05AE 1DF1 0315 0062;0061 05AE 0300 1DF1 0315 0062; # (a◌̕◌̀◌֮◌ᷱb; à◌֮◌ᷱ◌̕b; a◌֮◌̀◌ᷱ◌̕b; à◌֮◌ᷱ◌̕b; a◌֮◌̀◌ᷱ◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING LATIN SMALL LETTER W, LATIN SMALL LETTER B
+0061 1DF1 0315 0300 05AE 0062;0061 05AE 1DF1 0300 0315 0062;0061 05AE 1DF1 0300 0315 0062;0061 05AE 1DF1 0300 0315 0062;0061 05AE 1DF1 0300 0315 0062; # (a◌ᷱ◌̕◌̀◌֮b; a◌֮◌ᷱ◌̀◌̕b; a◌֮◌ᷱ◌̀◌̕b; a◌֮◌ᷱ◌̀◌̕b; a◌֮◌ᷱ◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING LATIN SMALL LETTER W, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1DF2 0062;00E0 05AE 1DF2 0315 0062;0061 05AE 0300 1DF2 0315 0062;00E0 05AE 1DF2 0315 0062;0061 05AE 0300 1DF2 0315 0062; # (a◌̕◌̀◌֮◌ᷲb; à◌֮◌ᷲ◌̕b; a◌֮◌̀◌ᷲ◌̕b; à◌֮◌ᷲ◌̕b; a◌֮◌̀◌ᷲ◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING LATIN SMALL LETTER A WITH DIAERESIS, LATIN SMALL LETTER B
+0061 1DF2 0315 0300 05AE 0062;0061 05AE 1DF2 0300 0315 0062;0061 05AE 1DF2 0300 0315 0062;0061 05AE 1DF2 0300 0315 0062;0061 05AE 1DF2 0300 0315 0062; # (a◌ᷲ◌̕◌̀◌֮b; a◌֮◌ᷲ◌̀◌̕b; a◌֮◌ᷲ◌̀◌̕b; a◌֮◌ᷲ◌̀◌̕b; a◌֮◌ᷲ◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING LATIN SMALL LETTER A WITH DIAERESIS, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1DF3 0062;00E0 05AE 1DF3 0315 0062;0061 05AE 0300 1DF3 0315 0062;00E0 05AE 1DF3 0315 0062;0061 05AE 0300 1DF3 0315 0062; # (a◌̕◌̀◌֮◌ᷳb; à◌֮◌ᷳ◌̕b; a◌֮◌̀◌ᷳ◌̕b; à◌֮◌ᷳ◌̕b; a◌֮◌̀◌ᷳ◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING LATIN SMALL LETTER O WITH DIAERESIS, LATIN SMALL LETTER B
+0061 1DF3 0315 0300 05AE 0062;0061 05AE 1DF3 0300 0315 0062;0061 05AE 1DF3 0300 0315 0062;0061 05AE 1DF3 0300 0315 0062;0061 05AE 1DF3 0300 0315 0062; # (a◌ᷳ◌̕◌̀◌֮b; a◌֮◌ᷳ◌̀◌̕b; a◌֮◌ᷳ◌̀◌̕b; a◌֮◌ᷳ◌̀◌̕b; a◌֮◌ᷳ◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING LATIN SMALL LETTER O WITH DIAERESIS, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1DF4 0062;00E0 05AE 1DF4 0315 0062;0061 05AE 0300 1DF4 0315 0062;00E0 05AE 1DF4 0315 0062;0061 05AE 0300 1DF4 0315 0062; # (a◌̕◌̀◌֮◌ᷴb; à◌֮◌ᷴ◌̕b; a◌֮◌̀◌ᷴ◌̕b; à◌֮◌ᷴ◌̕b; a◌֮◌̀◌ᷴ◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING LATIN SMALL LETTER U WITH DIAERESIS, LATIN SMALL LETTER B
+0061 1DF4 0315 0300 05AE 0062;0061 05AE 1DF4 0300 0315 0062;0061 05AE 1DF4 0300 0315 0062;0061 05AE 1DF4 0300 0315 0062;0061 05AE 1DF4 0300 0315 0062; # (a◌ᷴ◌̕◌̀◌֮b; a◌֮◌ᷴ◌̀◌̕b; a◌֮◌ᷴ◌̀◌̕b; a◌֮◌ᷴ◌̀◌̕b; a◌֮◌ᷴ◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING LATIN SMALL LETTER U WITH DIAERESIS, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1DF5 0062;00E0 05AE 1DF5 0315 0062;0061 05AE 0300 1DF5 0315 0062;00E0 05AE 1DF5 0315 0062;0061 05AE 0300 1DF5 0315 0062; # (a◌̕◌̀◌֮◌᷵b; à◌֮◌᷵◌̕b; a◌֮◌̀◌᷵◌̕b; à◌֮◌᷵◌̕b; a◌֮◌̀◌᷵◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING UP TACK ABOVE, LATIN SMALL LETTER B
+0061 1DF5 0315 0300 05AE 0062;0061 05AE 1DF5 0300 0315 0062;0061 05AE 1DF5 0300 0315 0062;0061 05AE 1DF5 0300 0315 0062;0061 05AE 1DF5 0300 0315 0062; # (a◌᷵◌̕◌̀◌֮b; a◌֮◌᷵◌̀◌̕b; a◌֮◌᷵◌̀◌̕b; a◌֮◌᷵◌̀◌̕b; a◌֮◌᷵◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING UP TACK ABOVE, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
 0061 035D 035C 0315 1DFC 0062;0061 0315 035C 1DFC 035D 0062;0061 0315 035C 1DFC 035D 0062;0061 0315 035C 1DFC 035D 0062;0061 0315 035C 1DFC 035D 0062; # (a◌͝◌͜◌̕◌᷼b; a◌̕◌͜◌᷼◌͝b; a◌̕◌͜◌᷼◌͝b; a◌̕◌͜◌᷼◌͝b; a◌̕◌͜◌᷼◌͝b; ) LATIN SMALL LETTER A, COMBINING DOUBLE BREVE, COMBINING DOUBLE BREVE BELOW, COMBINING COMMA ABOVE RIGHT, COMBINING DOUBLE INVERTED BREVE BELOW, LATIN SMALL LETTER B
 0061 1DFC 035D 035C 0315 0062;0061 0315 1DFC 035C 035D 0062;0061 0315 1DFC 035C 035D 0062;0061 0315 1DFC 035C 035D 0062;0061 0315 1DFC 035C 035D 0062; # (a◌᷼◌͝◌͜◌̕b; a◌̕◌᷼◌͜◌͝b; a◌̕◌᷼◌͜◌͝b; a◌̕◌᷼◌͜◌͝b; a◌̕◌᷼◌͜◌͝b; ) LATIN SMALL LETTER A, COMBINING DOUBLE INVERTED BREVE BELOW, COMBINING DOUBLE BREVE, COMBINING DOUBLE BREVE BELOW, COMBINING COMMA ABOVE RIGHT, LATIN SMALL LETTER B
 0061 059A 0316 302A 1DFD 0062;0061 302A 0316 1DFD 059A 0062;0061 302A 0316 1DFD 059A 0062;0061 302A 0316 1DFD 059A 0062;0061 302A 0316 1DFD 059A 0062; # (a◌֚◌̖◌〪◌᷽b; a◌〪◌̖◌᷽◌֚b; a◌〪◌̖◌᷽◌֚b; a◌〪◌̖◌᷽◌֚b; a◌〪◌̖◌᷽◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, COMBINING ALMOST EQUAL TO BELOW, LATIN SMALL LETTER B
@@ -18154,8 +18231,34 @@
 0061 FE25 0315 0300 05AE 0062;0061 05AE FE25 0300 0315 0062;0061 05AE FE25 0300 0315 0062;0061 05AE FE25 0300 0315 0062;0061 05AE FE25 0300 0315 0062; # (a◌︥◌̕◌̀◌֮b; a◌֮◌︥◌̀◌̕b; a◌֮◌︥◌̀◌̕b; a◌֮◌︥◌̀◌̕b; a◌֮◌︥◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING MACRON RIGHT HALF, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
 0061 0315 0300 05AE FE26 0062;00E0 05AE FE26 0315 0062;0061 05AE 0300 FE26 0315 0062;00E0 05AE FE26 0315 0062;0061 05AE 0300 FE26 0315 0062; # (a◌̕◌̀◌֮◌︦b; à◌֮◌︦◌̕b; a◌֮◌̀◌︦◌̕b; à◌֮◌︦◌̕b; a◌֮◌̀◌︦◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING CONJOINING MACRON, LATIN SMALL LETTER B
 0061 FE26 0315 0300 05AE 0062;0061 05AE FE26 0300 0315 0062;0061 05AE FE26 0300 0315 0062;0061 05AE FE26 0300 0315 0062;0061 05AE FE26 0300 0315 0062; # (a◌︦◌̕◌̀◌֮b; a◌֮◌︦◌̀◌̕b; a◌֮◌︦◌̀◌̕b; a◌֮◌︦◌̀◌̕b; a◌֮◌︦◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING CONJOINING MACRON, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 059A 0316 302A FE27 0062;0061 302A 0316 FE27 059A 0062;0061 302A 0316 FE27 059A 0062;0061 302A 0316 FE27 059A 0062;0061 302A 0316 FE27 059A 0062; # (a◌֚◌̖◌〪◌︧b; a◌〪◌̖◌︧◌֚b; a◌〪◌̖◌︧◌֚b; a◌〪◌̖◌︧◌֚b; a◌〪◌̖◌︧◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, COMBINING LIGATURE LEFT HALF BELOW, LATIN SMALL LETTER B
+0061 FE27 059A 0316 302A 0062;0061 302A FE27 0316 059A 0062;0061 302A FE27 0316 059A 0062;0061 302A FE27 0316 059A 0062;0061 302A FE27 0316 059A 0062; # (a◌︧◌֚◌̖◌〪b; a◌〪◌︧◌̖◌֚b; a◌〪◌︧◌̖◌֚b; a◌〪◌︧◌̖◌֚b; a◌〪◌︧◌̖◌֚b; ) LATIN SMALL LETTER A, COMBINING LIGATURE LEFT HALF BELOW, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
+0061 059A 0316 302A FE28 0062;0061 302A 0316 FE28 059A 0062;0061 302A 0316 FE28 059A 0062;0061 302A 0316 FE28 059A 0062;0061 302A 0316 FE28 059A 0062; # (a◌֚◌̖◌〪◌︨b; a◌〪◌̖◌︨◌֚b; a◌〪◌̖◌︨◌֚b; a◌〪◌̖◌︨◌֚b; a◌〪◌̖◌︨◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, COMBINING LIGATURE RIGHT HALF BELOW, LATIN SMALL LETTER B
+0061 FE28 059A 0316 302A 0062;0061 302A FE28 0316 059A 0062;0061 302A FE28 0316 059A 0062;0061 302A FE28 0316 059A 0062;0061 302A FE28 0316 059A 0062; # (a◌︨◌֚◌̖◌〪b; a◌〪◌︨◌̖◌֚b; a◌〪◌︨◌̖◌֚b; a◌〪◌︨◌̖◌֚b; a◌〪◌︨◌̖◌֚b; ) LATIN SMALL LETTER A, COMBINING LIGATURE RIGHT HALF BELOW, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
+0061 059A 0316 302A FE29 0062;0061 302A 0316 FE29 059A 0062;0061 302A 0316 FE29 059A 0062;0061 302A 0316 FE29 059A 0062;0061 302A 0316 FE29 059A 0062; # (a◌֚◌̖◌〪◌︩b; a◌〪◌̖◌︩◌֚b; a◌〪◌̖◌︩◌֚b; a◌〪◌̖◌︩◌֚b; a◌〪◌̖◌︩◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, COMBINING TILDE LEFT HALF BELOW, LATIN SMALL LETTER B
+0061 FE29 059A 0316 302A 0062;0061 302A FE29 0316 059A 0062;0061 302A FE29 0316 059A 0062;0061 302A FE29 0316 059A 0062;0061 302A FE29 0316 059A 0062; # (a◌︩◌֚◌̖◌〪b; a◌〪◌︩◌̖◌֚b; a◌〪◌︩◌̖◌֚b; a◌〪◌︩◌̖◌֚b; a◌〪◌︩◌̖◌֚b; ) LATIN SMALL LETTER A, COMBINING TILDE LEFT HALF BELOW, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
+0061 059A 0316 302A FE2A 0062;0061 302A 0316 FE2A 059A 0062;0061 302A 0316 FE2A 059A 0062;0061 302A 0316 FE2A 059A 0062;0061 302A 0316 FE2A 059A 0062; # (a◌֚◌̖◌〪◌︪b; a◌〪◌̖◌︪◌֚b; a◌〪◌̖◌︪◌֚b; a◌〪◌̖◌︪◌֚b; a◌〪◌̖◌︪◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, COMBINING TILDE RIGHT HALF BELOW, LATIN SMALL LETTER B
+0061 FE2A 059A 0316 302A 0062;0061 302A FE2A 0316 059A 0062;0061 302A FE2A 0316 059A 0062;0061 302A FE2A 0316 059A 0062;0061 302A FE2A 0316 059A 0062; # (a◌︪◌֚◌̖◌〪b; a◌〪◌︪◌̖◌֚b; a◌〪◌︪◌̖◌֚b; a◌〪◌︪◌̖◌֚b; a◌〪◌︪◌̖◌֚b; ) LATIN SMALL LETTER A, COMBINING TILDE RIGHT HALF BELOW, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
+0061 059A 0316 302A FE2B 0062;0061 302A 0316 FE2B 059A 0062;0061 302A 0316 FE2B 059A 0062;0061 302A 0316 FE2B 059A 0062;0061 302A 0316 FE2B 059A 0062; # (a◌֚◌̖◌〪◌︫b; a◌〪◌̖◌︫◌֚b; a◌〪◌̖◌︫◌֚b; a◌〪◌̖◌︫◌֚b; a◌〪◌̖◌︫◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, COMBINING MACRON LEFT HALF BELOW, LATIN SMALL LETTER B
+0061 FE2B 059A 0316 302A 0062;0061 302A FE2B 0316 059A 0062;0061 302A FE2B 0316 059A 0062;0061 302A FE2B 0316 059A 0062;0061 302A FE2B 0316 059A 0062; # (a◌︫◌֚◌̖◌〪b; a◌〪◌︫◌̖◌֚b; a◌〪◌︫◌̖◌֚b; a◌〪◌︫◌̖◌֚b; a◌〪◌︫◌̖◌֚b; ) LATIN SMALL LETTER A, COMBINING MACRON LEFT HALF BELOW, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
+0061 059A 0316 302A FE2C 0062;0061 302A 0316 FE2C 059A 0062;0061 302A 0316 FE2C 059A 0062;0061 302A 0316 FE2C 059A 0062;0061 302A 0316 FE2C 059A 0062; # (a◌֚◌̖◌〪◌︬b; a◌〪◌̖◌︬◌֚b; a◌〪◌̖◌︬◌֚b; a◌〪◌̖◌︬◌֚b; a◌〪◌̖◌︬◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, COMBINING MACRON RIGHT HALF BELOW, LATIN SMALL LETTER B
+0061 FE2C 059A 0316 302A 0062;0061 302A FE2C 0316 059A 0062;0061 302A FE2C 0316 059A 0062;0061 302A FE2C 0316 059A 0062;0061 302A FE2C 0316 059A 0062; # (a◌︬◌֚◌̖◌〪b; a◌〪◌︬◌̖◌֚b; a◌〪◌︬◌̖◌֚b; a◌〪◌︬◌̖◌֚b; a◌〪◌︬◌̖◌֚b; ) LATIN SMALL LETTER A, COMBINING MACRON RIGHT HALF BELOW, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
+0061 059A 0316 302A FE2D 0062;0061 302A 0316 FE2D 059A 0062;0061 302A 0316 FE2D 059A 0062;0061 302A 0316 FE2D 059A 0062;0061 302A 0316 FE2D 059A 0062; # (a◌֚◌̖◌〪◌︭b; a◌〪◌̖◌︭◌֚b; a◌〪◌̖◌︭◌֚b; a◌〪◌̖◌︭◌֚b; a◌〪◌̖◌︭◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, COMBINING CONJOINING MACRON BELOW, LATIN SMALL LETTER B
+0061 FE2D 059A 0316 302A 0062;0061 302A FE2D 0316 059A 0062;0061 302A FE2D 0316 059A 0062;0061 302A FE2D 0316 059A 0062;0061 302A FE2D 0316 059A 0062; # (a◌︭◌֚◌̖◌〪b; a◌〪◌︭◌̖◌֚b; a◌〪◌︭◌̖◌֚b; a◌〪◌︭◌̖◌֚b; a◌〪◌︭◌̖◌֚b; ) LATIN SMALL LETTER A, COMBINING CONJOINING MACRON BELOW, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
 0061 059A 0316 302A 101FD 0062;0061 302A 0316 101FD 059A 0062;0061 302A 0316 101FD 059A 0062;0061 302A 0316 101FD 059A 0062;0061 302A 0316 101FD 059A 0062; # (a◌֚◌̖◌〪◌𐇽b; a◌〪◌̖◌𐇽◌֚b; a◌〪◌̖◌𐇽◌֚b; a◌〪◌̖◌𐇽◌֚b; a◌〪◌̖◌𐇽◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, PHAISTOS DISC SIGN COMBINING OBLIQUE STROKE, LATIN SMALL LETTER B
 0061 101FD 059A 0316 302A 0062;0061 302A 101FD 0316 059A 0062;0061 302A 101FD 0316 059A 0062;0061 302A 101FD 0316 059A 0062;0061 302A 101FD 0316 059A 0062; # (a◌𐇽◌֚◌̖◌〪b; a◌〪◌𐇽◌̖◌֚b; a◌〪◌𐇽◌̖◌֚b; a◌〪◌𐇽◌̖◌֚b; a◌〪◌𐇽◌̖◌֚b; ) LATIN SMALL LETTER A, PHAISTOS DISC SIGN COMBINING OBLIQUE STROKE, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
+0061 059A 0316 302A 102E0 0062;0061 302A 0316 102E0 059A 0062;0061 302A 0316 102E0 059A 0062;0061 302A 0316 102E0 059A 0062;0061 302A 0316 102E0 059A 0062; # (a◌֚◌̖◌〪◌𐋠b; a◌〪◌̖◌𐋠◌֚b; a◌〪◌̖◌𐋠◌֚b; a◌〪◌̖◌𐋠◌֚b; a◌〪◌̖◌𐋠◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, COPTIC EPACT THOUSANDS MARK, LATIN SMALL LETTER B
+0061 102E0 059A 0316 302A 0062;0061 302A 102E0 0316 059A 0062;0061 302A 102E0 0316 059A 0062;0061 302A 102E0 0316 059A 0062;0061 302A 102E0 0316 059A 0062; # (a◌𐋠◌֚◌̖◌〪b; a◌〪◌𐋠◌̖◌֚b; a◌〪◌𐋠◌̖◌֚b; a◌〪◌𐋠◌̖◌֚b; a◌〪◌𐋠◌̖◌֚b; ) LATIN SMALL LETTER A, COPTIC EPACT THOUSANDS MARK, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
+0061 0315 0300 05AE 10376 0062;00E0 05AE 10376 0315 0062;0061 05AE 0300 10376 0315 0062;00E0 05AE 10376 0315 0062;0061 05AE 0300 10376 0315 0062; # (a◌̕◌̀◌֮◌𐍶b; à◌֮◌𐍶◌̕b; a◌֮◌̀◌𐍶◌̕b; à◌֮◌𐍶◌̕b; a◌֮◌̀◌𐍶◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING OLD PERMIC LETTER AN, LATIN SMALL LETTER B
+0061 10376 0315 0300 05AE 0062;0061 05AE 10376 0300 0315 0062;0061 05AE 10376 0300 0315 0062;0061 05AE 10376 0300 0315 0062;0061 05AE 10376 0300 0315 0062; # (a◌𐍶◌̕◌̀◌֮b; a◌֮◌𐍶◌̀◌̕b; a◌֮◌𐍶◌̀◌̕b; a◌֮◌𐍶◌̀◌̕b; a◌֮◌𐍶◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING OLD PERMIC LETTER AN, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 10377 0062;00E0 05AE 10377 0315 0062;0061 05AE 0300 10377 0315 0062;00E0 05AE 10377 0315 0062;0061 05AE 0300 10377 0315 0062; # (a◌̕◌̀◌֮◌𐍷b; à◌֮◌𐍷◌̕b; a◌֮◌̀◌𐍷◌̕b; à◌֮◌𐍷◌̕b; a◌֮◌̀◌𐍷◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING OLD PERMIC LETTER DOI, LATIN SMALL LETTER B
+0061 10377 0315 0300 05AE 0062;0061 05AE 10377 0300 0315 0062;0061 05AE 10377 0300 0315 0062;0061 05AE 10377 0300 0315 0062;0061 05AE 10377 0300 0315 0062; # (a◌𐍷◌̕◌̀◌֮b; a◌֮◌𐍷◌̀◌̕b; a◌֮◌𐍷◌̀◌̕b; a◌֮◌𐍷◌̀◌̕b; a◌֮◌𐍷◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING OLD PERMIC LETTER DOI, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 10378 0062;00E0 05AE 10378 0315 0062;0061 05AE 0300 10378 0315 0062;00E0 05AE 10378 0315 0062;0061 05AE 0300 10378 0315 0062; # (a◌̕◌̀◌֮◌𐍸b; à◌֮◌𐍸◌̕b; a◌֮◌̀◌𐍸◌̕b; à◌֮◌𐍸◌̕b; a◌֮◌̀◌𐍸◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING OLD PERMIC LETTER ZATA, LATIN SMALL LETTER B
+0061 10378 0315 0300 05AE 0062;0061 05AE 10378 0300 0315 0062;0061 05AE 10378 0300 0315 0062;0061 05AE 10378 0300 0315 0062;0061 05AE 10378 0300 0315 0062; # (a◌𐍸◌̕◌̀◌֮b; a◌֮◌𐍸◌̀◌̕b; a◌֮◌𐍸◌̀◌̕b; a◌֮◌𐍸◌̀◌̕b; a◌֮◌𐍸◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING OLD PERMIC LETTER ZATA, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 10379 0062;00E0 05AE 10379 0315 0062;0061 05AE 0300 10379 0315 0062;00E0 05AE 10379 0315 0062;0061 05AE 0300 10379 0315 0062; # (a◌̕◌̀◌֮◌𐍹b; à◌֮◌𐍹◌̕b; a◌֮◌̀◌𐍹◌̕b; à◌֮◌𐍹◌̕b; a◌֮◌̀◌𐍹◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING OLD PERMIC LETTER NENOE, LATIN SMALL LETTER B
+0061 10379 0315 0300 05AE 0062;0061 05AE 10379 0300 0315 0062;0061 05AE 10379 0300 0315 0062;0061 05AE 10379 0300 0315 0062;0061 05AE 10379 0300 0315 0062; # (a◌𐍹◌̕◌̀◌֮b; a◌֮◌𐍹◌̀◌̕b; a◌֮◌𐍹◌̀◌̕b; a◌֮◌𐍹◌̀◌̕b; a◌֮◌𐍹◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING OLD PERMIC LETTER NENOE, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1037A 0062;00E0 05AE 1037A 0315 0062;0061 05AE 0300 1037A 0315 0062;00E0 05AE 1037A 0315 0062;0061 05AE 0300 1037A 0315 0062; # (a◌̕◌̀◌֮◌𐍺b; à◌֮◌𐍺◌̕b; a◌֮◌̀◌𐍺◌̕b; à◌֮◌𐍺◌̕b; a◌֮◌̀◌𐍺◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING OLD PERMIC LETTER SII, LATIN SMALL LETTER B
+0061 1037A 0315 0300 05AE 0062;0061 05AE 1037A 0300 0315 0062;0061 05AE 1037A 0300 0315 0062;0061 05AE 1037A 0300 0315 0062;0061 05AE 1037A 0300 0315 0062; # (a◌𐍺◌̕◌̀◌֮b; a◌֮◌𐍺◌̀◌̕b; a◌֮◌𐍺◌̀◌̕b; a◌֮◌𐍺◌̀◌̕b; a◌֮◌𐍺◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING OLD PERMIC LETTER SII, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
 0061 059A 0316 302A 10A0D 0062;0061 302A 0316 10A0D 059A 0062;0061 302A 0316 10A0D 059A 0062;0061 302A 0316 10A0D 059A 0062;0061 302A 0316 10A0D 059A 0062; # (a◌֚◌̖◌〪◌𐨍b; a◌〪◌̖◌𐨍◌֚b; a◌〪◌̖◌𐨍◌֚b; a◌〪◌̖◌𐨍◌֚b; a◌〪◌̖◌𐨍◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, KHAROSHTHI SIGN DOUBLE RING BELOW, LATIN SMALL LETTER B
 0061 10A0D 059A 0316 302A 0062;0061 302A 10A0D 0316 059A 0062;0061 302A 10A0D 0316 059A 0062;0061 302A 10A0D 0316 059A 0062;0061 302A 10A0D 0316 059A 0062; # (a◌𐨍◌֚◌̖◌〪b; a◌〪◌𐨍◌̖◌֚b; a◌〪◌𐨍◌̖◌֚b; a◌〪◌𐨍◌̖◌֚b; a◌〪◌𐨍◌̖◌֚b; ) LATIN SMALL LETTER A, KHAROSHTHI SIGN DOUBLE RING BELOW, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
 0061 0315 0300 05AE 10A0F 0062;00E0 05AE 10A0F 0315 0062;0061 05AE 0300 10A0F 0315 0062;00E0 05AE 10A0F 0315 0062;0061 05AE 0300 10A0F 0315 0062; # (a◌̕◌̀◌֮◌𐨏b; à◌֮◌𐨏◌̕b; a◌֮◌̀◌𐨏◌̕b; à◌֮◌𐨏◌̕b; a◌֮◌̀◌𐨏◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, KHAROSHTHI SIGN VISARGA, LATIN SMALL LETTER B
@@ -18168,8 +18271,14 @@
 0061 10A3A 059A 0316 302A 0062;0061 302A 10A3A 0316 059A 0062;0061 302A 10A3A 0316 059A 0062;0061 302A 10A3A 0316 059A 0062;0061 302A 10A3A 0316 059A 0062; # (a◌𐨺◌֚◌̖◌〪b; a◌〪◌𐨺◌̖◌֚b; a◌〪◌𐨺◌̖◌֚b; a◌〪◌𐨺◌̖◌֚b; a◌〪◌𐨺◌̖◌֚b; ) LATIN SMALL LETTER A, KHAROSHTHI SIGN DOT BELOW, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
 0061 05B0 094D 3099 10A3F 0062;0061 3099 094D 10A3F 05B0 0062;0061 3099 094D 10A3F 05B0 0062;0061 3099 094D 10A3F 05B0 0062;0061 3099 094D 10A3F 05B0 0062; # (a◌ְ◌्◌゙◌𐨿b; a◌゙◌्◌𐨿◌ְb; a◌゙◌्◌𐨿◌ְb; a◌゙◌्◌𐨿◌ְb; a◌゙◌्◌𐨿◌ְb; ) LATIN SMALL LETTER A, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, KHAROSHTHI VIRAMA, LATIN SMALL LETTER B
 0061 10A3F 05B0 094D 3099 0062;0061 3099 10A3F 094D 05B0 0062;0061 3099 10A3F 094D 05B0 0062;0061 3099 10A3F 094D 05B0 0062;0061 3099 10A3F 094D 05B0 0062; # (a◌𐨿◌ְ◌्◌゙b; a◌゙◌𐨿◌्◌ְb; a◌゙◌𐨿◌्◌ְb; a◌゙◌𐨿◌्◌ְb; a◌゙◌𐨿◌्◌ְb; ) LATIN SMALL LETTER A, KHAROSHTHI VIRAMA, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, LATIN SMALL LETTER B
+0061 0315 0300 05AE 10AE5 0062;00E0 05AE 10AE5 0315 0062;0061 05AE 0300 10AE5 0315 0062;00E0 05AE 10AE5 0315 0062;0061 05AE 0300 10AE5 0315 0062; # (a◌̕◌̀◌֮◌𐫥b; à◌֮◌𐫥◌̕b; a◌֮◌̀◌𐫥◌̕b; à◌֮◌𐫥◌̕b; a◌֮◌̀◌𐫥◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, MANICHAEAN ABBREVIATION MARK ABOVE, LATIN SMALL LETTER B
+0061 10AE5 0315 0300 05AE 0062;0061 05AE 10AE5 0300 0315 0062;0061 05AE 10AE5 0300 0315 0062;0061 05AE 10AE5 0300 0315 0062;0061 05AE 10AE5 0300 0315 0062; # (a◌𐫥◌̕◌̀◌֮b; a◌֮◌𐫥◌̀◌̕b; a◌֮◌𐫥◌̀◌̕b; a◌֮◌𐫥◌̀◌̕b; a◌֮◌𐫥◌̀◌̕b; ) LATIN SMALL LETTER A, MANICHAEAN ABBREVIATION MARK ABOVE, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 059A 0316 302A 10AE6 0062;0061 302A 0316 10AE6 059A 0062;0061 302A 0316 10AE6 059A 0062;0061 302A 0316 10AE6 059A 0062;0061 302A 0316 10AE6 059A 0062; # (a◌֚◌̖◌〪◌𐫦b; a◌〪◌̖◌𐫦◌֚b; a◌〪◌̖◌𐫦◌֚b; a◌〪◌̖◌𐫦◌֚b; a◌〪◌̖◌𐫦◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, MANICHAEAN ABBREVIATION MARK BELOW, LATIN SMALL LETTER B
+0061 10AE6 059A 0316 302A 0062;0061 302A 10AE6 0316 059A 0062;0061 302A 10AE6 0316 059A 0062;0061 302A 10AE6 0316 059A 0062;0061 302A 10AE6 0316 059A 0062; # (a◌𐫦◌֚◌̖◌〪b; a◌〪◌𐫦◌̖◌֚b; a◌〪◌𐫦◌̖◌֚b; a◌〪◌𐫦◌̖◌֚b; a◌〪◌𐫦◌̖◌֚b; ) LATIN SMALL LETTER A, MANICHAEAN ABBREVIATION MARK BELOW, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
 0061 05B0 094D 3099 11046 0062;0061 3099 094D 11046 05B0 0062;0061 3099 094D 11046 05B0 0062;0061 3099 094D 11046 05B0 0062;0061 3099 094D 11046 05B0 0062; # (a◌ְ◌्◌゙◌𑁆b; a◌゙◌्◌𑁆◌ְb; a◌゙◌्◌𑁆◌ְb; a◌゙◌्◌𑁆◌ְb; a◌゙◌्◌𑁆◌ְb; ) LATIN SMALL LETTER A, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, BRAHMI VIRAMA, LATIN SMALL LETTER B
 0061 11046 05B0 094D 3099 0062;0061 3099 11046 094D 05B0 0062;0061 3099 11046 094D 05B0 0062;0061 3099 11046 094D 05B0 0062;0061 3099 11046 094D 05B0 0062; # (a◌𑁆◌ְ◌्◌゙b; a◌゙◌𑁆◌्◌ְb; a◌゙◌𑁆◌्◌ְb; a◌゙◌𑁆◌्◌ְb; a◌゙◌𑁆◌्◌ְb; ) LATIN SMALL LETTER A, BRAHMI VIRAMA, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, LATIN SMALL LETTER B
+0061 05B0 094D 3099 1107F 0062;0061 3099 094D 1107F 05B0 0062;0061 3099 094D 1107F 05B0 0062;0061 3099 094D 1107F 05B0 0062;0061 3099 094D 1107F 05B0 0062; # (a◌ְ◌्◌゙◌𑁿b; a◌゙◌्◌𑁿◌ְb; a◌゙◌्◌𑁿◌ְb; a◌゙◌्◌𑁿◌ְb; a◌゙◌्◌𑁿◌ְb; ) LATIN SMALL LETTER A, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, BRAHMI NUMBER JOINER, LATIN SMALL LETTER B
+0061 1107F 05B0 094D 3099 0062;0061 3099 1107F 094D 05B0 0062;0061 3099 1107F 094D 05B0 0062;0061 3099 1107F 094D 05B0 0062;0061 3099 1107F 094D 05B0 0062; # (a◌𑁿◌ְ◌्◌゙b; a◌゙◌𑁿◌्◌ְb; a◌゙◌𑁿◌्◌ְb; a◌゙◌𑁿◌्◌ְb; a◌゙◌𑁿◌्◌ְb; ) LATIN SMALL LETTER A, BRAHMI NUMBER JOINER, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, LATIN SMALL LETTER B
 0061 05B0 094D 3099 110B9 0062;0061 3099 094D 110B9 05B0 0062;0061 3099 094D 110B9 05B0 0062;0061 3099 094D 110B9 05B0 0062;0061 3099 094D 110B9 05B0 0062; # (a◌ְ◌्◌゙◌𑂹b; a◌゙◌्◌𑂹◌ְb; a◌゙◌्◌𑂹◌ְb; a◌゙◌्◌𑂹◌ְb; a◌゙◌्◌𑂹◌ְb; ) LATIN SMALL LETTER A, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, KAITHI SIGN VIRAMA, LATIN SMALL LETTER B
 0061 110B9 05B0 094D 3099 0062;0061 3099 110B9 094D 05B0 0062;0061 3099 110B9 094D 05B0 0062;0061 3099 110B9 094D 05B0 0062;0061 3099 110B9 094D 05B0 0062; # (a◌𑂹◌ְ◌्◌゙b; a◌゙◌𑂹◌्◌ְb; a◌゙◌𑂹◌्◌ְb; a◌゙◌𑂹◌्◌ְb; a◌゙◌𑂹◌्◌ְb; ) LATIN SMALL LETTER A, KAITHI SIGN VIRAMA, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, LATIN SMALL LETTER B
 0061 3099 093C 0334 110BA 0062;0061 0334 093C 110BA 3099 0062;0061 0334 093C 110BA 3099 0062;0061 0334 093C 110BA 3099 0062;0061 0334 093C 110BA 3099 0062; # (a◌゙◌़◌̴◌𑂺b; a◌̴◌़◌𑂺◌゙b; a◌̴◌़◌𑂺◌゙b; a◌̴◌़◌𑂺◌゙b; a◌̴◌़◌𑂺◌゙b; ) LATIN SMALL LETTER A, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, KAITHI SIGN NUKTA, LATIN SMALL LETTER B
@@ -18184,12 +18293,86 @@
 0061 11133 05B0 094D 3099 0062;0061 3099 11133 094D 05B0 0062;0061 3099 11133 094D 05B0 0062;0061 3099 11133 094D 05B0 0062;0061 3099 11133 094D 05B0 0062; # (a◌𑄳◌ְ◌्◌゙b; a◌゙◌𑄳◌्◌ְb; a◌゙◌𑄳◌्◌ְb; a◌゙◌𑄳◌्◌ְb; a◌゙◌𑄳◌्◌ְb; ) LATIN SMALL LETTER A, CHAKMA VIRAMA, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, LATIN SMALL LETTER B
 0061 05B0 094D 3099 11134 0062;0061 3099 094D 11134 05B0 0062;0061 3099 094D 11134 05B0 0062;0061 3099 094D 11134 05B0 0062;0061 3099 094D 11134 05B0 0062; # (a◌ְ◌्◌゙◌𑄴b; a◌゙◌्◌𑄴◌ְb; a◌゙◌्◌𑄴◌ְb; a◌゙◌्◌𑄴◌ְb; a◌゙◌्◌𑄴◌ְb; ) LATIN SMALL LETTER A, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, CHAKMA MAAYYAA, LATIN SMALL LETTER B
 0061 11134 05B0 094D 3099 0062;0061 3099 11134 094D 05B0 0062;0061 3099 11134 094D 05B0 0062;0061 3099 11134 094D 05B0 0062;0061 3099 11134 094D 05B0 0062; # (a◌𑄴◌ְ◌्◌゙b; a◌゙◌𑄴◌्◌ְb; a◌゙◌𑄴◌्◌ְb; a◌゙◌𑄴◌्◌ְb; a◌゙◌𑄴◌्◌ְb; ) LATIN SMALL LETTER A, CHAKMA MAAYYAA, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, LATIN SMALL LETTER B
+0061 3099 093C 0334 11173 0062;0061 0334 093C 11173 3099 0062;0061 0334 093C 11173 3099 0062;0061 0334 093C 11173 3099 0062;0061 0334 093C 11173 3099 0062; # (a◌゙◌़◌̴◌𑅳b; a◌̴◌़◌𑅳◌゙b; a◌̴◌़◌𑅳◌゙b; a◌̴◌़◌𑅳◌゙b; a◌̴◌़◌𑅳◌゙b; ) LATIN SMALL LETTER A, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, MAHAJANI SIGN NUKTA, LATIN SMALL LETTER B
+0061 11173 3099 093C 0334 0062;0061 0334 11173 093C 3099 0062;0061 0334 11173 093C 3099 0062;0061 0334 11173 093C 3099 0062;0061 0334 11173 093C 3099 0062; # (a◌𑅳◌゙◌़◌̴b; a◌̴◌𑅳◌़◌゙b; a◌̴◌𑅳◌़◌゙b; a◌̴◌𑅳◌़◌゙b; a◌̴◌𑅳◌़◌゙b; ) LATIN SMALL LETTER A, MAHAJANI SIGN NUKTA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, LATIN SMALL LETTER B
 0061 05B0 094D 3099 111C0 0062;0061 3099 094D 111C0 05B0 0062;0061 3099 094D 111C0 05B0 0062;0061 3099 094D 111C0 05B0 0062;0061 3099 094D 111C0 05B0 0062; # (a◌ְ◌्◌゙𑇀b; a◌゙◌्𑇀◌ְb; a◌゙◌्𑇀◌ְb; a◌゙◌्𑇀◌ְb; a◌゙◌्𑇀◌ְb; ) LATIN SMALL LETTER A, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, SHARADA SIGN VIRAMA, LATIN SMALL LETTER B
 0061 111C0 05B0 094D 3099 0062;0061 3099 111C0 094D 05B0 0062;0061 3099 111C0 094D 05B0 0062;0061 3099 111C0 094D 05B0 0062;0061 3099 111C0 094D 05B0 0062; # (a𑇀◌ְ◌्◌゙b; a◌゙𑇀◌्◌ְb; a◌゙𑇀◌्◌ְb; a◌゙𑇀◌्◌ְb; a◌゙𑇀◌्◌ְb; ) LATIN SMALL LETTER A, SHARADA SIGN VIRAMA, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, LATIN SMALL LETTER B
+0061 05B0 094D 3099 11235 0062;0061 3099 094D 11235 05B0 0062;0061 3099 094D 11235 05B0 0062;0061 3099 094D 11235 05B0 0062;0061 3099 094D 11235 05B0 0062; # (a◌ְ◌्◌゙𑈵b; a◌゙◌्𑈵◌ְb; a◌゙◌्𑈵◌ְb; a◌゙◌्𑈵◌ְb; a◌゙◌्𑈵◌ְb; ) LATIN SMALL LETTER A, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, KHOJKI SIGN VIRAMA, LATIN SMALL LETTER B
+0061 11235 05B0 094D 3099 0062;0061 3099 11235 094D 05B0 0062;0061 3099 11235 094D 05B0 0062;0061 3099 11235 094D 05B0 0062;0061 3099 11235 094D 05B0 0062; # (a𑈵◌ְ◌्◌゙b; a◌゙𑈵◌्◌ְb; a◌゙𑈵◌्◌ְb; a◌゙𑈵◌्◌ְb; a◌゙𑈵◌्◌ְb; ) LATIN SMALL LETTER A, KHOJKI SIGN VIRAMA, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, LATIN SMALL LETTER B
+0061 3099 093C 0334 11236 0062;0061 0334 093C 11236 3099 0062;0061 0334 093C 11236 3099 0062;0061 0334 093C 11236 3099 0062;0061 0334 093C 11236 3099 0062; # (a◌゙◌़◌̴◌𑈶b; a◌̴◌़◌𑈶◌゙b; a◌̴◌़◌𑈶◌゙b; a◌̴◌़◌𑈶◌゙b; a◌̴◌़◌𑈶◌゙b; ) LATIN SMALL LETTER A, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, KHOJKI SIGN NUKTA, LATIN SMALL LETTER B
+0061 11236 3099 093C 0334 0062;0061 0334 11236 093C 3099 0062;0061 0334 11236 093C 3099 0062;0061 0334 11236 093C 3099 0062;0061 0334 11236 093C 3099 0062; # (a◌𑈶◌゙◌़◌̴b; a◌̴◌𑈶◌़◌゙b; a◌̴◌𑈶◌़◌゙b; a◌̴◌𑈶◌़◌゙b; a◌̴◌𑈶◌़◌゙b; ) LATIN SMALL LETTER A, KHOJKI SIGN NUKTA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, LATIN SMALL LETTER B
+0061 3099 093C 0334 112E9 0062;0061 0334 093C 112E9 3099 0062;0061 0334 093C 112E9 3099 0062;0061 0334 093C 112E9 3099 0062;0061 0334 093C 112E9 3099 0062; # (a◌゙◌़◌̴◌𑋩b; a◌̴◌़◌𑋩◌゙b; a◌̴◌़◌𑋩◌゙b; a◌̴◌़◌𑋩◌゙b; a◌̴◌़◌𑋩◌゙b; ) LATIN SMALL LETTER A, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, KHUDAWADI SIGN NUKTA, LATIN SMALL LETTER B
+0061 112E9 3099 093C 0334 0062;0061 0334 112E9 093C 3099 0062;0061 0334 112E9 093C 3099 0062;0061 0334 112E9 093C 3099 0062;0061 0334 112E9 093C 3099 0062; # (a◌𑋩◌゙◌़◌̴b; a◌̴◌𑋩◌़◌゙b; a◌̴◌𑋩◌़◌゙b; a◌̴◌𑋩◌़◌゙b; a◌̴◌𑋩◌़◌゙b; ) LATIN SMALL LETTER A, KHUDAWADI SIGN NUKTA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, LATIN SMALL LETTER B
+0061 05B0 094D 3099 112EA 0062;0061 3099 094D 112EA 05B0 0062;0061 3099 094D 112EA 05B0 0062;0061 3099 094D 112EA 05B0 0062;0061 3099 094D 112EA 05B0 0062; # (a◌ְ◌्◌゙◌𑋪b; a◌゙◌्◌𑋪◌ְb; a◌゙◌्◌𑋪◌ְb; a◌゙◌्◌𑋪◌ְb; a◌゙◌्◌𑋪◌ְb; ) LATIN SMALL LETTER A, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, KHUDAWADI SIGN VIRAMA, LATIN SMALL LETTER B
+0061 112EA 05B0 094D 3099 0062;0061 3099 112EA 094D 05B0 0062;0061 3099 112EA 094D 05B0 0062;0061 3099 112EA 094D 05B0 0062;0061 3099 112EA 094D 05B0 0062; # (a◌𑋪◌ְ◌्◌゙b; a◌゙◌𑋪◌्◌ְb; a◌゙◌𑋪◌्◌ְb; a◌゙◌𑋪◌्◌ְb; a◌゙◌𑋪◌्◌ְb; ) LATIN SMALL LETTER A, KHUDAWADI SIGN VIRAMA, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, LATIN SMALL LETTER B
+0061 3099 093C 0334 1133C 0062;0061 0334 093C 1133C 3099 0062;0061 0334 093C 1133C 3099 0062;0061 0334 093C 1133C 3099 0062;0061 0334 093C 1133C 3099 0062; # (a◌゙◌़◌̴◌𑌼b; a◌̴◌़◌𑌼◌゙b; a◌̴◌़◌𑌼◌゙b; a◌̴◌़◌𑌼◌゙b; a◌̴◌़◌𑌼◌゙b; ) LATIN SMALL LETTER A, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, GRANTHA SIGN NUKTA, LATIN SMALL LETTER B
+0061 1133C 3099 093C 0334 0062;0061 0334 1133C 093C 3099 0062;0061 0334 1133C 093C 3099 0062;0061 0334 1133C 093C 3099 0062;0061 0334 1133C 093C 3099 0062; # (a◌𑌼◌゙◌़◌̴b; a◌̴◌𑌼◌़◌゙b; a◌̴◌𑌼◌़◌゙b; a◌̴◌𑌼◌़◌゙b; a◌̴◌𑌼◌़◌゙b; ) LATIN SMALL LETTER A, GRANTHA SIGN NUKTA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, LATIN SMALL LETTER B
+0061 05B0 094D 3099 1134D 0062;0061 3099 094D 1134D 05B0 0062;0061 3099 094D 1134D 05B0 0062;0061 3099 094D 1134D 05B0 0062;0061 3099 094D 1134D 05B0 0062; # (a◌ְ◌्◌゙𑍍b; a◌゙◌्𑍍◌ְb; a◌゙◌्𑍍◌ְb; a◌゙◌्𑍍◌ְb; a◌゙◌्𑍍◌ְb; ) LATIN SMALL LETTER A, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, GRANTHA SIGN VIRAMA, LATIN SMALL LETTER B
+0061 1134D 05B0 094D 3099 0062;0061 3099 1134D 094D 05B0 0062;0061 3099 1134D 094D 05B0 0062;0061 3099 1134D 094D 05B0 0062;0061 3099 1134D 094D 05B0 0062; # (a𑍍◌ְ◌्◌゙b; a◌゙𑍍◌्◌ְb; a◌゙𑍍◌्◌ְb; a◌゙𑍍◌्◌ְb; a◌゙𑍍◌्◌ְb; ) LATIN SMALL LETTER A, GRANTHA SIGN VIRAMA, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, LATIN SMALL LETTER B
+0061 0315 0300 05AE 11366 0062;00E0 05AE 11366 0315 0062;0061 05AE 0300 11366 0315 0062;00E0 05AE 11366 0315 0062;0061 05AE 0300 11366 0315 0062; # (a◌̕◌̀◌֮◌𑍦b; à◌֮◌𑍦◌̕b; a◌֮◌̀◌𑍦◌̕b; à◌֮◌𑍦◌̕b; a◌֮◌̀◌𑍦◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING GRANTHA DIGIT ZERO, LATIN SMALL LETTER B
+0061 11366 0315 0300 05AE 0062;0061 05AE 11366 0300 0315 0062;0061 05AE 11366 0300 0315 0062;0061 05AE 11366 0300 0315 0062;0061 05AE 11366 0300 0315 0062; # (a◌𑍦◌̕◌̀◌֮b; a◌֮◌𑍦◌̀◌̕b; a◌֮◌𑍦◌̀◌̕b; a◌֮◌𑍦◌̀◌̕b; a◌֮◌𑍦◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING GRANTHA DIGIT ZERO, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 11367 0062;00E0 05AE 11367 0315 0062;0061 05AE 0300 11367 0315 0062;00E0 05AE 11367 0315 0062;0061 05AE 0300 11367 0315 0062; # (a◌̕◌̀◌֮◌𑍧b; à◌֮◌𑍧◌̕b; a◌֮◌̀◌𑍧◌̕b; à◌֮◌𑍧◌̕b; a◌֮◌̀◌𑍧◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING GRANTHA DIGIT ONE, LATIN SMALL LETTER B
+0061 11367 0315 0300 05AE 0062;0061 05AE 11367 0300 0315 0062;0061 05AE 11367 0300 0315 0062;0061 05AE 11367 0300 0315 0062;0061 05AE 11367 0300 0315 0062; # (a◌𑍧◌̕◌̀◌֮b; a◌֮◌𑍧◌̀◌̕b; a◌֮◌𑍧◌̀◌̕b; a◌֮◌𑍧◌̀◌̕b; a◌֮◌𑍧◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING GRANTHA DIGIT ONE, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 11368 0062;00E0 05AE 11368 0315 0062;0061 05AE 0300 11368 0315 0062;00E0 05AE 11368 0315 0062;0061 05AE 0300 11368 0315 0062; # (a◌̕◌̀◌֮◌𑍨b; à◌֮◌𑍨◌̕b; a◌֮◌̀◌𑍨◌̕b; à◌֮◌𑍨◌̕b; a◌֮◌̀◌𑍨◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING GRANTHA DIGIT TWO, LATIN SMALL LETTER B
+0061 11368 0315 0300 05AE 0062;0061 05AE 11368 0300 0315 0062;0061 05AE 11368 0300 0315 0062;0061 05AE 11368 0300 0315 0062;0061 05AE 11368 0300 0315 0062; # (a◌𑍨◌̕◌̀◌֮b; a◌֮◌𑍨◌̀◌̕b; a◌֮◌𑍨◌̀◌̕b; a◌֮◌𑍨◌̀◌̕b; a◌֮◌𑍨◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING GRANTHA DIGIT TWO, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 11369 0062;00E0 05AE 11369 0315 0062;0061 05AE 0300 11369 0315 0062;00E0 05AE 11369 0315 0062;0061 05AE 0300 11369 0315 0062; # (a◌̕◌̀◌֮◌𑍩b; à◌֮◌𑍩◌̕b; a◌֮◌̀◌𑍩◌̕b; à◌֮◌𑍩◌̕b; a◌֮◌̀◌𑍩◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING GRANTHA DIGIT THREE, LATIN SMALL LETTER B
+0061 11369 0315 0300 05AE 0062;0061 05AE 11369 0300 0315 0062;0061 05AE 11369 0300 0315 0062;0061 05AE 11369 0300 0315 0062;0061 05AE 11369 0300 0315 0062; # (a◌𑍩◌̕◌̀◌֮b; a◌֮◌𑍩◌̀◌̕b; a◌֮◌𑍩◌̀◌̕b; a◌֮◌𑍩◌̀◌̕b; a◌֮◌𑍩◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING GRANTHA DIGIT THREE, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1136A 0062;00E0 05AE 1136A 0315 0062;0061 05AE 0300 1136A 0315 0062;00E0 05AE 1136A 0315 0062;0061 05AE 0300 1136A 0315 0062; # (a◌̕◌̀◌֮◌𑍪b; à◌֮◌𑍪◌̕b; a◌֮◌̀◌𑍪◌̕b; à◌֮◌𑍪◌̕b; a◌֮◌̀◌𑍪◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING GRANTHA DIGIT FOUR, LATIN SMALL LETTER B
+0061 1136A 0315 0300 05AE 0062;0061 05AE 1136A 0300 0315 0062;0061 05AE 1136A 0300 0315 0062;0061 05AE 1136A 0300 0315 0062;0061 05AE 1136A 0300 0315 0062; # (a◌𑍪◌̕◌̀◌֮b; a◌֮◌𑍪◌̀◌̕b; a◌֮◌𑍪◌̀◌̕b; a◌֮◌𑍪◌̀◌̕b; a◌֮◌𑍪◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING GRANTHA DIGIT FOUR, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1136B 0062;00E0 05AE 1136B 0315 0062;0061 05AE 0300 1136B 0315 0062;00E0 05AE 1136B 0315 0062;0061 05AE 0300 1136B 0315 0062; # (a◌̕◌̀◌֮◌𑍫b; à◌֮◌𑍫◌̕b; a◌֮◌̀◌𑍫◌̕b; à◌֮◌𑍫◌̕b; a◌֮◌̀◌𑍫◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING GRANTHA DIGIT FIVE, LATIN SMALL LETTER B
+0061 1136B 0315 0300 05AE 0062;0061 05AE 1136B 0300 0315 0062;0061 05AE 1136B 0300 0315 0062;0061 05AE 1136B 0300 0315 0062;0061 05AE 1136B 0300 0315 0062; # (a◌𑍫◌̕◌̀◌֮b; a◌֮◌𑍫◌̀◌̕b; a◌֮◌𑍫◌̀◌̕b; a◌֮◌𑍫◌̀◌̕b; a◌֮◌𑍫◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING GRANTHA DIGIT FIVE, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 1136C 0062;00E0 05AE 1136C 0315 0062;0061 05AE 0300 1136C 0315 0062;00E0 05AE 1136C 0315 0062;0061 05AE 0300 1136C 0315 0062; # (a◌̕◌̀◌֮◌𑍬b; à◌֮◌𑍬◌̕b; a◌֮◌̀◌𑍬◌̕b; à◌֮◌𑍬◌̕b; a◌֮◌̀◌𑍬◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING GRANTHA DIGIT SIX, LATIN SMALL LETTER B
+0061 1136C 0315 0300 05AE 0062;0061 05AE 1136C 0300 0315 0062;0061 05AE 1136C 0300 0315 0062;0061 05AE 1136C 0300 0315 0062;0061 05AE 1136C 0300 0315 0062; # (a◌𑍬◌̕◌̀◌֮b; a◌֮◌𑍬◌̀◌̕b; a◌֮◌𑍬◌̀◌̕b; a◌֮◌𑍬◌̀◌̕b; a◌֮◌𑍬◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING GRANTHA DIGIT SIX, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 11370 0062;00E0 05AE 11370 0315 0062;0061 05AE 0300 11370 0315 0062;00E0 05AE 11370 0315 0062;0061 05AE 0300 11370 0315 0062; # (a◌̕◌̀◌֮◌𑍰b; à◌֮◌𑍰◌̕b; a◌֮◌̀◌𑍰◌̕b; à◌֮◌𑍰◌̕b; a◌֮◌̀◌𑍰◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING GRANTHA LETTER A, LATIN SMALL LETTER B
+0061 11370 0315 0300 05AE 0062;0061 05AE 11370 0300 0315 0062;0061 05AE 11370 0300 0315 0062;0061 05AE 11370 0300 0315 0062;0061 05AE 11370 0300 0315 0062; # (a◌𑍰◌̕◌̀◌֮b; a◌֮◌𑍰◌̀◌̕b; a◌֮◌𑍰◌̀◌̕b; a◌֮◌𑍰◌̀◌̕b; a◌֮◌𑍰◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING GRANTHA LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 11371 0062;00E0 05AE 11371 0315 0062;0061 05AE 0300 11371 0315 0062;00E0 05AE 11371 0315 0062;0061 05AE 0300 11371 0315 0062; # (a◌̕◌̀◌֮◌𑍱b; à◌֮◌𑍱◌̕b; a◌֮◌̀◌𑍱◌̕b; à◌֮◌𑍱◌̕b; a◌֮◌̀◌𑍱◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING GRANTHA LETTER KA, LATIN SMALL LETTER B
+0061 11371 0315 0300 05AE 0062;0061 05AE 11371 0300 0315 0062;0061 05AE 11371 0300 0315 0062;0061 05AE 11371 0300 0315 0062;0061 05AE 11371 0300 0315 0062; # (a◌𑍱◌̕◌̀◌֮b; a◌֮◌𑍱◌̀◌̕b; a◌֮◌𑍱◌̀◌̕b; a◌֮◌𑍱◌̀◌̕b; a◌֮◌𑍱◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING GRANTHA LETTER KA, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 11372 0062;00E0 05AE 11372 0315 0062;0061 05AE 0300 11372 0315 0062;00E0 05AE 11372 0315 0062;0061 05AE 0300 11372 0315 0062; # (a◌̕◌̀◌֮◌𑍲b; à◌֮◌𑍲◌̕b; a◌֮◌̀◌𑍲◌̕b; à◌֮◌𑍲◌̕b; a◌֮◌̀◌𑍲◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING GRANTHA LETTER NA, LATIN SMALL LETTER B
+0061 11372 0315 0300 05AE 0062;0061 05AE 11372 0300 0315 0062;0061 05AE 11372 0300 0315 0062;0061 05AE 11372 0300 0315 0062;0061 05AE 11372 0300 0315 0062; # (a◌𑍲◌̕◌̀◌֮b; a◌֮◌𑍲◌̀◌̕b; a◌֮◌𑍲◌̀◌̕b; a◌֮◌𑍲◌̀◌̕b; a◌֮◌𑍲◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING GRANTHA LETTER NA, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 11373 0062;00E0 05AE 11373 0315 0062;0061 05AE 0300 11373 0315 0062;00E0 05AE 11373 0315 0062;0061 05AE 0300 11373 0315 0062; # (a◌̕◌̀◌֮◌𑍳b; à◌֮◌𑍳◌̕b; a◌֮◌̀◌𑍳◌̕b; à◌֮◌𑍳◌̕b; a◌֮◌̀◌𑍳◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING GRANTHA LETTER VI, LATIN SMALL LETTER B
+0061 11373 0315 0300 05AE 0062;0061 05AE 11373 0300 0315 0062;0061 05AE 11373 0300 0315 0062;0061 05AE 11373 0300 0315 0062;0061 05AE 11373 0300 0315 0062; # (a◌𑍳◌̕◌̀◌֮b; a◌֮◌𑍳◌̀◌̕b; a◌֮◌𑍳◌̀◌̕b; a◌֮◌𑍳◌̀◌̕b; a◌֮◌𑍳◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING GRANTHA LETTER VI, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 11374 0062;00E0 05AE 11374 0315 0062;0061 05AE 0300 11374 0315 0062;00E0 05AE 11374 0315 0062;0061 05AE 0300 11374 0315 0062; # (a◌̕◌̀◌֮◌𑍴b; à◌֮◌𑍴◌̕b; a◌֮◌̀◌𑍴◌̕b; à◌֮◌𑍴◌̕b; a◌֮◌̀◌𑍴◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING GRANTHA LETTER PA, LATIN SMALL LETTER B
+0061 11374 0315 0300 05AE 0062;0061 05AE 11374 0300 0315 0062;0061 05AE 11374 0300 0315 0062;0061 05AE 11374 0300 0315 0062;0061 05AE 11374 0300 0315 0062; # (a◌𑍴◌̕◌̀◌֮b; a◌֮◌𑍴◌̀◌̕b; a◌֮◌𑍴◌̀◌̕b; a◌֮◌𑍴◌̀◌̕b; a◌֮◌𑍴◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING GRANTHA LETTER PA, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 05B0 094D 3099 114C2 0062;0061 3099 094D 114C2 05B0 0062;0061 3099 094D 114C2 05B0 0062;0061 3099 094D 114C2 05B0 0062;0061 3099 094D 114C2 05B0 0062; # (a◌ְ◌्◌゙◌𑓂b; a◌゙◌्◌𑓂◌ְb; a◌゙◌्◌𑓂◌ְb; a◌゙◌्◌𑓂◌ְb; a◌゙◌्◌𑓂◌ְb; ) LATIN SMALL LETTER A, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, TIRHUTA SIGN VIRAMA, LATIN SMALL LETTER B
+0061 114C2 05B0 094D 3099 0062;0061 3099 114C2 094D 05B0 0062;0061 3099 114C2 094D 05B0 0062;0061 3099 114C2 094D 05B0 0062;0061 3099 114C2 094D 05B0 0062; # (a◌𑓂◌ְ◌्◌゙b; a◌゙◌𑓂◌्◌ְb; a◌゙◌𑓂◌्◌ְb; a◌゙◌𑓂◌्◌ְb; a◌゙◌𑓂◌्◌ְb; ) LATIN SMALL LETTER A, TIRHUTA SIGN VIRAMA, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, LATIN SMALL LETTER B
+0061 3099 093C 0334 114C3 0062;0061 0334 093C 114C3 3099 0062;0061 0334 093C 114C3 3099 0062;0061 0334 093C 114C3 3099 0062;0061 0334 093C 114C3 3099 0062; # (a◌゙◌़◌̴◌𑓃b; a◌̴◌़◌𑓃◌゙b; a◌̴◌़◌𑓃◌゙b; a◌̴◌़◌𑓃◌゙b; a◌̴◌़◌𑓃◌゙b; ) LATIN SMALL LETTER A, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, TIRHUTA SIGN NUKTA, LATIN SMALL LETTER B
+0061 114C3 3099 093C 0334 0062;0061 0334 114C3 093C 3099 0062;0061 0334 114C3 093C 3099 0062;0061 0334 114C3 093C 3099 0062;0061 0334 114C3 093C 3099 0062; # (a◌𑓃◌゙◌़◌̴b; a◌̴◌𑓃◌़◌゙b; a◌̴◌𑓃◌़◌゙b; a◌̴◌𑓃◌़◌゙b; a◌̴◌𑓃◌़◌゙b; ) LATIN SMALL LETTER A, TIRHUTA SIGN NUKTA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, LATIN SMALL LETTER B
+0061 05B0 094D 3099 115BF 0062;0061 3099 094D 115BF 05B0 0062;0061 3099 094D 115BF 05B0 0062;0061 3099 094D 115BF 05B0 0062;0061 3099 094D 115BF 05B0 0062; # (a◌ְ◌्◌゙◌𑖿b; a◌゙◌्◌𑖿◌ְb; a◌゙◌्◌𑖿◌ְb; a◌゙◌्◌𑖿◌ְb; a◌゙◌्◌𑖿◌ְb; ) LATIN SMALL LETTER A, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, SIDDHAM SIGN VIRAMA, LATIN SMALL LETTER B
+0061 115BF 05B0 094D 3099 0062;0061 3099 115BF 094D 05B0 0062;0061 3099 115BF 094D 05B0 0062;0061 3099 115BF 094D 05B0 0062;0061 3099 115BF 094D 05B0 0062; # (a◌𑖿◌ְ◌्◌゙b; a◌゙◌𑖿◌्◌ְb; a◌゙◌𑖿◌्◌ְb; a◌゙◌𑖿◌्◌ְb; a◌゙◌𑖿◌्◌ְb; ) LATIN SMALL LETTER A, SIDDHAM SIGN VIRAMA, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, LATIN SMALL LETTER B
+0061 3099 093C 0334 115C0 0062;0061 0334 093C 115C0 3099 0062;0061 0334 093C 115C0 3099 0062;0061 0334 093C 115C0 3099 0062;0061 0334 093C 115C0 3099 0062; # (a◌゙◌़◌̴◌𑗀b; a◌̴◌़◌𑗀◌゙b; a◌̴◌़◌𑗀◌゙b; a◌̴◌़◌𑗀◌゙b; a◌̴◌़◌𑗀◌゙b; ) LATIN SMALL LETTER A, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, SIDDHAM SIGN NUKTA, LATIN SMALL LETTER B
+0061 115C0 3099 093C 0334 0062;0061 0334 115C0 093C 3099 0062;0061 0334 115C0 093C 3099 0062;0061 0334 115C0 093C 3099 0062;0061 0334 115C0 093C 3099 0062; # (a◌𑗀◌゙◌़◌̴b; a◌̴◌𑗀◌़◌゙b; a◌̴◌𑗀◌़◌゙b; a◌̴◌𑗀◌़◌゙b; a◌̴◌𑗀◌़◌゙b; ) LATIN SMALL LETTER A, SIDDHAM SIGN NUKTA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, LATIN SMALL LETTER B
+0061 05B0 094D 3099 1163F 0062;0061 3099 094D 1163F 05B0 0062;0061 3099 094D 1163F 05B0 0062;0061 3099 094D 1163F 05B0 0062;0061 3099 094D 1163F 05B0 0062; # (a◌ְ◌्◌゙◌𑘿b; a◌゙◌्◌𑘿◌ְb; a◌゙◌्◌𑘿◌ְb; a◌゙◌्◌𑘿◌ְb; a◌゙◌्◌𑘿◌ְb; ) LATIN SMALL LETTER A, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, MODI SIGN VIRAMA, LATIN SMALL LETTER B
+0061 1163F 05B0 094D 3099 0062;0061 3099 1163F 094D 05B0 0062;0061 3099 1163F 094D 05B0 0062;0061 3099 1163F 094D 05B0 0062;0061 3099 1163F 094D 05B0 0062; # (a◌𑘿◌ְ◌्◌゙b; a◌゙◌𑘿◌्◌ְb; a◌゙◌𑘿◌्◌ְb; a◌゙◌𑘿◌्◌ְb; a◌゙◌𑘿◌्◌ְb; ) LATIN SMALL LETTER A, MODI SIGN VIRAMA, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, LATIN SMALL LETTER B
 0061 05B0 094D 3099 116B6 0062;0061 3099 094D 116B6 05B0 0062;0061 3099 094D 116B6 05B0 0062;0061 3099 094D 116B6 05B0 0062;0061 3099 094D 116B6 05B0 0062; # (a◌ְ◌्◌゙𑚶b; a◌゙◌्𑚶◌ְb; a◌゙◌्𑚶◌ְb; a◌゙◌्𑚶◌ְb; a◌゙◌्𑚶◌ְb; ) LATIN SMALL LETTER A, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, TAKRI SIGN VIRAMA, LATIN SMALL LETTER B
 0061 116B6 05B0 094D 3099 0062;0061 3099 116B6 094D 05B0 0062;0061 3099 116B6 094D 05B0 0062;0061 3099 116B6 094D 05B0 0062;0061 3099 116B6 094D 05B0 0062; # (a𑚶◌ְ◌्◌゙b; a◌゙𑚶◌्◌ְb; a◌゙𑚶◌्◌ְb; a◌゙𑚶◌्◌ְb; a◌゙𑚶◌्◌ְb; ) LATIN SMALL LETTER A, TAKRI SIGN VIRAMA, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, LATIN SMALL LETTER B
 0061 3099 093C 0334 116B7 0062;0061 0334 093C 116B7 3099 0062;0061 0334 093C 116B7 3099 0062;0061 0334 093C 116B7 3099 0062;0061 0334 093C 116B7 3099 0062; # (a◌゙◌़◌̴◌𑚷b; a◌̴◌़◌𑚷◌゙b; a◌̴◌़◌𑚷◌゙b; a◌̴◌़◌𑚷◌゙b; a◌̴◌़◌𑚷◌゙b; ) LATIN SMALL LETTER A, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, TAKRI SIGN NUKTA, LATIN SMALL LETTER B
 0061 116B7 3099 093C 0334 0062;0061 0334 116B7 093C 3099 0062;0061 0334 116B7 093C 3099 0062;0061 0334 116B7 093C 3099 0062;0061 0334 116B7 093C 3099 0062; # (a◌𑚷◌゙◌़◌̴b; a◌̴◌𑚷◌़◌゙b; a◌̴◌𑚷◌़◌゙b; a◌̴◌𑚷◌़◌゙b; a◌̴◌𑚷◌़◌゙b; ) LATIN SMALL LETTER A, TAKRI SIGN NUKTA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, LATIN SMALL LETTER B
+0061 093C 0334 16AF0 0062;0061 0334 16AF0 093C 0062;0061 0334 16AF0 093C 0062;0061 0334 16AF0 093C 0062;0061 0334 16AF0 093C 0062; # (a◌़◌̴◌𖫰b; a◌̴◌𖫰◌़b; a◌̴◌𖫰◌़b; a◌̴◌𖫰◌़b; a◌̴◌𖫰◌़b; ) LATIN SMALL LETTER A, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, BASSA VAH COMBINING HIGH TONE, LATIN SMALL LETTER B
+0061 16AF0 093C 0334 0062;0061 16AF0 0334 093C 0062;0061 16AF0 0334 093C 0062;0061 16AF0 0334 093C 0062;0061 16AF0 0334 093C 0062; # (a◌𖫰◌़◌̴b; a◌𖫰◌̴◌़b; a◌𖫰◌̴◌़b; a◌𖫰◌̴◌़b; a◌𖫰◌̴◌़b; ) LATIN SMALL LETTER A, BASSA VAH COMBINING HIGH TONE, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, LATIN SMALL LETTER B
+0061 093C 0334 16AF1 0062;0061 0334 16AF1 093C 0062;0061 0334 16AF1 093C 0062;0061 0334 16AF1 093C 0062;0061 0334 16AF1 093C 0062; # (a◌़◌̴◌𖫱b; a◌̴◌𖫱◌़b; a◌̴◌𖫱◌़b; a◌̴◌𖫱◌़b; a◌̴◌𖫱◌़b; ) LATIN SMALL LETTER A, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, BASSA VAH COMBINING LOW TONE, LATIN SMALL LETTER B
+0061 16AF1 093C 0334 0062;0061 16AF1 0334 093C 0062;0061 16AF1 0334 093C 0062;0061 16AF1 0334 093C 0062;0061 16AF1 0334 093C 0062; # (a◌𖫱◌़◌̴b; a◌𖫱◌̴◌़b; a◌𖫱◌̴◌़b; a◌𖫱◌̴◌़b; a◌𖫱◌̴◌़b; ) LATIN SMALL LETTER A, BASSA VAH COMBINING LOW TONE, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, LATIN SMALL LETTER B
+0061 093C 0334 16AF2 0062;0061 0334 16AF2 093C 0062;0061 0334 16AF2 093C 0062;0061 0334 16AF2 093C 0062;0061 0334 16AF2 093C 0062; # (a◌़◌̴◌𖫲b; a◌̴◌𖫲◌़b; a◌̴◌𖫲◌़b; a◌̴◌𖫲◌़b; a◌̴◌𖫲◌़b; ) LATIN SMALL LETTER A, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, BASSA VAH COMBINING MID TONE, LATIN SMALL LETTER B
+0061 16AF2 093C 0334 0062;0061 16AF2 0334 093C 0062;0061 16AF2 0334 093C 0062;0061 16AF2 0334 093C 0062;0061 16AF2 0334 093C 0062; # (a◌𖫲◌़◌̴b; a◌𖫲◌̴◌़b; a◌𖫲◌̴◌़b; a◌𖫲◌̴◌़b; a◌𖫲◌̴◌़b; ) LATIN SMALL LETTER A, BASSA VAH COMBINING MID TONE, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, LATIN SMALL LETTER B
+0061 093C 0334 16AF3 0062;0061 0334 16AF3 093C 0062;0061 0334 16AF3 093C 0062;0061 0334 16AF3 093C 0062;0061 0334 16AF3 093C 0062; # (a◌़◌̴◌𖫳b; a◌̴◌𖫳◌़b; a◌̴◌𖫳◌़b; a◌̴◌𖫳◌़b; a◌̴◌𖫳◌़b; ) LATIN SMALL LETTER A, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, BASSA VAH COMBINING LOW-MID TONE, LATIN SMALL LETTER B
+0061 16AF3 093C 0334 0062;0061 16AF3 0334 093C 0062;0061 16AF3 0334 093C 0062;0061 16AF3 0334 093C 0062;0061 16AF3 0334 093C 0062; # (a◌𖫳◌़◌̴b; a◌𖫳◌̴◌़b; a◌𖫳◌̴◌़b; a◌𖫳◌̴◌़b; a◌𖫳◌̴◌़b; ) LATIN SMALL LETTER A, BASSA VAH COMBINING LOW-MID TONE, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, LATIN SMALL LETTER B
+0061 093C 0334 16AF4 0062;0061 0334 16AF4 093C 0062;0061 0334 16AF4 093C 0062;0061 0334 16AF4 093C 0062;0061 0334 16AF4 093C 0062; # (a◌़◌̴◌𖫴b; a◌̴◌𖫴◌़b; a◌̴◌𖫴◌़b; a◌̴◌𖫴◌़b; a◌̴◌𖫴◌़b; ) LATIN SMALL LETTER A, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, BASSA VAH COMBINING HIGH-LOW TONE, LATIN SMALL LETTER B
+0061 16AF4 093C 0334 0062;0061 16AF4 0334 093C 0062;0061 16AF4 0334 093C 0062;0061 16AF4 0334 093C 0062;0061 16AF4 0334 093C 0062; # (a◌𖫴◌़◌̴b; a◌𖫴◌̴◌़b; a◌𖫴◌̴◌़b; a◌𖫴◌̴◌़b; a◌𖫴◌̴◌़b; ) LATIN SMALL LETTER A, BASSA VAH COMBINING HIGH-LOW TONE, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, LATIN SMALL LETTER B
+0061 0315 0300 05AE 16B30 0062;00E0 05AE 16B30 0315 0062;0061 05AE 0300 16B30 0315 0062;00E0 05AE 16B30 0315 0062;0061 05AE 0300 16B30 0315 0062; # (a◌̕◌̀◌֮◌𖬰b; à◌֮◌𖬰◌̕b; a◌֮◌̀◌𖬰◌̕b; à◌֮◌𖬰◌̕b; a◌֮◌̀◌𖬰◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, PAHAWH HMONG MARK CIM TUB, LATIN SMALL LETTER B
+0061 16B30 0315 0300 05AE 0062;0061 05AE 16B30 0300 0315 0062;0061 05AE 16B30 0300 0315 0062;0061 05AE 16B30 0300 0315 0062;0061 05AE 16B30 0300 0315 0062; # (a◌𖬰◌̕◌̀◌֮b; a◌֮◌𖬰◌̀◌̕b; a◌֮◌𖬰◌̀◌̕b; a◌֮◌𖬰◌̀◌̕b; a◌֮◌𖬰◌̀◌̕b; ) LATIN SMALL LETTER A, PAHAWH HMONG MARK CIM TUB, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 16B31 0062;00E0 05AE 16B31 0315 0062;0061 05AE 0300 16B31 0315 0062;00E0 05AE 16B31 0315 0062;0061 05AE 0300 16B31 0315 0062; # (a◌̕◌̀◌֮◌𖬱b; à◌֮◌𖬱◌̕b; a◌֮◌̀◌𖬱◌̕b; à◌֮◌𖬱◌̕b; a◌֮◌̀◌𖬱◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, PAHAWH HMONG MARK CIM SO, LATIN SMALL LETTER B
+0061 16B31 0315 0300 05AE 0062;0061 05AE 16B31 0300 0315 0062;0061 05AE 16B31 0300 0315 0062;0061 05AE 16B31 0300 0315 0062;0061 05AE 16B31 0300 0315 0062; # (a◌𖬱◌̕◌̀◌֮b; a◌֮◌𖬱◌̀◌̕b; a◌֮◌𖬱◌̀◌̕b; a◌֮◌𖬱◌̀◌̕b; a◌֮◌𖬱◌̀◌̕b; ) LATIN SMALL LETTER A, PAHAWH HMONG MARK CIM SO, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 16B32 0062;00E0 05AE 16B32 0315 0062;0061 05AE 0300 16B32 0315 0062;00E0 05AE 16B32 0315 0062;0061 05AE 0300 16B32 0315 0062; # (a◌̕◌̀◌֮◌𖬲b; à◌֮◌𖬲◌̕b; a◌֮◌̀◌𖬲◌̕b; à◌֮◌𖬲◌̕b; a◌֮◌̀◌𖬲◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, PAHAWH HMONG MARK CIM KES, LATIN SMALL LETTER B
+0061 16B32 0315 0300 05AE 0062;0061 05AE 16B32 0300 0315 0062;0061 05AE 16B32 0300 0315 0062;0061 05AE 16B32 0300 0315 0062;0061 05AE 16B32 0300 0315 0062; # (a◌𖬲◌̕◌̀◌֮b; a◌֮◌𖬲◌̀◌̕b; a◌֮◌𖬲◌̀◌̕b; a◌֮◌𖬲◌̀◌̕b; a◌֮◌𖬲◌̀◌̕b; ) LATIN SMALL LETTER A, PAHAWH HMONG MARK CIM KES, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 16B33 0062;00E0 05AE 16B33 0315 0062;0061 05AE 0300 16B33 0315 0062;00E0 05AE 16B33 0315 0062;0061 05AE 0300 16B33 0315 0062; # (a◌̕◌̀◌֮◌𖬳b; à◌֮◌𖬳◌̕b; a◌֮◌̀◌𖬳◌̕b; à◌֮◌𖬳◌̕b; a◌֮◌̀◌𖬳◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, PAHAWH HMONG MARK CIM KHAV, LATIN SMALL LETTER B
+0061 16B33 0315 0300 05AE 0062;0061 05AE 16B33 0300 0315 0062;0061 05AE 16B33 0300 0315 0062;0061 05AE 16B33 0300 0315 0062;0061 05AE 16B33 0300 0315 0062; # (a◌𖬳◌̕◌̀◌֮b; a◌֮◌𖬳◌̀◌̕b; a◌֮◌𖬳◌̀◌̕b; a◌֮◌𖬳◌̀◌̕b; a◌֮◌𖬳◌̀◌̕b; ) LATIN SMALL LETTER A, PAHAWH HMONG MARK CIM KHAV, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 16B34 0062;00E0 05AE 16B34 0315 0062;0061 05AE 0300 16B34 0315 0062;00E0 05AE 16B34 0315 0062;0061 05AE 0300 16B34 0315 0062; # (a◌̕◌̀◌֮◌𖬴b; à◌֮◌𖬴◌̕b; a◌֮◌̀◌𖬴◌̕b; à◌֮◌𖬴◌̕b; a◌֮◌̀◌𖬴◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, PAHAWH HMONG MARK CIM SUAM, LATIN SMALL LETTER B
+0061 16B34 0315 0300 05AE 0062;0061 05AE 16B34 0300 0315 0062;0061 05AE 16B34 0300 0315 0062;0061 05AE 16B34 0300 0315 0062;0061 05AE 16B34 0300 0315 0062; # (a◌𖬴◌̕◌̀◌֮b; a◌֮◌𖬴◌̀◌̕b; a◌֮◌𖬴◌̀◌̕b; a◌֮◌𖬴◌̀◌̕b; a◌֮◌𖬴◌̀◌̕b; ) LATIN SMALL LETTER A, PAHAWH HMONG MARK CIM SUAM, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 16B35 0062;00E0 05AE 16B35 0315 0062;0061 05AE 0300 16B35 0315 0062;00E0 05AE 16B35 0315 0062;0061 05AE 0300 16B35 0315 0062; # (a◌̕◌̀◌֮◌𖬵b; à◌֮◌𖬵◌̕b; a◌֮◌̀◌𖬵◌̕b; à◌֮◌𖬵◌̕b; a◌֮◌̀◌𖬵◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, PAHAWH HMONG MARK CIM HOM, LATIN SMALL LETTER B
+0061 16B35 0315 0300 05AE 0062;0061 05AE 16B35 0300 0315 0062;0061 05AE 16B35 0300 0315 0062;0061 05AE 16B35 0300 0315 0062;0061 05AE 16B35 0300 0315 0062; # (a◌𖬵◌̕◌̀◌֮b; a◌֮◌𖬵◌̀◌̕b; a◌֮◌𖬵◌̀◌̕b; a◌֮◌𖬵◌̀◌̕b; a◌֮◌𖬵◌̀◌̕b; ) LATIN SMALL LETTER A, PAHAWH HMONG MARK CIM HOM, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 0315 0300 05AE 16B36 0062;00E0 05AE 16B36 0315 0062;0061 05AE 0300 16B36 0315 0062;00E0 05AE 16B36 0315 0062;0061 05AE 0300 16B36 0315 0062; # (a◌̕◌̀◌֮◌𖬶b; à◌֮◌𖬶◌̕b; a◌֮◌̀◌𖬶◌̕b; à◌֮◌𖬶◌̕b; a◌֮◌̀◌𖬶◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, PAHAWH HMONG MARK CIM TAUM, LATIN SMALL LETTER B
+0061 16B36 0315 0300 05AE 0062;0061 05AE 16B36 0300 0315 0062;0061 05AE 16B36 0300 0315 0062;0061 05AE 16B36 0300 0315 0062;0061 05AE 16B36 0300 0315 0062; # (a◌𖬶◌̕◌̀◌֮b; a◌֮◌𖬶◌̀◌̕b; a◌֮◌𖬶◌̀◌̕b; a◌֮◌𖬶◌̀◌̕b; a◌֮◌𖬶◌̀◌̕b; ) LATIN SMALL LETTER A, PAHAWH HMONG MARK CIM TAUM, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 093C 0334 1BC9E 0062;0061 0334 1BC9E 093C 0062;0061 0334 1BC9E 093C 0062;0061 0334 1BC9E 093C 0062;0061 0334 1BC9E 093C 0062; # (a◌़◌̴◌𛲞b; a◌̴◌𛲞◌़b; a◌̴◌𛲞◌़b; a◌̴◌𛲞◌़b; a◌̴◌𛲞◌़b; ) LATIN SMALL LETTER A, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, DUPLOYAN DOUBLE MARK, LATIN SMALL LETTER B
+0061 1BC9E 093C 0334 0062;0061 1BC9E 0334 093C 0062;0061 1BC9E 0334 093C 0062;0061 1BC9E 0334 093C 0062;0061 1BC9E 0334 093C 0062; # (a◌𛲞◌़◌̴b; a◌𛲞◌̴◌़b; a◌𛲞◌̴◌़b; a◌𛲞◌̴◌़b; a◌𛲞◌̴◌़b; ) LATIN SMALL LETTER A, DUPLOYAN DOUBLE MARK, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, LATIN SMALL LETTER B
 0061 302A 031B 1DCE 1D165 0062;0061 1DCE 031B 1D165 302A 0062;0061 1DCE 031B 1D165 302A 0062;0061 1DCE 031B 1D165 302A 0062;0061 1DCE 031B 1D165 302A 0062; # (a◌〪◌̛◌᷎𝅥b; a◌᷎◌̛𝅥◌〪b; a◌᷎◌̛𝅥◌〪b; a◌᷎◌̛𝅥◌〪b; a◌᷎◌̛𝅥◌〪b; ) LATIN SMALL LETTER A, IDEOGRAPHIC LEVEL TONE MARK, COMBINING HORN, COMBINING OGONEK ABOVE, MUSICAL SYMBOL COMBINING STEM, LATIN SMALL LETTER B
 0061 1D165 302A 031B 1DCE 0062;0061 1DCE 1D165 031B 302A 0062;0061 1DCE 1D165 031B 302A 0062;0061 1DCE 1D165 031B 302A 0062;0061 1DCE 1D165 031B 302A 0062; # (a𝅥◌〪◌̛◌᷎b; a◌᷎𝅥◌̛◌〪b; a◌᷎𝅥◌̛◌〪b; a◌᷎𝅥◌̛◌〪b; a◌᷎𝅥◌̛◌〪b; ) LATIN SMALL LETTER A, MUSICAL SYMBOL COMBINING STEM, IDEOGRAPHIC LEVEL TONE MARK, COMBINING HORN, COMBINING OGONEK ABOVE, LATIN SMALL LETTER B
 0061 302A 031B 1DCE 1D166 0062;0061 1DCE 031B 1D166 302A 0062;0061 1DCE 031B 1D166 302A 0062;0061 1DCE 031B 1D166 302A 0062;0061 1DCE 031B 1D166 302A 0062; # (a◌〪◌̛◌᷎𝅦b; a◌᷎◌̛𝅦◌〪b; a◌᷎◌̛𝅦◌〪b; a◌᷎◌̛𝅦◌〪b; a◌᷎◌̛𝅦◌〪b; ) LATIN SMALL LETTER A, IDEOGRAPHIC LEVEL TONE MARK, COMBINING HORN, COMBINING OGONEK ABOVE, MUSICAL SYMBOL COMBINING SPRECHGESANG STEM, LATIN SMALL LETTER B
@@ -18256,6 +18439,20 @@
 0061 1D243 0315 0300 05AE 0062;0061 05AE 1D243 0300 0315 0062;0061 05AE 1D243 0300 0315 0062;0061 05AE 1D243 0300 0315 0062;0061 05AE 1D243 0300 0315 0062; # (a◌𝉃◌̕◌̀◌֮b; a◌֮◌𝉃◌̀◌̕b; a◌֮◌𝉃◌̀◌̕b; a◌֮◌𝉃◌̀◌̕b; a◌֮◌𝉃◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING GREEK MUSICAL TETRASEME, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
 0061 0315 0300 05AE 1D244 0062;00E0 05AE 1D244 0315 0062;0061 05AE 0300 1D244 0315 0062;00E0 05AE 1D244 0315 0062;0061 05AE 0300 1D244 0315 0062; # (a◌̕◌̀◌֮◌𝉄b; à◌֮◌𝉄◌̕b; a◌֮◌̀◌𝉄◌̕b; à◌֮◌𝉄◌̕b; a◌֮◌̀◌𝉄◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING GREEK MUSICAL PENTASEME, LATIN SMALL LETTER B
 0061 1D244 0315 0300 05AE 0062;0061 05AE 1D244 0300 0315 0062;0061 05AE 1D244 0300 0315 0062;0061 05AE 1D244 0300 0315 0062;0061 05AE 1D244 0300 0315 0062; # (a◌𝉄◌̕◌̀◌֮b; a◌֮◌𝉄◌̀◌̕b; a◌֮◌𝉄◌̀◌̕b; a◌֮◌𝉄◌̀◌̕b; a◌֮◌𝉄◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING GREEK MUSICAL PENTASEME, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B
+0061 059A 0316 302A 1E8D0 0062;0061 302A 0316 1E8D0 059A 0062;0061 302A 0316 1E8D0 059A 0062;0061 302A 0316 1E8D0 059A 0062;0061 302A 0316 1E8D0 059A 0062; # (a◌֚◌̖◌〪◌𞣐b; a◌〪◌̖◌𞣐◌֚b; a◌〪◌̖◌𞣐◌֚b; a◌〪◌̖◌𞣐◌֚b; a◌〪◌̖◌𞣐◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, MENDE KIKAKUI COMBINING NUMBER TEENS, LATIN SMALL LETTER B
+0061 1E8D0 059A 0316 302A 0062;0061 302A 1E8D0 0316 059A 0062;0061 302A 1E8D0 0316 059A 0062;0061 302A 1E8D0 0316 059A 0062;0061 302A 1E8D0 0316 059A 0062; # (a◌𞣐◌֚◌̖◌〪b; a◌〪◌𞣐◌̖◌֚b; a◌〪◌𞣐◌̖◌֚b; a◌〪◌𞣐◌̖◌֚b; a◌〪◌𞣐◌̖◌֚b; ) LATIN SMALL LETTER A, MENDE KIKAKUI COMBINING NUMBER TEENS, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
+0061 059A 0316 302A 1E8D1 0062;0061 302A 0316 1E8D1 059A 0062;0061 302A 0316 1E8D1 059A 0062;0061 302A 0316 1E8D1 059A 0062;0061 302A 0316 1E8D1 059A 0062; # (a◌֚◌̖◌〪◌𞣑b; a◌〪◌̖◌𞣑◌֚b; a◌〪◌̖◌𞣑◌֚b; a◌〪◌̖◌𞣑◌֚b; a◌〪◌̖◌𞣑◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, MENDE KIKAKUI COMBINING NUMBER TENS, LATIN SMALL LETTER B
+0061 1E8D1 059A 0316 302A 0062;0061 302A 1E8D1 0316 059A 0062;0061 302A 1E8D1 0316 059A 0062;0061 302A 1E8D1 0316 059A 0062;0061 302A 1E8D1 0316 059A 0062; # (a◌𞣑◌֚◌̖◌〪b; a◌〪◌𞣑◌̖◌֚b; a◌〪◌𞣑◌̖◌֚b; a◌〪◌𞣑◌̖◌֚b; a◌〪◌𞣑◌̖◌֚b; ) LATIN SMALL LETTER A, MENDE KIKAKUI COMBINING NUMBER TENS, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
+0061 059A 0316 302A 1E8D2 0062;0061 302A 0316 1E8D2 059A 0062;0061 302A 0316 1E8D2 059A 0062;0061 302A 0316 1E8D2 059A 0062;0061 302A 0316 1E8D2 059A 0062; # (a◌֚◌̖◌〪◌𞣒b; a◌〪◌̖◌𞣒◌֚b; a◌〪◌̖◌𞣒◌֚b; a◌〪◌̖◌𞣒◌֚b; a◌〪◌̖◌𞣒◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, MENDE KIKAKUI COMBINING NUMBER HUNDREDS, LATIN SMALL LETTER B
+0061 1E8D2 059A 0316 302A 0062;0061 302A 1E8D2 0316 059A 0062;0061 302A 1E8D2 0316 059A 0062;0061 302A 1E8D2 0316 059A 0062;0061 302A 1E8D2 0316 059A 0062; # (a◌𞣒◌֚◌̖◌〪b; a◌〪◌𞣒◌̖◌֚b; a◌〪◌𞣒◌̖◌֚b; a◌〪◌𞣒◌̖◌֚b; a◌〪◌𞣒◌̖◌֚b; ) LATIN SMALL LETTER A, MENDE KIKAKUI COMBINING NUMBER HUNDREDS, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
+0061 059A 0316 302A 1E8D3 0062;0061 302A 0316 1E8D3 059A 0062;0061 302A 0316 1E8D3 059A 0062;0061 302A 0316 1E8D3 059A 0062;0061 302A 0316 1E8D3 059A 0062; # (a◌֚◌̖◌〪◌𞣓b; a◌〪◌̖◌𞣓◌֚b; a◌〪◌̖◌𞣓◌֚b; a◌〪◌̖◌𞣓◌֚b; a◌〪◌̖◌𞣓◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, MENDE KIKAKUI COMBINING NUMBER THOUSANDS, LATIN SMALL LETTER B
+0061 1E8D3 059A 0316 302A 0062;0061 302A 1E8D3 0316 059A 0062;0061 302A 1E8D3 0316 059A 0062;0061 302A 1E8D3 0316 059A 0062;0061 302A 1E8D3 0316 059A 0062; # (a◌𞣓◌֚◌̖◌〪b; a◌〪◌𞣓◌̖◌֚b; a◌〪◌𞣓◌̖◌֚b; a◌〪◌𞣓◌̖◌֚b; a◌〪◌𞣓◌̖◌֚b; ) LATIN SMALL LETTER A, MENDE KIKAKUI COMBINING NUMBER THOUSANDS, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
+0061 059A 0316 302A 1E8D4 0062;0061 302A 0316 1E8D4 059A 0062;0061 302A 0316 1E8D4 059A 0062;0061 302A 0316 1E8D4 059A 0062;0061 302A 0316 1E8D4 059A 0062; # (a◌֚◌̖◌〪◌𞣔b; a◌〪◌̖◌𞣔◌֚b; a◌〪◌̖◌𞣔◌֚b; a◌〪◌̖◌𞣔◌֚b; a◌〪◌̖◌𞣔◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, MENDE KIKAKUI COMBINING NUMBER TEN THOUSANDS, LATIN SMALL LETTER B
+0061 1E8D4 059A 0316 302A 0062;0061 302A 1E8D4 0316 059A 0062;0061 302A 1E8D4 0316 059A 0062;0061 302A 1E8D4 0316 059A 0062;0061 302A 1E8D4 0316 059A 0062; # (a◌𞣔◌֚◌̖◌〪b; a◌〪◌𞣔◌̖◌֚b; a◌〪◌𞣔◌̖◌֚b; a◌〪◌𞣔◌̖◌֚b; a◌〪◌𞣔◌̖◌֚b; ) LATIN SMALL LETTER A, MENDE KIKAKUI COMBINING NUMBER TEN THOUSANDS, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
+0061 059A 0316 302A 1E8D5 0062;0061 302A 0316 1E8D5 059A 0062;0061 302A 0316 1E8D5 059A 0062;0061 302A 0316 1E8D5 059A 0062;0061 302A 0316 1E8D5 059A 0062; # (a◌֚◌̖◌〪◌𞣕b; a◌〪◌̖◌𞣕◌֚b; a◌〪◌̖◌𞣕◌֚b; a◌〪◌̖◌𞣕◌֚b; a◌〪◌̖◌𞣕◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, MENDE KIKAKUI COMBINING NUMBER HUNDRED THOUSANDS, LATIN SMALL LETTER B
+0061 1E8D5 059A 0316 302A 0062;0061 302A 1E8D5 0316 059A 0062;0061 302A 1E8D5 0316 059A 0062;0061 302A 1E8D5 0316 059A 0062;0061 302A 1E8D5 0316 059A 0062; # (a◌𞣕◌֚◌̖◌〪b; a◌〪◌𞣕◌̖◌֚b; a◌〪◌𞣕◌̖◌֚b; a◌〪◌𞣕◌̖◌֚b; a◌〪◌𞣕◌̖◌֚b; ) LATIN SMALL LETTER A, MENDE KIKAKUI COMBINING NUMBER HUNDRED THOUSANDS, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
+0061 059A 0316 302A 1E8D6 0062;0061 302A 0316 1E8D6 059A 0062;0061 302A 0316 1E8D6 059A 0062;0061 302A 0316 1E8D6 059A 0062;0061 302A 0316 1E8D6 059A 0062; # (a◌֚◌̖◌〪◌𞣖b; a◌〪◌̖◌𞣖◌֚b; a◌〪◌̖◌𞣖◌֚b; a◌〪◌̖◌𞣖◌֚b; a◌〪◌̖◌𞣖◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, MENDE KIKAKUI COMBINING NUMBER MILLIONS, LATIN SMALL LETTER B
+0061 1E8D6 059A 0316 302A 0062;0061 302A 1E8D6 0316 059A 0062;0061 302A 1E8D6 0316 059A 0062;0061 302A 1E8D6 0316 059A 0062;0061 302A 1E8D6 0316 059A 0062; # (a◌𞣖◌֚◌̖◌〪b; a◌〪◌𞣖◌̖◌֚b; a◌〪◌𞣖◌̖◌֚b; a◌〪◌𞣖◌̖◌֚b; a◌〪◌𞣖◌̖◌֚b; ) LATIN SMALL LETTER A, MENDE KIKAKUI COMBINING NUMBER MILLIONS, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B
 #
 @Part3 # PRI #29 Test
 #
@@ -18427,5 +18624,12 @@
 D750 0334 11B5;D750 0334 11B5;1112 1173 0334 11B5;D750 0334 11B5;1112 1173 0334 11B5; # (흐◌̴ᆵ; 흐◌̴ᆵ; 흐◌̴ᆵ; 흐◌̴ᆵ; 흐◌̴ᆵ; ) HANGUL SYLLABLE HEU, COMBINING TILDE OVERLAY, HANGUL JONGSEONG RIEUL-PHIEUPH
 11131 0334 11127;11131 0334 11127;11131 0334 11127;11131 0334 11127;11131 0334 11127; # (◌𑄱◌̴◌𑄧; ◌𑄱◌̴◌𑄧; ◌𑄱◌̴◌𑄧; ◌𑄱◌̴◌𑄧; ◌𑄱◌̴◌𑄧; ) CHAKMA O MARK, COMBINING TILDE OVERLAY, CHAKMA VOWEL SIGN A
 11132 0334 11127;11132 0334 11127;11132 0334 11127;11132 0334 11127;11132 0334 11127; # (◌𑄲◌̴◌𑄧; ◌𑄲◌̴◌𑄧; ◌𑄲◌̴◌𑄧; ◌𑄲◌̴◌𑄧; ◌𑄲◌̴◌𑄧; ) CHAKMA AU MARK, COMBINING TILDE OVERLAY, CHAKMA VOWEL SIGN A
+11347 0334 1133E;11347 0334 1133E;11347 0334 1133E;11347 0334 1133E;11347 0334 1133E; # (𑍇◌̴𑌾; 𑍇◌̴𑌾; 𑍇◌̴𑌾; 𑍇◌̴𑌾; 𑍇◌̴𑌾; ) GRANTHA VOWEL SIGN EE, COMBINING TILDE OVERLAY, GRANTHA VOWEL SIGN AA
+11347 0334 11357;11347 0334 11357;11347 0334 11357;11347 0334 11357;11347 0334 11357; # (𑍇◌̴𑍗; 𑍇◌̴𑍗; 𑍇◌̴𑍗; 𑍇◌̴𑍗; 𑍇◌̴𑍗; ) GRANTHA VOWEL SIGN EE, COMBINING TILDE OVERLAY, GRANTHA AU LENGTH MARK
+114B9 0334 114B0;114B9 0334 114B0;114B9 0334 114B0;114B9 0334 114B0;114B9 0334 114B0; # (𑒹◌̴𑒰; 𑒹◌̴𑒰; 𑒹◌̴𑒰; 𑒹◌̴𑒰; 𑒹◌̴𑒰; ) TIRHUTA VOWEL SIGN E, COMBINING TILDE OVERLAY, TIRHUTA VOWEL SIGN AA
+114B9 0334 114BA;114B9 0334 114BA;114B9 0334 114BA;114B9 0334 114BA;114B9 0334 114BA; # (𑒹◌̴◌𑒺; 𑒹◌̴◌𑒺; 𑒹◌̴◌𑒺; 𑒹◌̴◌𑒺; 𑒹◌̴◌𑒺; ) TIRHUTA VOWEL SIGN E, COMBINING TILDE OVERLAY, TIRHUTA VOWEL SIGN SHORT E
+114B9 0334 114BD;114B9 0334 114BD;114B9 0334 114BD;114B9 0334 114BD;114B9 0334 114BD; # (𑒹◌̴𑒽; 𑒹◌̴𑒽; 𑒹◌̴𑒽; 𑒹◌̴𑒽; 𑒹◌̴𑒽; ) TIRHUTA VOWEL SIGN E, COMBINING TILDE OVERLAY, TIRHUTA VOWEL SIGN SHORT O
+115B8 0334 115AF;115B8 0334 115AF;115B8 0334 115AF;115B8 0334 115AF;115B8 0334 115AF; # (𑖸◌̴𑖯; 𑖸◌̴𑖯; 𑖸◌̴𑖯; 𑖸◌̴𑖯; 𑖸◌̴𑖯; ) SIDDHAM VOWEL SIGN E, COMBINING TILDE OVERLAY, SIDDHAM VOWEL SIGN AA
+115B9 0334 115AF;115B9 0334 115AF;115B9 0334 115AF;115B9 0334 115AF;115B9 0334 115AF; # (𑖹◌̴𑖯; 𑖹◌̴𑖯; 𑖹◌̴𑖯; 𑖹◌̴𑖯; 𑖹◌̴𑖯; ) SIDDHAM VOWEL SIGN AI, COMBINING TILDE OVERLAY, SIDDHAM VOWEL SIGN AA
 #
 # EOF
--- a/tests/uniwidth/test-uc_width2.sh
+++ b/tests/uniwidth/test-uc_width2.sh
@@ -28,8 +28,8 @@
 05C6		A
 05C7		0
 05C8..05FF	A
-0600..0604	0
-0605..060F	A
+0600..0605	0
+0606..060F	A
 0610..061A	0
 061B		A
 061C		0
@@ -66,9 +66,7 @@
 082E..0858	A
 0859..085B	0
 085C..08E3	A
-08E4..08FE	0
-08FF		A
-0900..0902	0
+08E4..0902	0
 0903..0939	A
 093A		0
 093B		A
@@ -139,7 +137,9 @@
 0BC0		0
 0BC1..0BCC	A
 0BCD		0
-0BCE..0C3D	A
+0BCE..0BFF	A
+0C00		0
+0C01..0C3D	A
 0C3E..0C40	0
 0C41..0C45	A
 0C46..0C48	0
@@ -149,13 +149,17 @@
 0C55..0C56	0
 0C57..0C61	A
 0C62..0C63	0
-0C64..0CBB	A
+0C64..0C80	A
+0C81		0
+0C82..0CBB	A
 0CBC		0
 0CBD..0CCB	A
 0CCC..0CCD	0
 0CCE..0CE1	A
 0CE2..0CE3	0
-0CE4..0D40	A
+0CE4..0D00	A
+0D01		0
+0D02..0D40	A
 0D41..0D44	0
 0D45..0D4C	A
 0D4D		0
@@ -275,7 +279,9 @@
 1A73..1A7C	0
 1A7D..1A7E	A
 1A7F		0
-1A80..1AFF	A
+1A80..1AAF	A
+1AB0..1ABE	0
+1ABF..1AFF	A
 1B00..1B03	0
 1B04..1B33	A
 1B34		0
@@ -294,8 +300,8 @@
 1BA6..1BA7	A
 1BA8..1BA9	0
 1BAA		A
-1BAB		0
-1BAC..1BE5	A
+1BAB..1BAD	0
+1BAE..1BE5	A
 1BE6		0
 1BE7		A
 1BE8..1BE9	0
@@ -317,9 +323,11 @@
 1CED		0
 1CEE..1CF3	A
 1CF4		0
-1CF5..1DBF	A
-1DC0..1DE6	0
-1DE7..1DFB	A
+1CF5..1CF7	A
+1CF8..1CF9	0
+1CFA..1DBF	A
+1DC0..1DF5	0
+1DF6..1DFB	A
 1DFC..1DFF	0
 1E00..200A	A
 200B..200F	0
@@ -383,7 +391,9 @@
 A9B6..A9B9	0
 A9BA..A9BB	A
 A9BC		0
-A9BD..AA28	A
+A9BD..A9E4	A
+A9E5		0
+A9E6..AA28	A
 AA29..AA2E	0
 AA2F..AA30	A
 AA31..AA32	0
@@ -393,7 +403,9 @@
 AA43		0
 AA44..AA4B	A
 AA4C		0
-AA4D..AAAF	A
+AA4D..AA7B	A
+AA7C		0
+AA7D..AAAF	A
 AAB0		0
 AAB1		A
 AAB2..AAB4	0
@@ -422,8 +434,8 @@
 FB1F..FDFF	A
 FE00..FE0F	0
 FE10..FE1F	2
-FE20..FE26	0
-FE27..FE2F	A
+FE20..FE2D	0
+FE2E..FE2F	A
 FE30..FE6F	2
 FE70..FEFE	A
 FEFF		0
@@ -434,7 +446,11 @@
 FFF9..FFFB	0
 FFFC..101FC	1
 101FD		0
-101FE..10A00	1
+101FE..102DF	1
+102E0		0
+102E1..10375	1
+10376..1037A	0
+1037B..10A00	1
 10A01..10A03	0
 10A04		1
 10A05..10A06	0
@@ -444,12 +460,14 @@
 10A38..10A3A	0
 10A3B..10A3E	1
 10A3F		0
-10A40..11000	1
+10A40..10AE4	1
+10AE5..10AE6	0
+10AE7..11000	1
 11001		0
 11002..11037	1
 11038..11046	0
-11047..1107F	1
-11080..11081	0
+11047..1107E	1
+1107F..11081	0
 11082..110B2	1
 110B3..110B6	0
 110B7..110B8	1
@@ -462,11 +480,53 @@
 11127..1112B	0
 1112C		1
 1112D..11134	0
-11135..1117F	1
+11135..11172	1
+11173		0
+11174..1117F	1
 11180..11181	0
 11182..111B5	1
 111B6..111BE	0
-111BF..116AA	1
+111BF..1122E	1
+1122F..11231	0
+11232..11233	1
+11234		0
+11235		1
+11236..11237	0
+11238..112DE	1
+112DF		0
+112E0..112E2	1
+112E3..112EA	0
+112EB..11300	1
+11301		0
+11302..1133B	1
+1133C		0
+1133D..1133F	1
+11340		0
+11341..11365	1
+11366..1136C	0
+1136D..1136F	1
+11370..11374	0
+11375..114B2	1
+114B3..114B8	0
+114B9		1
+114BA		0
+114BB..114BE	1
+114BF..114C0	0
+114C1		1
+114C2..114C3	0
+114C4..115B1	1
+115B2..115B5	0
+115B6..115BB	1
+115BC..115BD	0
+115BE		1
+115BF..115C0	0
+115C1..11632	1
+11633..1163A	0
+1163B..1163C	1
+1163D		0
+1163E		1
+1163F..11640	0
+11641..116AA	1
 116AB		0
 116AC		1
 116AD		0
@@ -474,9 +534,17 @@
 116B0..116B5	0
 116B6		1
 116B7		0
-116B8..16F8E	1
+116B8..16AEF	1
+16AF0..16AF4	0
+16AF5..16B2F	1
+16B30..16B36	0
+16B37..16F8E	1
 16F8F..16F92	0
-16F93..1D166	1
+16F93..1BC9C	1
+1BC9D..1BC9E	0
+1BC9F		1
+1BCA0..1BCA3	0
+1BCA4..1D166	1
 1D167..1D169	0
 1D16A..1D172	1
 1D173..1D182	0
@@ -486,7 +554,9 @@
 1D1AA..1D1AD	0
 1D1AE..1D241	1
 1D242..1D244	0
-1D245..1FFFF	1
+1D245..1E8CF	1
+1E8D0..1E8D6	0
+1E8D7..1FFFF	1
 20000..3FFFF	2
 40000..E0000	1
 E0001		0