changeset 14162:aaf4bb6264c3

Update to Unicode 6.0.0. * lib/gen-uni-tables.c (symbolic_width): Fix bounds of planes. (get_lbp): Update for Unicode 6.0.0. * lib/uniwidth/width.c (nonspacing_table_data): Add U+065F, U+0859..U+085B, U+093A, U+0956..U+0957, U+0F8D..U+0F8F, U+135D..U+135E, U+1BE6, U+1BE8..U+1BE9, U+1BED, U+1BEF..U+1BF1, U+1DFC, U+2D7F, U+11001, U+11038..U+11046. Remove U+06DE. (uc_width): Fix bounds of planes. * tests/uniwidth/test-uc_width2.sh: Same updates as in lib/uniwidth/width.c. * tests/unigbrk/GraphemeBreakTest.txt: Copied from Unicode 6.0.0, with trailing whitespace removed. * tests/uninorm/NormalizationTest.txt: Update from Unicode 6.0.0, without comments, but with the original copyright notice. * lib/unicase/cased.h: Regenerated for Unicode 6.0.0. * lib/unicase/ignorable.h: Likewise. * lib/unicase/tocasefold.h: Likewise. * lib/unicase/tolower.h: Likewise. * lib/unicase/totitle.h: Likewise. * lib/unicase/toupper.h: Likewise. * lib/unictype/bidi_of.h: Likewise. * lib/unictype/blocks.h: Likewise. * lib/unictype/categ_C.h: Likewise. * lib/unictype/categ_Cn.h: Likewise. * lib/unictype/categ_L.h: Likewise. * lib/unictype/categ_Ll.h: Likewise. * lib/unictype/categ_Lm.h: Likewise. * lib/unictype/categ_Lo.h: Likewise. * lib/unictype/categ_Lu.h: Likewise. * lib/unictype/categ_M.h: Likewise. * lib/unictype/categ_Mc.h: Likewise. * lib/unictype/categ_Me.h: Likewise. * lib/unictype/categ_Mn.h: Likewise. * lib/unictype/categ_N.h: Likewise. * lib/unictype/categ_Nd.h: Likewise. * lib/unictype/categ_No.h: Likewise. * lib/unictype/categ_P.h: Likewise. * lib/unictype/categ_Po.h: Likewise. * lib/unictype/categ_S.h: Likewise. * lib/unictype/categ_Sc.h: Likewise. * lib/unictype/categ_Sk.h: Likewise. * lib/unictype/categ_Sm.h: Likewise. * lib/unictype/categ_So.h: Likewise. * lib/unictype/categ_of.h: Likewise. * lib/unictype/combining.h: Likewise. * lib/unictype/ctype_alnum.h: Likewise. * lib/unictype/ctype_alpha.h: Likewise. * lib/unictype/ctype_graph.h: Likewise. * lib/unictype/ctype_lower.h: Likewise. * lib/unictype/ctype_print.h: Likewise. * lib/unictype/ctype_punct.h: Likewise. * lib/unictype/ctype_upper.h: Likewise. * lib/unictype/decdigit.h: Likewise. * lib/unictype/digit.h: Likewise. * lib/unictype/numeric.h: Likewise. * lib/unictype/pr_alphabetic.h: Likewise. * lib/unictype/pr_bidi_arabic_digit.h: Likewise. * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise. * lib/unictype/pr_bidi_boundary_neutral.h: Likewise. * lib/unictype/pr_bidi_eur_num_terminator.h: Likewise. * lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise. * lib/unictype/pr_bidi_left_to_right.h: Likewise. * lib/unictype/pr_bidi_non_spacing_mark.h: Likewise. * lib/unictype/pr_bidi_other_neutral.h: Likewise. * lib/unictype/pr_case_ignorable.h: Likewise. * lib/unictype/pr_cased.h: Likewise. * lib/unictype/pr_changes_when_casefolded.h: Likewise. * lib/unictype/pr_changes_when_casemapped.h: Likewise. * lib/unictype/pr_changes_when_lowercased.h: Likewise. * lib/unictype/pr_changes_when_titlecased.h: Likewise. * lib/unictype/pr_changes_when_uppercased.h: Likewise. * lib/unictype/pr_combining.h: Likewise. * lib/unictype/pr_composite.h: Likewise. * lib/unictype/pr_currency_symbol.h: Likewise. * lib/unictype/pr_decimal_digit.h: Likewise. * lib/unictype/pr_deprecated.h: Likewise. * lib/unictype/pr_format_control.h: Likewise. * lib/unictype/pr_grapheme_base.h: Likewise. * lib/unictype/pr_grapheme_extend.h: Likewise. * lib/unictype/pr_grapheme_link.h: Likewise. * lib/unictype/pr_id_continue.h: Likewise. * lib/unictype/pr_id_start.h: Likewise. * lib/unictype/pr_ideographic.h: Likewise. * lib/unictype/pr_lowercase.h: Likewise. * lib/unictype/pr_math.h: Likewise. * lib/unictype/pr_numeric.h: Likewise. * lib/unictype/pr_other_alphabetic.h: Likewise. * lib/unictype/pr_other_id_continue.h: Likewise. * lib/unictype/pr_other_math.h: Likewise. * lib/unictype/pr_punctuation.h: Likewise. * lib/unictype/pr_sentence_terminal.h: Likewise. * lib/unictype/pr_terminal_punctuation.h: Likewise. * lib/unictype/pr_unassigned_code_value.h: Likewise. * lib/unictype/pr_unified_ideograph.h: Likewise. * lib/unictype/pr_uppercase.h: Likewise. * lib/unictype/pr_xid_continue.h: Likewise. * lib/unictype/pr_xid_start.h: Likewise. * lib/unictype/scripts.h: Likewise. * lib/unictype/scripts_byname.gperf: Likewise. * lib/unictype/sy_java_ident.h: Likewise. * lib/unigbrk/gbrkprop.h: Likewise. * lib/unilbrk/lbrkprop1.h: Likewise. * lib/unilbrk/lbrkprop2.h: Likewise. * lib/uninorm/decomposition-table2.h: Likewise. * lib/uniwbrk/wbrkprop.h: Likewise. * tests/unicase/test-cased.c: Likewise. * tests/unicase/test-ignorable.c: Likewise. * tests/unicase/test-uc_tolower.c: Likewise. * tests/unicase/test-uc_totitle.c: Likewise. * tests/unicase/test-uc_toupper.c: Likewise. * tests/unictype/test-categ_C.c: Likewise. * tests/unictype/test-categ_Cn.c: Likewise. * tests/unictype/test-categ_L.c: Likewise. * tests/unictype/test-categ_Ll.c: Likewise. * tests/unictype/test-categ_Lm.c: Likewise. * tests/unictype/test-categ_Lo.c: Likewise. * tests/unictype/test-categ_Lu.c: Likewise. * tests/unictype/test-categ_M.c: Likewise. * tests/unictype/test-categ_Mc.c: Likewise. * tests/unictype/test-categ_Me.c: Likewise. * tests/unictype/test-categ_Mn.c: Likewise. * tests/unictype/test-categ_N.c: Likewise. * tests/unictype/test-categ_Nd.c: Likewise. * tests/unictype/test-categ_No.c: Likewise. * tests/unictype/test-categ_P.c: Likewise. * tests/unictype/test-categ_Po.c: Likewise. * tests/unictype/test-categ_S.c: Likewise. * tests/unictype/test-categ_Sc.c: Likewise. * tests/unictype/test-categ_Sk.c: Likewise. * tests/unictype/test-categ_Sm.c: Likewise. * tests/unictype/test-categ_So.c: Likewise. * tests/unictype/test-ctype_alnum.c: Likewise. * tests/unictype/test-ctype_alpha.c: Likewise. * tests/unictype/test-ctype_graph.c: Likewise. * tests/unictype/test-ctype_lower.c: Likewise. * tests/unictype/test-ctype_print.c: Likewise. * tests/unictype/test-ctype_punct.c: Likewise. * tests/unictype/test-ctype_upper.c: Likewise. * tests/unictype/test-decdigit.h: Likewise. * tests/unictype/test-digit.h: Likewise. * tests/unictype/test-numeric.h: Likewise. * tests/unictype/test-pr_alphabetic.c: Likewise. * tests/unictype/test-pr_bidi_arabic_digit.c: Likewise. * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise. * tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise. * tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise. * tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise. * tests/unictype/test-pr_bidi_left_to_right.c: Likewise. * tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise. * tests/unictype/test-pr_bidi_other_neutral.c: Likewise. * tests/unictype/test-pr_case_ignorable.c: Likewise. * tests/unictype/test-pr_cased.c: Likewise. * tests/unictype/test-pr_changes_when_casefolded.c: Likewise. * tests/unictype/test-pr_changes_when_casemapped.c: Likewise. * tests/unictype/test-pr_changes_when_lowercased.c: Likewise. * tests/unictype/test-pr_changes_when_titlecased.c: Likewise. * tests/unictype/test-pr_changes_when_uppercased.c: Likewise. * tests/unictype/test-pr_combining.c: Likewise. * tests/unictype/test-pr_composite.c: Likewise. * tests/unictype/test-pr_currency_symbol.c: Likewise. * tests/unictype/test-pr_decimal_digit.c: Likewise. * tests/unictype/test-pr_deprecated.c: Likewise. * tests/unictype/test-pr_format_control.c: Likewise. * tests/unictype/test-pr_grapheme_base.c: Likewise. * tests/unictype/test-pr_grapheme_extend.c: Likewise. * tests/unictype/test-pr_grapheme_link.c: Likewise. * tests/unictype/test-pr_id_continue.c: Likewise. * tests/unictype/test-pr_id_start.c: Likewise. * tests/unictype/test-pr_ideographic.c: Likewise. * tests/unictype/test-pr_lowercase.c: Likewise. * tests/unictype/test-pr_math.c: Likewise. * tests/unictype/test-pr_numeric.c: Likewise. * tests/unictype/test-pr_other_alphabetic.c: Likewise. * tests/unictype/test-pr_other_id_continue.c: Likewise. * tests/unictype/test-pr_other_math.c: Likewise. * tests/unictype/test-pr_punctuation.c: Likewise. * tests/unictype/test-pr_sentence_terminal.c: Likewise. * tests/unictype/test-pr_terminal_punctuation.c: Likewise. * tests/unictype/test-pr_unassigned_code_value.c: Likewise. * tests/unictype/test-pr_unified_ideograph.c: Likewise. * tests/unictype/test-pr_uppercase.c: Likewise. * tests/unictype/test-pr_xid_continue.c: Likewise. * tests/unictype/test-pr_xid_start.c: Likewise. * tests/unigbrk/test-uc-gbrk-prop.h: Likewise. * lib/unicase/special-casing-table.gperf: Regenerated; only comment changes. * lib/unictype/categ_Cc.h: Likewise. * lib/unictype/categ_Cf.h: Likewise. * lib/unictype/categ_Co.h: Likewise. * lib/unictype/categ_Cs.h: Likewise. * lib/unictype/categ_Lt.h: Likewise. * lib/unictype/categ_Nl.h: Likewise. * lib/unictype/categ_Pc.h: Likewise. * lib/unictype/categ_Pd.h: Likewise. * lib/unictype/categ_Pe.h: Likewise. * lib/unictype/categ_Pf.h: Likewise. * lib/unictype/categ_Pi.h: Likewise. * lib/unictype/categ_Ps.h: Likewise. * lib/unictype/categ_Z.h: Likewise. * lib/unictype/categ_Zl.h: Likewise. * lib/unictype/categ_Zp.h: Likewise. * lib/unictype/categ_Zs.h: Likewise. * lib/unictype/ctype_blank.h: Likewise. * lib/unictype/ctype_cntrl.h: Likewise. * lib/unictype/ctype_digit.h: Likewise. * lib/unictype/ctype_space.h: Likewise. * lib/unictype/ctype_xdigit.h: Likewise. * lib/unictype/mirror.h: Likewise. * lib/unictype/pr_ascii_hex_digit.h: Likewise. * lib/unictype/pr_bidi_block_separator.h: Likewise. * lib/unictype/pr_bidi_common_separator.h: Likewise. * lib/unictype/pr_bidi_control.h: Likewise. * lib/unictype/pr_bidi_embedding_or_override.h: Likewise. * lib/unictype/pr_bidi_eur_num_separator.h: Likewise. * lib/unictype/pr_bidi_european_digit.h: Likewise. * lib/unictype/pr_bidi_pdf.h: Likewise. * lib/unictype/pr_bidi_segment_separator.h: Likewise. * lib/unictype/pr_bidi_whitespace.h: Likewise. * lib/unictype/pr_dash.h: Likewise. * lib/unictype/pr_default_ignorable_code_point.h: Likewise. * lib/unictype/pr_diacritic.h: Likewise. * lib/unictype/pr_extender.h: Likewise. * lib/unictype/pr_hex_digit.h: Likewise. * lib/unictype/pr_hyphen.h: Likewise. * lib/unictype/pr_ids_binary_operator.h: Likewise. * lib/unictype/pr_ids_trinary_operator.h: Likewise. * lib/unictype/pr_ignorable_control.h: Likewise. * lib/unictype/pr_iso_control.h: Likewise. * lib/unictype/pr_join_control.h: Likewise. * lib/unictype/pr_left_of_pair.h: Likewise. * lib/unictype/pr_line_separator.h: Likewise. * lib/unictype/pr_logical_order_exception.h: Likewise. * lib/unictype/pr_non_break.h: Likewise. * lib/unictype/pr_not_a_character.h: Likewise. * lib/unictype/pr_other_default_ignorable_code_point.h: Likewise. * lib/unictype/pr_other_grapheme_extend.h: Likewise. * lib/unictype/pr_other_id_start.h: Likewise. * lib/unictype/pr_other_lowercase.h: Likewise. * lib/unictype/pr_other_uppercase.h: Likewise. * lib/unictype/pr_paired_punctuation.h: Likewise. * lib/unictype/pr_paragraph_separator.h: Likewise. * lib/unictype/pr_pattern_syntax.h: Likewise. * lib/unictype/pr_pattern_white_space.h: Likewise. * lib/unictype/pr_private_use.h: Likewise. * lib/unictype/pr_quotation_mark.h: Likewise. * lib/unictype/pr_radical.h: Likewise. * lib/unictype/pr_soft_dotted.h: Likewise. * lib/unictype/pr_space.h: Likewise. * lib/unictype/pr_titlecase.h: Likewise. * lib/unictype/pr_variation_selector.h: Likewise. * lib/unictype/pr_white_space.h: Likewise. * lib/unictype/pr_zero_width.h: Likewise. * lib/unictype/sy_c_ident.h: Likewise. * lib/unictype/sy_c_whitespace.h: Likewise. * lib/unictype/sy_java_whitespace.h: Likewise. * lib/uninorm/composition-table.gperf: Likewise. * lib/uninorm/decomposition-table1.h: Likewise. * tests/unilbrk/test-u8-possible-linebreaks.c (main): Add test for rule LB8. * tests/unilbrk/test-u16-possible-linebreaks.c (main): Likewise. * tests/unilbrk/test-u32-possible-linebreaks.c (main): Likewise. * modules/unictype/*: Bump version number of expected libunistring version.
author Bruno Haible <bruno@clisp.org>
date Sun, 09 Jan 2011 15:37:35 +0100
parents 68beb11ecfda
children 90cf49c6fdd5
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/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_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/combining.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/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 modules/unictype/category-Me modules/unictype/category-Sk modules/unictype/category-Sm modules/unictype/property-bidi-arabic-right-to-left modules/unictype/property-bidi-boundary-neutral modules/unictype/property-format-control modules/unictype/property-math modules/unictype/property-other-id-continue modules/unictype/property-other-math 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_Cn.c tests/unictype/test-categ_L.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_No.c tests/unictype/test-categ_P.c tests/unictype/test-categ_Po.c tests/unictype/test-categ_S.c tests/unictype/test-categ_Sc.c tests/unictype/test-categ_Sk.c tests/unictype/test-categ_Sm.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-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_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_decimal_digit.c tests/unictype/test-pr_deprecated.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_ideographic.c tests/unictype/test-pr_lowercase.c tests/unictype/test-pr_math.c tests/unictype/test-pr_numeric.c tests/unictype/test-pr_other_alphabetic.c tests/unictype/test-pr_other_id_continue.c tests/unictype/test-pr_other_math.c tests/unictype/test-pr_punctuation.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_unified_ideograph.c tests/unictype/test-pr_uppercase.c tests/unictype/test-pr_xid_continue.c tests/unictype/test-pr_xid_start.c tests/unigbrk/GraphemeBreakTest.txt tests/unigbrk/test-uc-gbrk-prop.h tests/unilbrk/test-u16-possible-linebreaks.c tests/unilbrk/test-u32-possible-linebreaks.c tests/unilbrk/test-u8-possible-linebreaks.c tests/uninorm/NormalizationTest.txt tests/uniwidth/test-uc_width2.sh
diffstat 260 files changed, 6056 insertions(+), 3984 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,269 @@
+2011-01-09  Bruno Haible  <bruno@clisp.org>
+
+	Update to Unicode 6.0.0.
+	* lib/gen-uni-tables.c (symbolic_width): Fix bounds of planes.
+	(get_lbp): Update for Unicode 6.0.0.
+	* lib/uniwidth/width.c (nonspacing_table_data): Add U+065F,
+	U+0859..U+085B, U+093A, U+0956..U+0957, U+0F8D..U+0F8F, U+135D..U+135E,
+	U+1BE6, U+1BE8..U+1BE9, U+1BED, U+1BEF..U+1BF1, U+1DFC, U+2D7F,
+	U+11001, U+11038..U+11046. Remove U+06DE.
+	(uc_width): Fix bounds of planes.
+	* tests/uniwidth/test-uc_width2.sh: Same updates as in
+	lib/uniwidth/width.c.
+	* tests/unigbrk/GraphemeBreakTest.txt: Copied from Unicode 6.0.0, with
+	trailing whitespace removed.
+	* tests/uninorm/NormalizationTest.txt: Update from Unicode 6.0.0,
+	without comments, but with the original copyright notice.
+	* lib/unicase/cased.h: Regenerated for Unicode 6.0.0.
+	* lib/unicase/ignorable.h: Likewise.
+	* lib/unicase/tocasefold.h: Likewise.
+	* lib/unicase/tolower.h: Likewise.
+	* lib/unicase/totitle.h: Likewise.
+	* lib/unicase/toupper.h: Likewise.
+	* lib/unictype/bidi_of.h: Likewise.
+	* lib/unictype/blocks.h: Likewise.
+	* lib/unictype/categ_C.h: Likewise.
+	* lib/unictype/categ_Cn.h: Likewise.
+	* lib/unictype/categ_L.h: Likewise.
+	* lib/unictype/categ_Ll.h: Likewise.
+	* lib/unictype/categ_Lm.h: Likewise.
+	* lib/unictype/categ_Lo.h: Likewise.
+	* lib/unictype/categ_Lu.h: Likewise.
+	* lib/unictype/categ_M.h: Likewise.
+	* lib/unictype/categ_Mc.h: Likewise.
+	* lib/unictype/categ_Me.h: Likewise.
+	* lib/unictype/categ_Mn.h: Likewise.
+	* lib/unictype/categ_N.h: Likewise.
+	* lib/unictype/categ_Nd.h: Likewise.
+	* lib/unictype/categ_No.h: Likewise.
+	* lib/unictype/categ_P.h: Likewise.
+	* lib/unictype/categ_Po.h: Likewise.
+	* lib/unictype/categ_S.h: Likewise.
+	* lib/unictype/categ_Sc.h: Likewise.
+	* lib/unictype/categ_Sk.h: Likewise.
+	* lib/unictype/categ_Sm.h: Likewise.
+	* lib/unictype/categ_So.h: Likewise.
+	* lib/unictype/categ_of.h: Likewise.
+	* lib/unictype/combining.h: Likewise.
+	* lib/unictype/ctype_alnum.h: Likewise.
+	* lib/unictype/ctype_alpha.h: Likewise.
+	* lib/unictype/ctype_graph.h: Likewise.
+	* lib/unictype/ctype_lower.h: Likewise.
+	* lib/unictype/ctype_print.h: Likewise.
+	* lib/unictype/ctype_punct.h: Likewise.
+	* lib/unictype/ctype_upper.h: Likewise.
+	* lib/unictype/decdigit.h: Likewise.
+	* lib/unictype/digit.h: Likewise.
+	* lib/unictype/numeric.h: Likewise.
+	* lib/unictype/pr_alphabetic.h: Likewise.
+	* lib/unictype/pr_bidi_arabic_digit.h: Likewise.
+	* lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise.
+	* lib/unictype/pr_bidi_boundary_neutral.h: Likewise.
+	* lib/unictype/pr_bidi_eur_num_terminator.h: Likewise.
+	* lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise.
+	* lib/unictype/pr_bidi_left_to_right.h: Likewise.
+	* lib/unictype/pr_bidi_non_spacing_mark.h: Likewise.
+	* lib/unictype/pr_bidi_other_neutral.h: Likewise.
+	* lib/unictype/pr_case_ignorable.h: Likewise.
+	* lib/unictype/pr_cased.h: Likewise.
+	* lib/unictype/pr_changes_when_casefolded.h: Likewise.
+	* lib/unictype/pr_changes_when_casemapped.h: Likewise.
+	* lib/unictype/pr_changes_when_lowercased.h: Likewise.
+	* lib/unictype/pr_changes_when_titlecased.h: Likewise.
+	* lib/unictype/pr_changes_when_uppercased.h: Likewise.
+	* lib/unictype/pr_combining.h: Likewise.
+	* lib/unictype/pr_composite.h: Likewise.
+	* lib/unictype/pr_currency_symbol.h: Likewise.
+	* lib/unictype/pr_decimal_digit.h: Likewise.
+	* lib/unictype/pr_deprecated.h: Likewise.
+	* lib/unictype/pr_format_control.h: Likewise.
+	* lib/unictype/pr_grapheme_base.h: Likewise.
+	* lib/unictype/pr_grapheme_extend.h: Likewise.
+	* lib/unictype/pr_grapheme_link.h: Likewise.
+	* lib/unictype/pr_id_continue.h: Likewise.
+	* lib/unictype/pr_id_start.h: Likewise.
+	* lib/unictype/pr_ideographic.h: Likewise.
+	* lib/unictype/pr_lowercase.h: Likewise.
+	* lib/unictype/pr_math.h: Likewise.
+	* lib/unictype/pr_numeric.h: Likewise.
+	* lib/unictype/pr_other_alphabetic.h: Likewise.
+	* lib/unictype/pr_other_id_continue.h: Likewise.
+	* lib/unictype/pr_other_math.h: Likewise.
+	* lib/unictype/pr_punctuation.h: Likewise.
+	* lib/unictype/pr_sentence_terminal.h: Likewise.
+	* lib/unictype/pr_terminal_punctuation.h: Likewise.
+	* lib/unictype/pr_unassigned_code_value.h: Likewise.
+	* lib/unictype/pr_unified_ideograph.h: Likewise.
+	* lib/unictype/pr_uppercase.h: Likewise.
+	* lib/unictype/pr_xid_continue.h: Likewise.
+	* lib/unictype/pr_xid_start.h: Likewise.
+	* lib/unictype/scripts.h: Likewise.
+	* lib/unictype/scripts_byname.gperf: Likewise.
+	* lib/unictype/sy_java_ident.h: Likewise.
+	* lib/unigbrk/gbrkprop.h: Likewise.
+	* lib/unilbrk/lbrkprop1.h: Likewise.
+	* lib/unilbrk/lbrkprop2.h: Likewise.
+	* lib/uninorm/decomposition-table2.h: Likewise.
+	* lib/uniwbrk/wbrkprop.h: Likewise.
+	* tests/unicase/test-cased.c: Likewise.
+	* tests/unicase/test-ignorable.c: Likewise.
+	* tests/unicase/test-uc_tolower.c: Likewise.
+	* tests/unicase/test-uc_totitle.c: Likewise.
+	* tests/unicase/test-uc_toupper.c: Likewise.
+	* tests/unictype/test-categ_C.c: Likewise.
+	* tests/unictype/test-categ_Cn.c: Likewise.
+	* tests/unictype/test-categ_L.c: Likewise.
+	* tests/unictype/test-categ_Ll.c: Likewise.
+	* tests/unictype/test-categ_Lm.c: Likewise.
+	* tests/unictype/test-categ_Lo.c: Likewise.
+	* tests/unictype/test-categ_Lu.c: Likewise.
+	* tests/unictype/test-categ_M.c: Likewise.
+	* tests/unictype/test-categ_Mc.c: Likewise.
+	* tests/unictype/test-categ_Me.c: Likewise.
+	* tests/unictype/test-categ_Mn.c: Likewise.
+	* tests/unictype/test-categ_N.c: Likewise.
+	* tests/unictype/test-categ_Nd.c: Likewise.
+	* tests/unictype/test-categ_No.c: Likewise.
+	* tests/unictype/test-categ_P.c: Likewise.
+	* tests/unictype/test-categ_Po.c: Likewise.
+	* tests/unictype/test-categ_S.c: Likewise.
+	* tests/unictype/test-categ_Sc.c: Likewise.
+	* tests/unictype/test-categ_Sk.c: Likewise.
+	* tests/unictype/test-categ_Sm.c: Likewise.
+	* tests/unictype/test-categ_So.c: Likewise.
+	* tests/unictype/test-ctype_alnum.c: Likewise.
+	* tests/unictype/test-ctype_alpha.c: Likewise.
+	* tests/unictype/test-ctype_graph.c: Likewise.
+	* tests/unictype/test-ctype_lower.c: Likewise.
+	* tests/unictype/test-ctype_print.c: Likewise.
+	* tests/unictype/test-ctype_punct.c: Likewise.
+	* tests/unictype/test-ctype_upper.c: Likewise.
+	* tests/unictype/test-decdigit.h: Likewise.
+	* tests/unictype/test-digit.h: Likewise.
+	* tests/unictype/test-numeric.h: Likewise.
+	* tests/unictype/test-pr_alphabetic.c: Likewise.
+	* tests/unictype/test-pr_bidi_arabic_digit.c: Likewise.
+	* tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise.
+	* tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise.
+	* tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise.
+	* tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise.
+	* tests/unictype/test-pr_bidi_left_to_right.c: Likewise.
+	* tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise.
+	* tests/unictype/test-pr_bidi_other_neutral.c: Likewise.
+	* tests/unictype/test-pr_case_ignorable.c: Likewise.
+	* tests/unictype/test-pr_cased.c: Likewise.
+	* tests/unictype/test-pr_changes_when_casefolded.c: Likewise.
+	* tests/unictype/test-pr_changes_when_casemapped.c: Likewise.
+	* tests/unictype/test-pr_changes_when_lowercased.c: Likewise.
+	* tests/unictype/test-pr_changes_when_titlecased.c: Likewise.
+	* tests/unictype/test-pr_changes_when_uppercased.c: Likewise.
+	* tests/unictype/test-pr_combining.c: Likewise.
+	* tests/unictype/test-pr_composite.c: Likewise.
+	* tests/unictype/test-pr_currency_symbol.c: Likewise.
+	* tests/unictype/test-pr_decimal_digit.c: Likewise.
+	* tests/unictype/test-pr_deprecated.c: Likewise.
+	* tests/unictype/test-pr_format_control.c: Likewise.
+	* tests/unictype/test-pr_grapheme_base.c: Likewise.
+	* tests/unictype/test-pr_grapheme_extend.c: Likewise.
+	* tests/unictype/test-pr_grapheme_link.c: Likewise.
+	* tests/unictype/test-pr_id_continue.c: Likewise.
+	* tests/unictype/test-pr_id_start.c: Likewise.
+	* tests/unictype/test-pr_ideographic.c: Likewise.
+	* tests/unictype/test-pr_lowercase.c: Likewise.
+	* tests/unictype/test-pr_math.c: Likewise.
+	* tests/unictype/test-pr_numeric.c: Likewise.
+	* tests/unictype/test-pr_other_alphabetic.c: Likewise.
+	* tests/unictype/test-pr_other_id_continue.c: Likewise.
+	* tests/unictype/test-pr_other_math.c: Likewise.
+	* tests/unictype/test-pr_punctuation.c: Likewise.
+	* tests/unictype/test-pr_sentence_terminal.c: Likewise.
+	* tests/unictype/test-pr_terminal_punctuation.c: Likewise.
+	* tests/unictype/test-pr_unassigned_code_value.c: Likewise.
+	* tests/unictype/test-pr_unified_ideograph.c: Likewise.
+	* tests/unictype/test-pr_uppercase.c: Likewise.
+	* tests/unictype/test-pr_xid_continue.c: Likewise.
+	* tests/unictype/test-pr_xid_start.c: Likewise.
+	* tests/unigbrk/test-uc-gbrk-prop.h: Likewise.
+	* lib/unicase/special-casing-table.gperf: Regenerated; only comment
+	changes.
+	* lib/unictype/categ_Cc.h: Likewise.
+	* lib/unictype/categ_Cf.h: Likewise.
+	* lib/unictype/categ_Co.h: Likewise.
+	* lib/unictype/categ_Cs.h: Likewise.
+	* lib/unictype/categ_Lt.h: Likewise.
+	* lib/unictype/categ_Nl.h: Likewise.
+	* lib/unictype/categ_Pc.h: Likewise.
+	* lib/unictype/categ_Pd.h: Likewise.
+	* lib/unictype/categ_Pe.h: Likewise.
+	* lib/unictype/categ_Pf.h: Likewise.
+	* lib/unictype/categ_Pi.h: Likewise.
+	* lib/unictype/categ_Ps.h: Likewise.
+	* lib/unictype/categ_Z.h: Likewise.
+	* lib/unictype/categ_Zl.h: Likewise.
+	* lib/unictype/categ_Zp.h: Likewise.
+	* lib/unictype/categ_Zs.h: Likewise.
+	* lib/unictype/ctype_blank.h: Likewise.
+	* lib/unictype/ctype_cntrl.h: Likewise.
+	* lib/unictype/ctype_digit.h: Likewise.
+	* lib/unictype/ctype_space.h: Likewise.
+	* lib/unictype/ctype_xdigit.h: Likewise.
+	* lib/unictype/mirror.h: Likewise.
+	* lib/unictype/pr_ascii_hex_digit.h: Likewise.
+	* lib/unictype/pr_bidi_block_separator.h: Likewise.
+	* lib/unictype/pr_bidi_common_separator.h: Likewise.
+	* lib/unictype/pr_bidi_control.h: Likewise.
+	* lib/unictype/pr_bidi_embedding_or_override.h: Likewise.
+	* lib/unictype/pr_bidi_eur_num_separator.h: Likewise.
+	* lib/unictype/pr_bidi_european_digit.h: Likewise.
+	* lib/unictype/pr_bidi_pdf.h: Likewise.
+	* lib/unictype/pr_bidi_segment_separator.h: Likewise.
+	* lib/unictype/pr_bidi_whitespace.h: Likewise.
+	* lib/unictype/pr_dash.h: Likewise.
+	* lib/unictype/pr_default_ignorable_code_point.h: Likewise.
+	* lib/unictype/pr_diacritic.h: Likewise.
+	* lib/unictype/pr_extender.h: Likewise.
+	* lib/unictype/pr_hex_digit.h: Likewise.
+	* lib/unictype/pr_hyphen.h: Likewise.
+	* lib/unictype/pr_ids_binary_operator.h: Likewise.
+	* lib/unictype/pr_ids_trinary_operator.h: Likewise.
+	* lib/unictype/pr_ignorable_control.h: Likewise.
+	* lib/unictype/pr_iso_control.h: Likewise.
+	* lib/unictype/pr_join_control.h: Likewise.
+	* lib/unictype/pr_left_of_pair.h: Likewise.
+	* lib/unictype/pr_line_separator.h: Likewise.
+	* lib/unictype/pr_logical_order_exception.h: Likewise.
+	* lib/unictype/pr_non_break.h: Likewise.
+	* lib/unictype/pr_not_a_character.h: Likewise.
+	* lib/unictype/pr_other_default_ignorable_code_point.h: Likewise.
+	* lib/unictype/pr_other_grapheme_extend.h: Likewise.
+	* lib/unictype/pr_other_id_start.h: Likewise.
+	* lib/unictype/pr_other_lowercase.h: Likewise.
+	* lib/unictype/pr_other_uppercase.h: Likewise.
+	* lib/unictype/pr_paired_punctuation.h: Likewise.
+	* lib/unictype/pr_paragraph_separator.h: Likewise.
+	* lib/unictype/pr_pattern_syntax.h: Likewise.
+	* lib/unictype/pr_pattern_white_space.h: Likewise.
+	* lib/unictype/pr_private_use.h: Likewise.
+	* lib/unictype/pr_quotation_mark.h: Likewise.
+	* lib/unictype/pr_radical.h: Likewise.
+	* lib/unictype/pr_soft_dotted.h: Likewise.
+	* lib/unictype/pr_space.h: Likewise.
+	* lib/unictype/pr_titlecase.h: Likewise.
+	* lib/unictype/pr_variation_selector.h: Likewise.
+	* lib/unictype/pr_white_space.h: Likewise.
+	* lib/unictype/pr_zero_width.h: Likewise.
+	* lib/unictype/sy_c_ident.h: Likewise.
+	* lib/unictype/sy_c_whitespace.h: Likewise.
+	* lib/unictype/sy_java_whitespace.h: Likewise.
+	* lib/uninorm/composition-table.gperf: Likewise.
+	* lib/uninorm/decomposition-table1.h: Likewise.
+	* tests/unilbrk/test-u8-possible-linebreaks.c (main): Add test for rule
+	LB8.
+	* tests/unilbrk/test-u16-possible-linebreaks.c (main): Likewise.
+	* tests/unilbrk/test-u32-possible-linebreaks.c (main): Likewise.
+	* modules/unictype/*: Bump version number of expected libunistring
+	version.
+
 2011-01-09  Bruno Haible  <bruno@clisp.org>
 
 	Update to Unicode 5.2.0.
--- a/lib/gen-uni-tables.c
+++ b/lib/gen-uni-tables.c
@@ -31,7 +31,7 @@
                       /usr/local/share/Unidata/CompositionExclusions.txt \
                       /usr/local/share/Unidata/SpecialCasing.txt \
                       /usr/local/share/Unidata/CaseFolding.txt \
-                      5.2.0
+                      6.0.0
  */
 
 #include <stdbool.h>
@@ -5398,8 +5398,8 @@
       if ((ch >= 0x4E00 && ch <= 0x9FFF) /* CJK Unified Ideographs block */
           || (ch >= 0x3400 && ch <= 0x4DBF) /* CJK Unified Ideographs Extension A block */
           || (ch >= 0xF900 && ch <= 0xFAFF) /* CJK Compatibility Ideographs block */
-          || (ch >= 0x20000 && ch <= 0x2FFFD) /* Supplementary Ideographic Plane */
-          || (ch >= 0x30000 && ch <= 0x3FFFD) /* Tertiary Ideographic Plane */)
+          || (ch >= 0x20000 && ch <= 0x2FFFF) /* Supplementary Ideographic Plane */
+          || (ch >= 0x30000 && ch <= 0x3FFFF) /* Tertiary Ideographic Plane */)
         return '2';
       return 0;
     }
@@ -5486,7 +5486,7 @@
 /* ========================================================================= */
 
 /* Line breaking classification.
-   Updated for Unicode TR #14 revision 24.  */
+   Updated for Unicode TR #14 revision 26.  */
 
 enum
 {
@@ -5564,7 +5564,10 @@
           || ch == 0x0F08 /* TIBETAN MARK SBRUL SHAD */
           || ch == 0x0F0C /* TIBETAN MARK DELIMITER TSHEG BSTAR */
           || ch == 0x0F12 /* TIBETAN MARK RGYA GRAM SHAD */
-          || (ch >= 0x035C && ch <= 0x0362) /* COMBINING DOUBLE ... */)
+          || (ch >= 0x035C && ch <= 0x0362) /* COMBINING DOUBLE ... */
+          /* Extra characters for compatibility with Unicode LineBreak.txt.  */
+          || ch == 0x0FD9 /* TIBETAN MARK LEADING MCHAN RTAGS */
+          || ch == 0x0FDA /* TIBETAN MARK TRAILING MCHAN RTAGS */)
         attr |= (int64_t) 1 << LBP_GL;
 
       /* space */
@@ -5690,6 +5693,7 @@
           || ch == 0x10A54 /* KHAROSHTHI PUNCTUATION MANGALAM */
           || ch == 0x10A55 /* KHAROSHTHI PUNCTUATION LOTUS */
           /* Extra characters for compatibility with Unicode LineBreak.txt.  */
+          || ch == 0x2D70 /* TIFINAGH SEPARATOR MARK */
           || ch == 0xA4FE /* LISU PUNCTUATION COMMA */
           || ch == 0xA4FF /* LISU PUNCTUATION FULL STOP */
           || ch == 0xA6F3 /* BAMUM FULL STOP */
@@ -5709,6 +5713,8 @@
           || ch == 0x10B3D /* LARGE ONE DOT OVER TWO DOTS PUNCTUATION */
           || ch == 0x10B3E /* LARGE TWO RINGS OVER ONE RING PUNCTUATION */
           || ch == 0x10B3F /* LARGE ONE RING OVER TWO RINGS PUNCTUATION */
+          || ch == 0x11047 /* BRAHMI DANDA */
+          || ch == 0x11048 /* BRAHMI DOUBLE DANDA */
           || ch == 0x110BE /* KAITHI SECTION MARK */
           || ch == 0x110BF /* KAITHI DOUBLE SECTION MARK */
           || ch == 0x110C0 /* KAITHI DANDA */
@@ -5988,6 +5994,7 @@
            /* Extra characters for compatibility with Unicode LineBreak.txt.  */
            || ch == 0x109E /* MYANMAR SYMBOL SHAN ONE */
            || ch == 0x109F /* MYANMAR SYMBOL SHAN EXCLAMATION */
+           || ch == 0x19DA /* NEW TAI LUE THAM DIGIT ONE */
            || ch == 0x19DE /* NEW TAI LUE SIGN LAE */
            || ch == 0x19DF /* NEW TAI LUE SIGN LAEV */
            || (ch >= 0x1AA0 && ch <= 0x1AAD) /* TAI THAM SIGN */
@@ -6078,8 +6085,11 @@
           || ch == 0xFFE3 /* FULLWIDTH MACRON */
           || ch == 0xFFE4 /* FULLWIDTH BROKEN BAR */
           /* Extra characters for compatibility with Unicode LineBreak.txt.  */
+          || (ch >= 0x1B000 && ch <= 0x1B001) /* Kana Supplement */
           || (ch >= 0x1F200 && ch <= 0x1F248) /* Enclosed Ideographic Supplement */
-          || (ch >= 0x2A700 && ch <= 0x2B734) /* CJK Ideograph Extension C */)
+          || (ch >= 0x1F250 && ch <= 0x1F251) /* Enclosed Ideographic Supplement */
+          || (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))))
           {
             /* ambiguous (ideograph) ? */
@@ -6695,7 +6705,7 @@
 /* ========================================================================= */
 
 /* Word break property.
-   Updated for Unicode TR #29 revision 15.  */
+   Updated for Unicode TR #29 revision 17.  */
 
 /* Possible values of the Word_Break property.  */
 enum
@@ -7172,7 +7182,7 @@
 /* ========================================================================= */
 
 /* Grapheme break property.
-   Updated for Unicode TR #29 revision 15.  */
+   Updated for Unicode TR #29 revision 17.  */
 
 /* Possible values of the Grapheme_Cluster_Break property.  */
 enum
@@ -7478,7 +7488,7 @@
 /* ========================================================================= */
 
 /* Composition and decomposition.
-   Updated for Unicode TR #15 revision 31.  */
+   Updated for Unicode TR #15 revision 33.  */
 
 /* Maximum number of characters into which a single Unicode character can be
    decomposed.  */
@@ -9108,20 +9118,20 @@
  * compile-command: "
    gcc -O -Wall gen-uni-tables.c -Iunictype -o gen-uni-tables && \
    ./gen-uni-tables \
-        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/5.2.0/ucd/UnicodeData.txt \
-        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/5.2.0/ucd/PropList.txt \
-        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/5.2.0/ucd/DerivedCoreProperties.txt \
-        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/5.2.0/ucd/Scripts.txt \
-        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/5.2.0/ucd/Blocks.txt \
+        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/6.0.0/ucd/UnicodeData.txt \
+        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/6.0.0/ucd/PropList.txt \
+        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/6.0.0/ucd/DerivedCoreProperties.txt \
+        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/6.0.0/ucd/Scripts.txt \
+        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/6.0.0/ucd/Blocks.txt \
         /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/3.0.1/PropList-3.0.1.txt \
-        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/5.2.0/ucd/EastAsianWidth.txt \
-        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/5.2.0/ucd/LineBreak.txt \
-        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/5.2.0/ucd/auxiliary/WordBreakProperty.txt \
-        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/5.2.0/ucd/auxiliary/GraphemeBreakProperty.txt \
-        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/5.2.0/ucd/CompositionExclusions.txt \
-        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/5.2.0/ucd/SpecialCasing.txt \
-        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/5.2.0/ucd/CaseFolding.txt \
-        5.2.0 \
+        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/6.0.0/ucd/EastAsianWidth.txt \
+        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/6.0.0/ucd/LineBreak.txt \
+        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/6.0.0/ucd/auxiliary/WordBreakProperty.txt \
+        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/6.0.0/ucd/auxiliary/GraphemeBreakProperty.txt \
+        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/6.0.0/ucd/CompositionExclusions.txt \
+        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/6.0.0/ucd/SpecialCasing.txt \
+        /gfs/petix/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/6.0.0/ucd/CaseFolding.txt \
+        6.0.0 \
    && diff unilbrk/lbrkprop_org.txt unilbrk/lbrkprop.txt \
    && diff uniwbrk/wbrkprop_org.txt uniwbrk/wbrkprop.txt
    "
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -289,7 +289,7 @@
     0xFFFFD740, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFBFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE003F, 0x007FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFE00FF, 0x007FFFFF, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFFFFF, 0x0000003F, 0x00000000,
@@ -315,10 +315,10 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000781F,
     0xFFFFFFFF, 0x0000003F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFFFFFFF, 0x00003FFC,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0x00003FFF,
     0x00FFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000018FF, 0x00000000, 0x00000000, 0x00000000,
+    0x000378FF, 0x000003FF, 0x00000000, 0x04000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00F8007F, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -432,13 +432,13 @@
     0x000003F8, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x02000000, 0x00000000,
     0xFFFE0000, 0xBFFFFFFF, 0x000000B6, 0x00100000,
-    0x07FF000F, 0x00000000, 0x7FFFF801, 0x00010000,
-    0x00000000, 0x00000000, 0xFFC00000, 0x00003DFF,
+    0x07FF000F, 0x00000000, 0xFFFFF801, 0x00010000,
+    0x00000000, 0x00000000, 0xBFC00000, 0x00003DFF,
     0x00028000, 0xFFFF0000, 0x000007FF, 0x00000000,
     0x00000000, 0x0001FFC0, 0x00000000, 0x043FF800,
-    0xFFC00000, 0x00003FFF, 0x00000000, 0x00000000,
+    0xFFC00000, 0x00003FFF, 0x0E000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000007, 0x10000000, 0x003E21FE, 0x0002000C,
+    0x00000007, 0x14000000, 0x00FE21FE, 0x0002000C,
     0x00000002, 0x10000000, 0x0000201E, 0x0000000C,
     0x00000006, 0x10000000, 0x00023986, 0x00230000,
     0x00000006, 0x10000000, 0x000021BE, 0x0000000C,
@@ -451,14 +451,14 @@
     0x00000000, 0x07F20000, 0x00007FC0, 0x00000000,
     0x00000000, 0x1BF20000, 0x00003F40, 0x00000000,
     0x03000000, 0x02A00000, 0x00000000, 0x7FFE0000,
-    0xFEFF00DF, 0x1FFFFFFF, 0x00000040, 0x00000000,
+    0xFEFFE0DF, 0x1FFFFFFF, 0x00000040, 0x00000000,
     0x00000000, 0x66FDE000, 0xC3000000, 0x001E0001,
     0x20002064, 0x00000000, 0x00000000, 0x10000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x80000000, 0x00000000,
+    0x00000000, 0x00000000, 0xE0000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -471,22 +471,22 @@
     0x01800000, 0x00000000, 0x7F400000, 0x9FF81FE5,
     0x00000000, 0x00000080, 0x00000000, 0x00000000,
     0x0000000F, 0x17D00000, 0x00000004, 0x000FF800,
-    0x00000003, 0x0000033C, 0x00000000, 0x00000000,
+    0x00000003, 0x0000033C, 0x00000000, 0x0003A340,
     0x00000000, 0x00CFF000, 0x00000000, 0x3F000000,
     0x00000000, 0x00000000, 0xFFF70000, 0x000021FD,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFFFFFFF, 0xE000007F,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0xF000007F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xA0000000, 0xE000E003, 0x6000E000,
     0x0300F800, 0x00007C90, 0x00000000, 0x8002FC1F,
-    0x00000000, 0x00000000, 0xFFFF0000, 0x0001FFFF,
+    0x1FE00000, 0x00000000, 0xFFFF0000, 0x0001FFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00038000,
-    0x00000000, 0x00000000, 0x00000000, 0x00008000,
+    0x00000000, 0x00000000, 0x00000000, 0x80008000,
     0x00000000, 0x00000000, 0x00000000, 0xFFFFFFFF,
     0x00000000, 0x00008000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -519,7 +519,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x40000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFC0000, 0x00000003, 0x00000000,
     0x0008FFFF, 0x0000007F, 0x00240000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x80000000,
     0x04004080, 0x40000000, 0x00000001, 0x00010000,
@@ -532,7 +532,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000002, 0xFF000000, 0x0000007F, 0x00000000,
     0x00000003, 0x26780000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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-case.c for Unicode 5.2.0.  */
+/* Generated automatically by gen-case.c for Unicode 6.0.0.  */
 #define mapping_header_0 16
 #define mapping_header_1 2
 #define mapping_header_2 7
@@ -295,7 +295,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,
-        1,     0,     1,     0,     1,     0,     0,     0,
+        1,     0,     1,     0,     1,     0,     1,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,    48,    48,    48,    48,    48,    48,    48,
        48,    48,    48,    48,    48,    48,    48,    48,
@@ -479,7 +479,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,     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,     0,     0,     0,     0,     0,
@@ -516,11 +516,11 @@
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     1,     0,     1,     0, -35332,     1,     0,
         1,     0,     1,     0,     1,     0,     1,     0,
-        0,     0,     0,     1,     0,     0,     0,     0,
-        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     1,     0, -42280,     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,
+        1,     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,     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-case.c for Unicode 5.2.0.  */
+/* Generated automatically by gen-case.c for Unicode 6.0.0.  */
 #define mapping_header_0 16
 #define mapping_header_1 2
 #define mapping_header_2 7
@@ -295,7 +295,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,
-        1,     0,     1,     0,     1,     0,     0,     0,
+        1,     0,     1,     0,     1,     0,     1,     0,
         0,     0,     0,     0,     0,     0,     0,     0,
         0,    48,    48,    48,    48,    48,    48,    48,
        48,    48,    48,    48,    48,    48,    48,    48,
@@ -479,7 +479,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,     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,     0,     0,     0,     0,     0,
@@ -516,11 +516,11 @@
         0,     0,     0,     0,     0,     0,     0,     0,
         0,     1,     0,     1,     0, -35332,     1,     0,
         1,     0,     1,     0,     1,     0,     1,     0,
-        0,     0,     0,     1,     0,     0,     0,     0,
-        0,     0,     0,     0,     0,     0,     0,     0,
+        0,     0,     0,     1,     0, -42280,     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,
+        1,     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,     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-case.c for Unicode 5.2.0.  */
+/* Generated automatically by gen-case.c for Unicode 6.0.0.  */
 #define mapping_header_0 16
 #define mapping_header_1 2
 #define mapping_header_2 7
@@ -223,7 +223,7 @@
         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,     0,     0,     0,
+     -205,     0,     0,  -207,     0, 42280,     0,     0,
      -209,  -211,     0, 10743,     0,     0,     0,  -211,
         0, 10749,  -213,     0,     0,  -214,     0,     0,
         0,     0,     0,     0,     0, 10727,     0,     0,
@@ -311,7 +311,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,    -1,     0,    -1,     0,    -1,     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,
@@ -527,7 +527,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,    -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,     0,     0,     0,     0,
@@ -565,10 +565,10 @@
         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,     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,    -1,     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,     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-case.c for Unicode 5.2.0.  */
+/* Generated automatically by gen-case.c for Unicode 6.0.0.  */
 #define mapping_header_0 16
 #define mapping_header_1 2
 #define mapping_header_2 7
@@ -223,7 +223,7 @@
         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,     0,     0,     0,
+     -205,     0,     0,  -207,     0, 42280,     0,     0,
      -209,  -211,     0, 10743,     0,     0,     0,  -211,
         0, 10749,  -213,     0,     0,  -214,     0,     0,
         0,     0,     0,     0,     0, 10727,     0,     0,
@@ -311,7 +311,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,    -1,     0,    -1,     0,    -1,     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,
@@ -527,7 +527,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,    -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,     0,     0,     0,     0,
@@ -565,10 +565,10 @@
         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,     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,    -1,     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,     0,     0,     0,     0,     0,     0,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[114 * 40 + 1];
+    unsigned short level3[125 * 40 + 1];
   }
 u_bidi_category =
 {
@@ -32,15 +32,15 @@
      5888,  6016,  6144,  6272,  6400,  6528,  6656,  6784,
      6912,  7040,  6528,  6528,  6528,  7168,  7296,  7424,
        -1,    -1,  6528,  6528,  6528,  6528,  7552,    -1,
-       -1,  7680,    -1,  7808,  7936,  8064,  6528,  8192,
-     8320,  8448,    -1,  8576,  8704,  8832,  8960,  9088,
+       -1,  7680,  7808,  7936,  8064,  8192,  6528,  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,13 +83,13 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -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,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     1536,  1536, 12160,  1536, 12288,  1536, 12416,  1536,
-     1536,  1536,  1536,  1536, 12544,  1536,  1536,  1536,
-       -1, 12672,    -1,    -1,    -1,    -1,    -1,    -1,
+     1536,  1536, 12288,  1536, 12416,  1536, 12544,  1536,
+     1536,  1536,  1536,  1536, 12672,  1536,  1536,  1536,
+    12800, 12928,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -137,18 +137,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,    -1, 12800, 12928, 13056,    -1, 13184,    -1,
-       -1,    -1,    -1,    -1,    -1, 13312, 13440, 13568,
+       -1,    -1, 13056, 13184, 13312,    -1, 13440,    -1,
+       -1,    -1,    -1,    -1,    -1, 13568, 13696, 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,
        -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, 13824, 13952,    -1,    -1,    -1,    -1,    -1,
+    13952, 14080, 14208,    -1,    -1,    -1, 14336, 14464,
+    14592, 14720, 14848, 14976, 15104, 15232, 15360,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1, 14080,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1, 15488,
        -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, 14080,
-    14208, 14208, 14336, 14464, 14208, 14208, 14208, 14208,
-    14208, 14208, 14208, 14208, 14208, 14208, 14208, 14208,
-    14208, 14208, 14208, 14208, 14208, 14208, 14208, 14208,
-    14208, 14208, 14208, 14208, 14208, 14208, 14208, 14208,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1, 15488,
+    15616, 15616, 15744, 15872, 15616, 15616, 15616, 15616,
+    15616, 15616, 15616, 15616, 15616, 15616, 15616, 15616,
+    15616, 15616, 15616, 15616, 15616, 15616, 15616, 15616,
+    15616, 15616, 15616, 15616, 15616, 15616, 15616, 15616,
        -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, 14080
+       -1,    -1,    -1,    -1,    -1,    -1,    -1, 15488
   },
   {
     0x39ce, 0x9ce7, 0x0e73, 0x183e, 0x739f, 0x39ce, 0x9ce7, 0xce73,
@@ -317,14 +317,14 @@
     0xad6b, 0x8845, 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, 0x235a, 0xad6b, 0xd6b5,
+    0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xad6b, 0xd6b5,
     0x6b5a, 0xb5a9, 0x2108, 0x108d, 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, 0x4842, 0xad6b, 0xd6b5, 0x6b56, 0xb5ad, 0x08d6,
+    0x2108, 0x1084, 0x4842, 0xad6b, 0xd6b5, 0x6c96, 0xb5ad, 0x08d6,
     0x4d69, 0xd6b6, 0x211a, 0x2108, 0x1084, 0x0842, 0x4211, 0x2108,
-    0x1084, 0x0842, 0x8421, 0x4210, 0x7108, 0x11a4, 0x0842, 0x8421,
+    0x1084, 0x0842, 0x8421, 0x4210, 0x5908, 0x11a4, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0xb5ad,
     0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0x4235,
     0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842,
@@ -337,7 +337,7 @@
     0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0x4631, 0xad6b,
     0xd68d, 0x6b5a, 0xb5ad, 0x5a36, 0xa36b, 0xd6b5, 0x18da, 0x8c63,
     0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c,
-    0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631,
+    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, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63,
@@ -346,8 +346,8 @@
     0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6,
     0x35ad, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0xd000, 0x0000, 0xb5a0, 0x5ad6, 0x0d6b, 0x0000,
-    0x001a, 0xb5a0, 0x1ad6, 0x0000, 0x0000, 0x0000, 0xb400, 0x0006,
+    0x0000, 0x0000, 0xd034, 0x0000, 0xb5a0, 0x5ad6, 0x0d6b, 0x0000,
+    0x001a, 0xb5a0, 0x5ad6, 0x006b, 0x0000, 0x0000, 0xb400, 0x0006,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x01a0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -383,7 +383,7 @@
     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, 0x4a40, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0xb5a0, 0x00d6, 0x0000, 0x0000,
@@ -409,7 +409,7 @@
     0x1a00, 0xa068, 0x2949, 0x0025, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0xb5a0, 0x5ad6, 0xad6b, 0xd6b5, 0x035a,
-    0xb5ad, 0x40d6, 0x006b, 0x0000, 0x0000, 0xb5ad, 0x5ad6, 0xa06b,
+    0xb5ad, 0x40d6, 0x006b, 0x0000, 0x6b5a, 0xb5ad, 0x5ad6, 0xa06b,
     0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
     0x5ad6, 0xad6b, 0xd6b5, 0x0000, 0x0000, 0x4000, 0x0003, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -427,7 +427,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, 0x0000, 0x0000, 0x0000, 0x6800, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6b5a, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4a52, 0xa529, 0x5294,
     0x0002, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -487,8 +487,8 @@
     0x01ad, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0xb400, 0x1ad6, 0xad00, 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, 0x4000,
+    0xad03, 0x0001, 0x681a, 0x01ad, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd000, 0x6b5a, 0xb5ad,
     0x4006, 0x006b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -503,7 +503,7 @@
     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, 0x0000, 0x6b5a,
+    0x0003, 0x0000, 0x0000, 0x0000, 0x0000, 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 +516,7 @@
     0x8421, 0xe738, 0x739c, 0x0008, 0x1080, 0x0842, 0x24a5, 0x04a5,
     0x2108, 0x1084, 0x0842, 0x24a5, 0x04a5, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a,
-    0x94a5, 0x0a52, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x94a5, 0x4a52, 0x0001, 0x0000, 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 +548,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,
-    0x1294, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x5294, 0x294a, 0x94a5, 0x4a52, 0x0009, 0x0000, 0x0000, 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,
@@ -562,17 +562,17 @@
     0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
     0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x094a, 0x94a4, 0x4a52,
     0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a,
-    0x9025, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x0252, 0x0009,
-    0x5200, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5,
-    0x4a40, 0x8129, 0x5294, 0x2002, 0x94a5, 0x4a52, 0xa529, 0x5294,
-    0x294a, 0x94a5, 0x4a52, 0xa529, 0x4094, 0x294a, 0x94a5, 0x4a52,
-    0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x094a,
-    0x9024, 0x4a52, 0x8000, 0x5294, 0x294a, 0x04a5, 0x4a40, 0xa529,
+    0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529,
     0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5,
-    0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0x0129, 0x5200,
-    0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a40,
-    0xa529, 0x5294, 0x294a, 0x04a5, 0x4a52, 0xa529, 0x5294, 0x204a,
-    0x0001, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529,
+    0x4a40, 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, 0x5294, 0x294a, 0x94a5, 0x4a52,
+    0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x204a,
+    0x9481, 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,
@@ -587,6 +587,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, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6800,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 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, 0x5ad6,
     0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a,
     0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
@@ -774,6 +779,11 @@
     0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c,
     0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0xad6b, 0xd6b5,
     0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x1ad6,
+    0x01a0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    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,
     0x01ad, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8000,
     0x5ad6, 0xa003, 0x0035, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -820,15 +830,60 @@
     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, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 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,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 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,
+    0x294a, 0x94a5, 0x0012, 0x0000, 0x0000, 0x0000, 0x0000, 0x4a52,
+    0x2529, 0x5290, 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,
+    0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294,
+    0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52,
+    0xa529, 0x5294, 0x294a, 0x04a5, 0x4812, 0xa529, 0x5294, 0x294a,
+    0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529,
+    0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5,
+    0x4a52, 0xa529, 0x5294, 0x094a, 0x94a4, 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, 0xa409, 0x5294, 0x294a, 0x94a5, 0x4a52,
+    0xa529, 0x5294, 0x294a, 0x0025, 0x0000, 0x0000, 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,
+    0x4a40, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4812, 0x8129, 0x1204,
+    0x2048, 0x04a5, 0x4a52, 0x2529, 0x5200, 0x094a, 0x0024, 0x4a52,
+    0xa409, 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,
+    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,
     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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 static const uc_block_t blocks[] =
 {
   { 0x0000, 0x007F, "Basic Latin" },
@@ -21,6 +21,7 @@
   { 0x0780, 0x07BF, "Thaana" },
   { 0x07C0, 0x07FF, "NKo" },
   { 0x0800, 0x083F, "Samaritan" },
+  { 0x0840, 0x085F, "Mandaic" },
   { 0x0900, 0x097F, "Devanagari" },
   { 0x0980, 0x09FF, "Bengali" },
   { 0x0A00, 0x0A7F, "Gurmukhi" },
@@ -58,6 +59,7 @@
   { 0x1A20, 0x1AAF, "Tai Tham" },
   { 0x1B00, 0x1B7F, "Balinese" },
   { 0x1B80, 0x1BBF, "Sundanese" },
+  { 0x1BC0, 0x1BFF, "Batak" },
   { 0x1C00, 0x1C4F, "Lepcha" },
   { 0x1C50, 0x1C7F, "Ol Chiki" },
   { 0x1CD0, 0x1CFF, "Vedic Extensions" },
@@ -135,6 +137,7 @@
   { 0xAA00, 0xAA5F, "Cham" },
   { 0xAA60, 0xAA7F, "Myanmar Extended-A" },
   { 0xAA80, 0xAADF, "Tai Viet" },
+  { 0xAB00, 0xAB2F, "Ethiopic Extended-A" },
   { 0xABC0, 0xABFF, "Meetei Mayek" },
   { 0xAC00, 0xD7AF, "Hangul Syllables" },
   { 0xD7B0, 0xD7FF, "Hangul Jamo Extended-B" },
@@ -179,10 +182,13 @@
   { 0x10B60, 0x10B7F, "Inscriptional Pahlavi" },
   { 0x10C00, 0x10C4F, "Old Turkic" },
   { 0x10E60, 0x10E7F, "Rumi Numeral Symbols" },
+  { 0x11000, 0x1107F, "Brahmi" },
   { 0x11080, 0x110CF, "Kaithi" },
   { 0x12000, 0x123FF, "Cuneiform" },
   { 0x12400, 0x1247F, "Cuneiform Numbers and Punctuation" },
   { 0x13000, 0x1342F, "Egyptian Hieroglyphs" },
+  { 0x16800, 0x16A3F, "Bamum Supplement" },
+  { 0x1B000, 0x1B0FF, "Kana Supplement" },
   { 0x1D000, 0x1D0FF, "Byzantine Musical Symbols" },
   { 0x1D100, 0x1D1FF, "Musical Symbols" },
   { 0x1D200, 0x1D24F, "Ancient Greek Musical Notation" },
@@ -191,10 +197,16 @@
   { 0x1D400, 0x1D7FF, "Mathematical Alphanumeric 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" },
+  { 0x1F600, 0x1F64F, "Emoticons" },
+  { 0x1F680, 0x1F6FF, "Transport And Map Symbols" },
+  { 0x1F700, 0x1F77F, "Alchemical Symbols" },
   { 0x20000, 0x2A6DF, "CJK Unified Ideographs Extension B" },
   { 0x2A700, 0x2B73F, "CJK Unified Ideographs Extension C" },
+  { 0x2B740, 0x2B81F, "CJK Unified Ideographs Extension D" },
   { 0x2F800, 0x2FA1F, "CJK Compatibility Ideographs Supplement" },
   { 0xE0000, 0xE007F, "Tags" },
   { 0xE0100, 0xE01EF, "Variation Selectors Supplement" },
@@ -213,133 +225,50 @@
     9,  12,
    12,  13,
    13,  17,
-   17,  18,
-   18,  20,
-   20,  22,
-   22,  24,
-   24,  26,
-   26,  28,
-   28,  30,
-   30,  31,
-   31,  33,
-   33,  34,
+   17,  19,
+   19,  21,
+   21,  23,
+   23,  25,
+   25,  27,
+   27,  29,
+   29,  31,
+   31,  32,
+   32,  34,
    34,  35,
-   34,  37,
-   37,  38,
-   37,  38,
-   37,  40,
-   40,  45,
-   45,  47,
-   47,  51,
-   51,  53,
-   53,  55,
-   55,  58,
-   58,  61,
-   61,  62,
-   62,  63,
-   63,  67,
-   67,  70,
-   70,  71,
-   71,  72,
-   72,  75,
-   75,  78,
-   78,  79,
-   79,  82,
-   82,  83,
-   83,  85,
-   85,  86,
-   86,  87,
-   87,  90,
-   90,  94,
-   94,  96,
+   35,  36,
+   35,  38,
+   38,  39,
+   38,  39,
+   38,  41,
+   41,  46,
+   46,  48,
+   48,  52,
+   52,  54,
+   54,  57,
+   57,  60,
+   60,  63,
+   63,  64,
+   64,  65,
+   65,  69,
+   69,  72,
+   72,  73,
+   73,  74,
+   74,  77,
+   77,  80,
+   80,  81,
+   81,  84,
+   84,  85,
+   85,  87,
+   87,  88,
+   88,  89,
+   89,  92,
+   92,  96,
    96,  98,
-   98, 101,
-  101, 107,
-  107, 108,
-  108, 109,
-  109, 110,
-  109, 110,
-  109, 110,
-  109, 110,
-  109, 110,
-  109, 110,
-  109, 110,
-  109, 110,
-  109, 110,
-  109, 110,
-  109, 110,
-  109, 110,
-  109, 110,
-  109, 110,
-  109, 110,
-  109, 110,
-  109, 110,
-  109, 110,
-  109, 110,
+   98, 100,
+  100, 103,
+  103, 109,
   109, 110,
-  109, 110,
-  109, 110,
-  109, 110,
-  109, 110,
-  109, 110,
-  109, 111,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
-  111, 112,
+  110, 111,
   111, 112,
   111, 112,
   111, 112,
@@ -365,317 +294,361 @@
   111, 112,
   111, 112,
   111, 112,
-  112, 113,
-  112, 113,
-  112, 113,
-  112, 113,
-  112, 115,
-  115, 116,
-  115, 118,
-  118, 120,
-  120, 125,
-  125, 129,
-  129, 132,
-  132, 133,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 134,
-  133, 135,
-  135, 136,
-  135, 136,
-  135, 136,
-  135, 137,
-  137, 138,
-  137, 138,
-  137, 138,
-  137, 138,
-  138, 139,
-  138, 139,
-  138, 139,
-  138, 139,
-  138, 139,
-  138, 139,
-  138, 139,
-  138, 139,
-  138, 139,
-  138, 139,
-  138, 139,
-  138, 139,
-  138, 139,
-  138, 139,
-  138, 139,
-  138, 139,
-  138, 139,
-  138, 139,
-  138, 139,
-  138, 139,
-  138, 139,
-  138, 139,
+  111, 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, 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, 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, 114,
+  113, 114,
+  113, 114,
+  113, 114,
+  113, 114,
+  113, 114,
+  113, 114,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 115,
+  114, 117,
+  117, 118,
+  117, 120,
+  120, 122,
+  122, 127,
+  127, 131,
+  131, 134,
+  134, 136,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 137,
+  136, 138,
   138, 139,
   138, 139,
   138, 139,
-  139, 140,
-  139, 140,
-  140, 142,
+  138, 140,
+  140, 141,
+  140, 141,
+  140, 141,
+  140, 141,
+  141, 142,
+  141, 142,
+  141, 142,
+  141, 142,
+  141, 142,
+  141, 142,
+  141, 142,
+  141, 142,
+  141, 142,
+  141, 142,
+  141, 142,
+  141, 142,
+  141, 142,
+  141, 142,
+  141, 142,
+  141, 142,
+  141, 142,
+  141, 142,
+  141, 142,
   141, 142,
   141, 142,
-  142, 148,
-  148, 150,
-  150, 152,
-  152, 156,
-  156, 158,
-  158, 162,
-  162, 165,
-  165, 165,
-  165, 165,
-  165, 165,
-  165, 167,
-  167, 169,
-  169, 171,
-  171, 174,
-  174, 175,
-  175, 175,
-  175, 176,
-  176, 176,
-  176, 177,
-  177, 177,
-  177, 177,
-  177, 177,
-  177, 177,
-  177, 177,
-  177, 177,
-  177, 177,
-  177, 177,
-  177, 177,
-  177, 177,
-  177, 177,
-  177, 177,
-  177, 177,
-  177, 177,
-  177, 177,
+  141, 142,
+  141, 142,
+  141, 142,
+  141, 142,
+  142, 143,
+  142, 143,
+  143, 145,
+  144, 145,
+  144, 145,
+  145, 151,
+  151, 153,
+  153, 155,
+  155, 159,
+  159, 161,
+  161, 165,
+  165, 168,
+  168, 168,
+  168, 168,
+  168, 168,
+  168, 170,
+  170, 172,
+  172, 174,
+  174, 177,
   177, 178,
-  177, 178,
-  177, 178,
-  177, 178,
+  178, 178,
   178, 179,
   179, 179,
-  179, 179,
-  179, 179,
-  179, 179,
-  179, 179,
-  179, 179,
-  179, 179,
-  179, 179,
-  179, 179,
-  179, 179,
-  179, 179,
-  179, 180,
-  179, 180,
-  179, 180,
-  179, 180,
-  179, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 180,
-  180, 181,
+  179, 181,
+  181, 181,
+  181, 181,
+  181, 181,
+  181, 181,
+  181, 181,
+  181, 181,
+  181, 181,
+  181, 181,
+  181, 181,
+  181, 181,
+  181, 181,
+  181, 181,
+  181, 181,
+  181, 181,
+  181, 181,
+  181, 182,
+  181, 182,
+  181, 182,
   181, 182,
   182, 183,
-  183, 185,
-  185, 186,
-  185, 186,
-  185, 186,
+  183, 183,
+  183, 183,
+  183, 183,
+  183, 183,
+  183, 183,
+  183, 183,
+  183, 183,
+  183, 183,
+  183, 183,
+  183, 183,
+  183, 183,
+  183, 184,
+  183, 184,
+  183, 184,
+  183, 184,
+  183, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 184,
+  184, 185,
+  184, 185,
+  184, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
+  185, 185,
   185, 186,
   186, 186,
   186, 186,
@@ -701,202 +674,17 @@
   186, 186,
   186, 186,
   186, 186,
-  186, 188,
+  186, 186,
+  186, 186,
+  186, 186,
+  186, 186,
+  186, 186,
+  186, 186,
+  186, 186,
+  186, 187,
+  187, 188,
   188, 189,
-  189, 190,
-  190, 190,
-  190, 190,
-  190, 190,
-  190, 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,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  190, 191,
-  191, 192,
-  191, 192,
-  191, 192,
-  191, 192,
-  191, 192,
-  191, 192,
-  191, 192,
-  191, 192,
-  191, 192,
-  191, 192,
-  191, 192,
-  191, 192,
-  191, 192,
+  189, 191,
   191, 192,
   191, 192,
   191, 192,
@@ -925,54 +713,278 @@
   192, 192,
   192, 192,
   192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 192,
-  192, 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,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193,
-  193, 193
+  192, 195,
+  195, 196,
+  196, 197,
+  197, 198,
+  197, 198,
+  197, 198,
+  198, 200,
+  200, 201,
+  201, 201,
+  201, 201,
+  201, 201,
+  201, 201,
+  201, 201,
+  201, 201,
+  201, 201,
+  201, 201,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  201, 202,
+  202, 203,
+  202, 203,
+  202, 203,
+  202, 203,
+  202, 203,
+  202, 203,
+  202, 203,
+  202, 203,
+  202, 203,
+  202, 203,
+  202, 203,
+  202, 203,
+  202, 203,
+  202, 203,
+  202, 203,
+  202, 203,
+  202, 204,
+  203, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 204,
+  204, 205,
+  204, 205,
+  204, 205,
+  205, 205,
+  205, 205,
+  205, 205,
+  205, 205,
+  205, 205
 };
-#define blocks_upper_first_index 193
-#define blocks_upper_last_index 197
+#define blocks_upper_first_index 205
+#define blocks_upper_last_index 209
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[57 << 4];
+    /*unsigned*/ int level3[61 << 4];
   }
 u_categ_C =
 {
@@ -216,8 +216,8 @@
        18 +   640 * sizeof (short) / sizeof (int) +   496,
        18 +   640 * sizeof (short) / 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) +   752,
        18 +   640 * sizeof (short) / sizeof (int) +   496,
        18 +   640 * sizeof (short) / sizeof (int) +   496,
        18 +   640 * sizeof (short) / sizeof (int) +   496,
@@ -252,7 +252,7 @@
        18 +   640 * sizeof (short) / sizeof (int) +   496,
        18 +   640 * sizeof (short) / sizeof (int) +   496,
        18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
+       18 +   640 * sizeof (short) / sizeof (int) +   768,
        18 +   640 * sizeof (short) / sizeof (int) +   496,
        18 +   640 * sizeof (short) / sizeof (int) +   496,
        18 +   640 * sizeof (short) / sizeof (int) +   496,
@@ -268,10 +268,10 @@
        18 +   640 * sizeof (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) +   784,
        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) +   496,
        18 +   640 * sizeof (short) / sizeof (int) +   496,
        18 +   640 * sizeof (short) / sizeof (int) +   496,
@@ -284,10 +284,10 @@
        18 +   640 * sizeof (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) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
+       18 +   640 * sizeof (short) / sizeof (int) +   848,
+       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) +   496,
        18 +   640 * sizeof (short) / sizeof (int) +   496,
        18 +   640 * sizeof (short) / sizeof (int) +   496,
@@ -375,7 +375,7 @@
        -1,
        -1,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   848,
+       18 +   640 * sizeof (short) / sizeof (int) +   912,
        -1,
        -1,
        -1,
@@ -383,8 +383,8 @@
        -1,
        -1,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   864,
-       18 +   640 * sizeof (short) / sizeof (int) +   496,
+       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,
@@ -417,7 +417,7 @@
        18 +   640 * sizeof (short) / sizeof (int) +   496,
        18 +   640 * sizeof (short) / sizeof (int) +   496,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   880,
+       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,
@@ -548,7 +548,7 @@
        18 +   640 * sizeof (short) / sizeof (int) +   496,
        18 +   640 * sizeof (short) / sizeof (int) +   496,
        18 +   640 * sizeof (short) / sizeof (int) +   496,
-       18 +   640 * sizeof (short) / sizeof (int) +   896,
+       18 +   640 * sizeof (short) / sizeof (int) +   960,
        18 +   640 * sizeof (short) / sizeof (int) +   496,
        18 +   640 * sizeof (short) / sizeof (int) +   496,
        18 +   640 * sizeof (short) / sizeof (int) +   496,
@@ -688,35 +688,35 @@
     0x0000280F, 0x00000004, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x0001FFC0, 0x01800000, 0x00000001,
+    0x00000000, 0x0001FF00, 0x01800000, 0x00000001,
     0x0001F900, 0x00000000, 0x0000FF00, 0xFFE0F800,
-    0x3000003F, 0x00000001, 0x80000000, 0x00000000,
+    0x3000003F, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x20000000, 0x00000000,
     0x0000C000, 0x00000000, 0x00001800, 0x00000000,
     0x00000000, 0xFFFC0000, 0x00000000, 0xF8000000,
-    0x00000000, 0x8000C000, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x8000C000, 0xB0000000, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00000000, 0x0C000000, 0x00C08000, 0x01F80000,
+    0x00000000, 0x00000000, 0x00000000, 0x01000000,
     0x00066011, 0x0C3A0200, 0x4F7F8660, 0xF0000030,
     0x00067811, 0x2C920200, 0xA1FDC678, 0xFFC0003F,
     0x00044011, 0x0C120200, 0xFFFEC440, 0xFFFD0030,
-    0x00066011, 0x0C120200, 0x4F3FC660, 0xFFFC0030,
+    0x00066011, 0x0C120200, 0x4F3FC660, 0xFF000030,
     0x29C23813, 0x3C0038E7, 0xFF7EC238, 0xF800003F,
     0x00022011, 0x1C100200, 0xFC9FC220, 0x00FF0030,
     0x00022013, 0x0C100200, 0xBF9FC220, 0xFFF90030,
-    0x00022013, 0x1C000200, 0xFF7FC220, 0x01C00030,
+    0x00022013, 0x18000000, 0xFF7F8220, 0x01C00030,
     0x03800013, 0xD0040000, 0x00A07B80, 0xFFE3FFFF,
     0x00000001, 0x78000000, 0xF0000000, 0xFFFFFFFF,
     0x010FDA69, 0xC4001351, 0xCC00C0A0, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000100, 0x0001E000,
-    0x0100F000, 0x20000000, 0xFE002000, 0xFFFFFFFF,
+    0x01000000, 0x20000000, 0xF8002000, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x0000FFC0, 0xE0000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xC280C200, 0x00000000,
     0x0000C200, 0x80C20000, 0x008000C2, 0x00000000,
-    0x00C20000, 0x00000000, 0x78000000, 0xE0000000,
+    0x00C20000, 0x00000000, 0x18000000, 0xE0000000,
     0xFC000000, 0x00000000, 0x00000000, 0xFFE00000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xE0000000, 0x00000000, 0x00000000, 0xFFFE0000,
@@ -729,38 +729,38 @@
     0x30000000, 0x00000000, 0x80000000, 0x60000000,
     0xFC00FC00, 0xFFFFC000, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x0000F000, 0xE0000000,
-    0x00000000, 0xFC003800, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0xFC003800, 0x00000000, 0x0FF00000,
     0x00000000, 0x07000000, 0x00001C00, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, 0xFFF80000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x1FFFFF80,
+    0x00000000, 0x00000000, 0x00000000, 0x0FFFFF80,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xC0C00000, 0x00000000, 0x5500C0C0, 0xC0000000,
     0x00000000, 0x00200000, 0x10300020, 0x80230000,
     0x0000F800, 0x00007C00, 0x00000000, 0x000CFFFF,
-    0xFFE08000, 0xFE000000, 0x0000FFFF, 0xFFFE0000,
+    0xE0008000, 0xFC000000, 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, 0xFFFFFE00,
+    0x00000000, 0x00000000, 0x00000000, 0xFFF00000,
     0x00000000, 0xFFFFFF80, 0xFFFFF800, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00004000, 0x000000F4,
-    0x00000C21, 0x00000100, 0x80385000, 0x00000001,
-    0x00E00000, 0x80010000, 0x0000E800, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000001, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00002800, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFC00E000, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00008000, 0x80000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x01FC0000,
-    0x00000000, 0x0000FFC0, 0x00000000, 0xFFFF7FC0,
+    0x00000000, 0x0000FFC0, 0x00000000, 0x7FFE7FC0,
     0xFF800000, 0x80808080, 0x80808080, 0x00000000,
     0x00000000, 0xFFFC0000, 0xFFFFFFFF, 0xFFFFFFFF,
     0x04000000, 0x00000000, 0x00000000, 0xFFF00000,
@@ -769,7 +769,7 @@
     0x00000000, 0x00000000, 0x00000001, 0x00000000,
     0x01800000, 0x00000000, 0x00000000, 0x00000000,
     0x0000001F, 0x0001C000, 0x00000000, 0x00000000,
-    0x00008000, 0xFF000000, 0x00000000, 0x0000FFF0,
+    0x00008000, 0xF8000000, 0x00000000, 0x0000FFF0,
     0x80000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x80000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -786,17 +786,17 @@
     0x0000E000, 0x00000000, 0x0000FF80, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0xFFFFF000, 0x00000000, 0x0FF00003,
+    0x00000000, 0xFFFFF000, 0x00000000, 0x0FF00000,
     0xFF000000, 0x00000000, 0x00000000, 0xFF000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFE000, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF,
+    0xFFFC8000, 0xFFFFFC00, 0xFFFFFFFF, 0x03FFFFFF,
     0x00000000, 0xFC00F000, 0x00000000, 0xFF000000,
     0x00000000, 0x00000000, 0xFC003FE0, 0xF0000000,
     0x00000000, 0x00000000, 0x7FF00000, 0xE0000000,
     0x00000000, 0x00000000, 0x3C004000, 0xFFFFFFFF,
     0x00000000, 0xFF800000, 0x0C00C000, 0xF0000000,
     0x00000000, 0x00000000, 0x07FFFFF8, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFF818181, 0xFFFF8080, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0xFC00C000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -813,7 +813,7 @@
     0x00000000, 0x0000C000, 0x00000000, 0x0000C000,
     0x00000000, 0x00000000, 0xFC000000, 0xFFFFFFFF,
     0x1F07FF80, 0xA0800000, 0x00000024, 0x00000000,
-    0x00000000, 0xFFFC0000, 0x0007FFFF, 0x00000000,
+    0x00000000, 0x00000000, 0x0007FFFC, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x0000FFFF, 0x00000000,
@@ -850,7 +850,7 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0x0003C000, 0xFFFF0000,
     0x00000000, 0x20000000, 0xFFFFFFFC, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -866,6 +866,14 @@
     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,
+    0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xFFC00000,
     0x00000000, 0x00000180, 0x00000000, 0x07F80000,
@@ -883,12 +891,20 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00003000, 0x00000000,
     0x00000000, 0x0000F000, 0x00000000, 0x00000000,
-    0xFFF00000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x0000F800, 0x5FFD8000, 0x7F7F83BB, 0x65FFFFFF,
-    0xFFFEC3FF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x0000FFFE, 0xFFFC0000, 0xFFFFFE00, 0xFFFFFFFF,
+    0xFFF00000, 0x80018000, 0x00010001, 0xFFFFFFFF,
+    0x0000F800, 0x00008000, 0x00000000, 0x0000FC00,
+    0xF8000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F,
+    0x0000FFF8, 0xF8000000, 0xFFFCFE00, 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, 0x0000FFFF, 0xFFFFFF00,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF,
+    0x8AA20001, 0x0010D0C0, 0xFFFF001E, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0xFFFFFFC0, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0xFFF00000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFF800000, 0xFFFFFFFF,
@@ -896,8 +912,8 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0xFFE00000, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0xFFE00000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xC0000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[56 << 4];
+    /*unsigned*/ int level3[60 << 4];
   }
 u_categ_Cn =
 {
@@ -216,8 +216,8 @@
        18 +   768 * sizeof (short) / sizeof (int) +   576,
        18 +   768 * sizeof (short) / 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) +   720,
        18 +   768 * sizeof (short) / sizeof (int) +   576,
        18 +   768 * sizeof (short) / sizeof (int) +   576,
        18 +   768 * sizeof (short) / sizeof (int) +   576,
@@ -252,7 +252,7 @@
        18 +   768 * sizeof (short) / sizeof (int) +   576,
        18 +   768 * sizeof (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) +   576,
        18 +   768 * sizeof (short) / sizeof (int) +   576,
        18 +   768 * sizeof (short) / sizeof (int) +   576,
@@ -268,10 +268,10 @@
        18 +   768 * sizeof (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) +   752,
        18 +   768 * sizeof (short) / sizeof (int) +   768,
+       18 +   768 * sizeof (short) / sizeof (int) +   784,
+       18 +   768 * sizeof (short) / sizeof (int) +   800,
        18 +   768 * sizeof (short) / sizeof (int) +   576,
        18 +   768 * sizeof (short) / sizeof (int) +   576,
        18 +   768 * sizeof (short) / sizeof (int) +   576,
@@ -284,10 +284,10 @@
        18 +   768 * sizeof (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) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
+       18 +   768 * sizeof (short) / sizeof (int) +   816,
+       18 +   768 * sizeof (short) / sizeof (int) +   832,
+       18 +   768 * sizeof (short) / sizeof (int) +   848,
+       18 +   768 * sizeof (short) / sizeof (int) +   864,
        18 +   768 * sizeof (short) / sizeof (int) +   576,
        18 +   768 * sizeof (short) / sizeof (int) +   576,
        18 +   768 * sizeof (short) / sizeof (int) +   576,
@@ -375,7 +375,7 @@
        -1,
        -1,
        -1,
-       18 +   768 * sizeof (short) / sizeof (int) +   816,
+       18 +   768 * sizeof (short) / sizeof (int) +   880,
        -1,
        -1,
        -1,
@@ -383,8 +383,8 @@
        -1,
        -1,
        -1,
-       18 +   768 * sizeof (short) / sizeof (int) +   832,
-       18 +   768 * sizeof (short) / sizeof (int) +   576,
+       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,
@@ -417,7 +417,7 @@
        18 +   768 * sizeof (short) / sizeof (int) +   576,
        18 +   768 * sizeof (short) / sizeof (int) +   576,
        -1,
-       18 +   768 * sizeof (short) / sizeof (int) +   848,
+       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,
@@ -548,7 +548,7 @@
        18 +   768 * sizeof (short) / sizeof (int) +   576,
        18 +   768 * sizeof (short) / sizeof (int) +   576,
        18 +   768 * sizeof (short) / sizeof (int) +   576,
-       18 +   768 * sizeof (short) / sizeof (int) +   864,
+       18 +   768 * sizeof (short) / sizeof (int) +   928,
        18 +   768 * sizeof (short) / sizeof (int) +   576,
        18 +   768 * sizeof (short) / sizeof (int) +   576,
        18 +   768 * sizeof (short) / sizeof (int) +   576,
@@ -803,7 +803,7 @@
        -1,
        -1,
        -1,
-       18 +   768 * sizeof (short) / sizeof (int) +   880
+       18 +   768 * sizeof (short) / sizeof (int) +   944
   },
   {
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -812,35 +812,35 @@
     0x0000280F, 0x00000004, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x0001FFC0, 0x01800000, 0x00000001,
+    0x00000000, 0x0001FF00, 0x01800000, 0x00000001,
     0x0001F900, 0x00000000, 0x0000FF00, 0xFFE0F800,
-    0x30000030, 0x00000001, 0x80000000, 0x00000000,
+    0x30000030, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00004000, 0x00000000, 0x00001800, 0x00000000,
     0x00000000, 0xFFFC0000, 0x00000000, 0xF8000000,
-    0x00000000, 0x8000C000, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x8000C000, 0xB0000000, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00000000, 0x0C000000, 0x00C08000, 0x01F80000,
+    0x00000000, 0x00000000, 0x00000000, 0x01000000,
     0x00066011, 0x0C3A0200, 0x4F7F8660, 0xF0000030,
     0x00067811, 0x2C920200, 0xA1FDC678, 0xFFC0003F,
     0x00044011, 0x0C120200, 0xFFFEC440, 0xFFFD0030,
-    0x00066011, 0x0C120200, 0x4F3FC660, 0xFFFC0030,
+    0x00066011, 0x0C120200, 0x4F3FC660, 0xFF000030,
     0x29C23813, 0x3C0038E7, 0xFF7EC238, 0xF800003F,
     0x00022011, 0x1C100200, 0xFC9FC220, 0x00FF0030,
     0x00022013, 0x0C100200, 0xBF9FC220, 0xFFF90030,
-    0x00022013, 0x1C000200, 0xFF7FC220, 0x01C00030,
+    0x00022013, 0x18000000, 0xFF7F8220, 0x01C00030,
     0x03800013, 0xD0040000, 0x00A07B80, 0xFFE3FFFF,
     0x00000001, 0x78000000, 0xF0000000, 0xFFFFFFFF,
     0x010FDA69, 0xC4001351, 0xCC00C0A0, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000100, 0x0001E000,
-    0x0100F000, 0x20000000, 0xFE002000, 0xFFFFFFFF,
+    0x01000000, 0x20000000, 0xF8002000, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x0000FFC0, 0xE0000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xC280C200, 0x00000000,
     0x0000C200, 0x80C20000, 0x008000C2, 0x00000000,
-    0x00C20000, 0x00000000, 0x78000000, 0xE0000000,
+    0x00C20000, 0x00000000, 0x18000000, 0xE0000000,
     0xFC000000, 0x00000000, 0x00000000, 0xFFE00000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xE0000000, 0x00000000, 0x00000000, 0xFFFE0000,
@@ -853,38 +853,38 @@
     0x30000000, 0x00000000, 0x80000000, 0x60000000,
     0xFC00FC00, 0xFFFFC000, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x0000F000, 0xE0000000,
-    0x00000000, 0xFC003800, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0xFC003800, 0x00000000, 0x0FF00000,
     0x00000000, 0x07000000, 0x00001C00, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, 0xFFF80000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x1FFFFF80,
+    0x00000000, 0x00000000, 0x00000000, 0x0FFFFF80,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xC0C00000, 0x00000000, 0x5500C0C0, 0xC0000000,
     0x00000000, 0x00200000, 0x10300020, 0x80230000,
     0x00000000, 0x00000000, 0x00000000, 0x000C03E0,
-    0xFFE08000, 0xFE000000, 0x0000FFFF, 0xFFFE0000,
+    0xE0008000, 0xFC000000, 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, 0xFFFFFE00,
+    0x00000000, 0x00000000, 0x00000000, 0xFFF00000,
     0x00000000, 0xFFFFFF80, 0xFFFFF800, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00004000, 0x000000F4,
-    0x00000C21, 0x00000100, 0x80385000, 0x00000001,
-    0x00E00000, 0x80010000, 0x0000E800, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000001, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00002800, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFC00E000, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00008000, 0x80000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x01FC0000,
-    0x00000000, 0x0000FFC0, 0x00000000, 0xFFFF7FC0,
+    0x00000000, 0x0000FFC0, 0x00000000, 0x7FFE7FC0,
     0xFF800000, 0x80808080, 0x80808080, 0x00000000,
     0x00000000, 0xFFFC0000, 0xFFFFFFFF, 0xFFFFFFFF,
     0x04000000, 0x00000000, 0x00000000, 0xFFF00000,
@@ -893,7 +893,7 @@
     0x00000000, 0x00000000, 0x00000001, 0x00000000,
     0x01800000, 0x00000000, 0x00000000, 0x00000000,
     0x0000001F, 0x0001C000, 0x00000000, 0x00000000,
-    0x00008000, 0xFF000000, 0x00000000, 0x0000FFF0,
+    0x00008000, 0xF8000000, 0x00000000, 0x0000FFF0,
     0x80000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x80000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -910,17 +910,17 @@
     0x0000E000, 0x00000000, 0x0000FF80, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0xFFFFF000, 0x00000000, 0x0FF00003,
+    0x00000000, 0xFFFFF000, 0x00000000, 0x0FF00000,
     0xFF000000, 0x00000000, 0x00000000, 0xFF000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFE000, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF,
+    0xFFFC8000, 0xFFFFFC00, 0xFFFFFFFF, 0x03FFFFFF,
     0x00000000, 0xFC00F000, 0x00000000, 0xFF000000,
     0x00000000, 0x00000000, 0xFC003FE0, 0xF0000000,
     0x00000000, 0x00000000, 0x7FF00000, 0xE0000000,
     0x00000000, 0x00000000, 0x3C004000, 0xFFFFFFFF,
     0x00000000, 0xFF800000, 0x0C00C000, 0xF0000000,
     0x00000000, 0x00000000, 0x07FFFFF8, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFF818181, 0xFFFF8080, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0xFC00C000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -929,7 +929,7 @@
     0x00000000, 0x0000C000, 0x00000000, 0x0000C000,
     0x00000000, 0x00000000, 0xFC000000, 0xFFFFFFFF,
     0x1F07FF80, 0xA0800000, 0x00000024, 0x00000000,
-    0x00000000, 0xFFFC0000, 0x0007FFFF, 0x00000000,
+    0x00000000, 0x00000000, 0x0007FFFC, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x0000FFFF, 0x00000000,
@@ -970,7 +970,7 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0x0003C000, 0xFFFF0000,
     0x00000000, 0x00000000, 0xFFFFFFFC, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -986,6 +986,14 @@
     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,
+    0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xFFC00000,
     0x00000000, 0x00000180, 0x00000000, 0x00000000,
@@ -1003,12 +1011,20 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00003000, 0x00000000,
     0x00000000, 0x0000F000, 0x00000000, 0x00000000,
-    0xFFF00000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x0000F800, 0x5FFD8000, 0x7F7F83BB, 0x65FFFFFF,
-    0xFFFEC3FF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x0000FFFE, 0xFFFC0000, 0xFFFFFE00, 0xFFFFFFFF,
+    0xFFF00000, 0x80018000, 0x00010001, 0xFFFFFFFF,
+    0x0000F800, 0x00008000, 0x00000000, 0x0000FC00,
+    0xF8000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F,
+    0x0000FFF8, 0xF8000000, 0xFFFCFE00, 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, 0x0000FFFF, 0xFFFFFF00,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF,
+    0x8AA20001, 0x0010D0C0, 0xFFFF001E, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0xFFFFFFC0, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0xFFF00000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFF800000, 0xFFFFFFFF,
@@ -1016,8 +1032,8 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0xFFE00000, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0xFFE00000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xC0000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[46 << 4];
+    /*unsigned*/ int level3[48 << 4];
   }
 u_categ_L =
 {
@@ -202,6 +202,8 @@
        -1,
        -1,
        -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   320,
+        4 +   384 * sizeof (short) / sizeof (int) +   656,
        -1,
        -1,
        -1,
@@ -236,6 +238,7 @@
        -1,
        -1,
        -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   672,
        -1,
        -1,
        -1,
@@ -253,11 +256,8 @@
        -1,
        -1,
        -1,
-       -1,
-       -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,
        -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) +   688,
+        4 +   384 * sizeof (short) / sizeof (int) +   720,
         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) +   704,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   736,
+        4 +   384 * sizeof (short) / sizeof (int) +   752,
        -1,
        -1,
        -1,
@@ -403,7 +403,7 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   320,
-        4 +   384 * sizeof (short) / sizeof (int) +   720,
+        4 +   384 * sizeof (short) / sizeof (int) +   752,
        -1,
        -1
   },
@@ -418,28 +418,28 @@
     0xFFFFD740, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFBFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE003F, 0x027FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFE00FF, 0x027FFFFF, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0xFFFF0000, 0x000707FF,
-    0x00000000, 0xFFFFFFFE, 0x000007FF, 0xFFFEC000,
+    0x00000000, 0xFFFFFFFF, 0x000007FF, 0xFFFEC000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x002FFFFF, 0x9C00C060,
     0xFFFD0000, 0x0000FFFF, 0xFFFFE000, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0002003F, 0xFFFFFC00, 0x043007FF,
-    0x043FFFFF, 0x00000110, 0x00000000, 0x00000000,
+    0x043FFFFF, 0x00000110, 0x01FFFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFE060003,
+    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFEFE0003,
     0xFFF99FE0, 0x23C5FDFF, 0xB0004000, 0x00030003,
     0xFFF987E0, 0x036DFDFF, 0x5E000000, 0x001C0000,
     0xFFFBBFE0, 0x23EDFDFF, 0x00010000, 0x00000003,
     0xFFF99FE0, 0x23EDFDFF, 0xB0000000, 0x00020003,
     0xD63DC7E8, 0x03FFC718, 0x00010000, 0x00000000,
     0xFFFDDFE0, 0x23EFFDFF, 0x03000000, 0x00000003,
-    0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x00000003,
-    0xFFFDDFE0, 0x23FFFDFF, 0x00000000, 0xFC000003,
+    0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x00060003,
+    0xFFFDDFE0, 0x27FFFFFF, 0x00004000, 0xFC000003,
     0xFC7FFFE0, 0x2FFBFFFF, 0x0000007F, 0x00000000,
     0xFFFFFFFE, 0x000DFFFF, 0x0000007F, 0x00000000,
     0xFEF02596, 0x200DECAE, 0x3000005F, 0x00000000,
     0x00000001, 0x00000000, 0xFFFFFEFF, 0x00001FFF,
-    0x00000F00, 0x00000000, 0x00000000, 0x00000000,
+    0x00001F00, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0x800007FF, 0x3C3F0000, 0xFFE1C062,
     0x00004003, 0xFFFFFFFF, 0xFFFF003F, 0x17FFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -463,7 +463,7 @@
     0x007FFFFF, 0xFFFFFFFF, 0x001FFFFF, 0x00000000,
     0x00000000, 0x00000080, 0x00000000, 0x00000000,
     0xFFFFFFE0, 0x000FFFFF, 0x00000FE0, 0x00000000,
-    0xFFFFFFF8, 0x0000C001, 0x00000000, 0x00000000,
+    0xFFFFFFF8, 0x0000C001, 0xFFFFFFFF, 0x0000003F,
     0xFFFFFFFF, 0x0000000F, 0xFC00E000, 0x3FFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x0003DE00,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -473,7 +473,7 @@
     0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF,
     0xFFFFFFFF, 0x5FDFFFFF, 0x0FCF1FDC, 0x1FDC1FFF,
     0x00000000, 0x00000000, 0x00000000, 0x80020000,
-    0x001F0000, 0x00000000, 0x00000000, 0x00000000,
+    0x1FFF0000, 0x00000000, 0x00000000, 0x00000000,
     0x3E2FFC84, 0xF3FFBD50, 0x000043E0, 0x00000000,
     0x00000018, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFF7FFF, 0x7FFFFFFF, 0xFFFFFFFF,
@@ -487,7 +487,7 @@
     0x00000060, 0x183E0000, 0xFFFFFFFE, 0xFFFFFFFF,
     0xE07FFFFF, 0xFFFFFFFE, 0xFFFFFFFF, 0xF7FFFFFF,
     0xFFFFFFE0, 0xFFFE3FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00007FFF, 0x00FFFFFF, 0x00000000, 0xFFFF0000,
+    0x00007FFF, 0x07FFFFFF, 0x00000000, 0xFFFF0000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -504,17 +504,17 @@
     0x00001FFF, 0x00000000, 0xFFFF0000, 0x3FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFF1FFF, 0x00000C00, 0xFFFFFFFF, 0x80007FFC,
+    0xFFFF1FFF, 0x00000C00, 0xFFFFFFFF, 0x80007FFF,
     0x00FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F,
     0xFF800000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000019FF, 0x00000000, 0x00000000, 0xF8000000,
+    0x000379FF, 0x000003FF, 0x00000000, 0xFC000000,
     0xFFFFF7BB, 0x00000007, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFC, 0x000FFFFF, 0x00000000, 0x08FC0000,
     0xFFFFFC00, 0xFFFF003F, 0x0000007F, 0x1FFFFFFF,
     0xFFFFFFF0, 0x0007FFFF, 0x00008000, 0x00000000,
     0xFFFFFFFF, 0x000001FF, 0x00000FF7, 0x047FFFFF,
     0xFFFFFFFF, 0x3E62FFFF, 0x38000005, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000007,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -560,7 +560,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFF8, 0x00FFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFF8, 0x0000FFFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -572,6 +572,14 @@
     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,
+    0x00000003, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF,
     0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF,
     0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF,
@@ -586,8 +594,8 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0x001FFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x001FFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -289,7 +289,7 @@
     0x00010000, 0xFFFFF000, 0xAAE37FFF, 0x192FAAAA,
     0x00000000, 0xFFFF0000, 0xFFFFFFFF, 0xAAAAAAAA,
     0xAAAAA802, 0xAAAAAAAA, 0xAAAAD554, 0xAAAAAAAA,
-    0xAAAAAAAA, 0x0000002A, 0x00000000, 0xFFFFFFFE,
+    0xAAAAAAAA, 0x000000AA, 0x00000000, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -307,10 +307,10 @@
     0xAAAAAAAA, 0xAAAAAAAA, 0xAAAAAAAA, 0x0000501A,
     0xFFFFFFFF, 0x0000003F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xAAAAAAAA, 0x00002AA8,
+    0x00000000, 0x00000000, 0xAAAAAAAA, 0x00002AAA,
     0x00AAAAAA, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xAAABAAA8, 0xAAAAAAAA, 0x95FEAAAA,
-    0x000010AA, 0x00000000, 0x00000000, 0x00000000,
+    0x000250AA, 0x000002AA, 0x00000000, 0x04000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00F8007F, 0x00000000, 0x00000000, 0x00000000,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -189,7 +189,7 @@
     0x00000000, 0xFFFFF000, 0xFFFFFFFF, 0x01000003,
     0xF8000000, 0xFFFFFFFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x80020000,
-    0x001F0000, 0x00000000, 0x00000000, 0x00000000,
+    0x1FFF0000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x20000000,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[43 << 4];
+    /*unsigned*/ int level3[45 << 4];
   }
 u_categ_Lo =
 {
@@ -202,6 +202,8 @@
        -1,
        -1,
        -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   288,
+        4 +   384 * sizeof (short) / sizeof (int) +   640,
        -1,
        -1,
        -1,
@@ -236,9 +238,7 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   656,
        -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) +   640,
+        4 +   384 * sizeof (short) / sizeof (int) +   672,
         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) +   656,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   688,
+        4 +   384 * sizeof (short) / sizeof (int) +   704,
        -1,
        -1,
        -1,
@@ -403,7 +403,7 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   288,
-        4 +   384 * sizeof (short) / sizeof (int) +   672,
+        4 +   384 * sizeof (short) / sizeof (int) +   704,
        -1,
        -1
   },
@@ -420,26 +420,26 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFF0000, 0x000707FF,
-    0x00000000, 0xFFFFFFFE, 0x000007FE, 0xFFFEC000,
+    0x00000000, 0xFFFFFFFF, 0x000007FE, 0xFFFEC000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x002FFFFF, 0x9C00C000,
     0xFFFD0000, 0x0000FFFF, 0xFFFFE000, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0002003F, 0xFFFFFC00, 0x000007FF,
-    0x003FFFFF, 0x00000000, 0x00000000, 0x00000000,
+    0x003FFFFF, 0x00000000, 0x01FFFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFE040003,
+    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFEFC0003,
     0xFFF99FE0, 0x23C5FDFF, 0xB0004000, 0x00030003,
     0xFFF987E0, 0x036DFDFF, 0x5E000000, 0x001C0000,
     0xFFFBBFE0, 0x23EDFDFF, 0x00010000, 0x00000003,
     0xFFF99FE0, 0x23EDFDFF, 0xB0000000, 0x00020003,
     0xD63DC7E8, 0x03FFC718, 0x00010000, 0x00000000,
     0xFFFDDFE0, 0x23EFFDFF, 0x03000000, 0x00000003,
-    0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x00000003,
-    0xFFFDDFE0, 0x23FFFDFF, 0x00000000, 0xFC000003,
+    0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x00060003,
+    0xFFFDDFE0, 0x27FFFFFF, 0x00004000, 0xFC000003,
     0xFC7FFFE0, 0x2FFBFFFF, 0x0000007F, 0x00000000,
     0xFFFFFFFE, 0x000DFFFF, 0x0000003F, 0x00000000,
     0xFEF02596, 0x200DECAE, 0x3000001F, 0x00000000,
     0x00000001, 0x00000000, 0xFFFFFEFF, 0x00001FFF,
-    0x00000F00, 0x00000000, 0x00000000, 0x00000000,
+    0x00001F00, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0x800007FF, 0x3C3F0000, 0xFFE1C062,
     0x00004003, 0x00000000, 0xFFFF0000, 0x07FFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -463,7 +463,7 @@
     0x007FFFFF, 0xFFFFFFFF, 0x001FFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFE0, 0x000FFFFF, 0x00000FE0, 0x00000000,
-    0xFFFFFFF8, 0x0000C001, 0x00000000, 0x00000000,
+    0xFFFFFFF8, 0x0000C001, 0xFFFFFFFF, 0x0000003F,
     0xFFFFFFFF, 0x0000000F, 0xFC00E000, 0x00FFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x0003DE00,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -479,7 +479,7 @@
     0x00000040, 0x10000000, 0xFFFFFFFE, 0xFFFFFFFF,
     0x807FFFFF, 0xFFFFFFFE, 0xFFFFFFFF, 0x87FFFFFF,
     0xFFFFFFE0, 0xFFFE3FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00007FFF, 0x00FFFFFF, 0x00000000, 0xFFFF0000,
+    0x00007FFF, 0x07FFFFFF, 0x00000000, 0xFFFF0000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -510,7 +510,7 @@
     0xFFFFFFF0, 0x0007FFFF, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0x000001FF, 0x00000FF7, 0x047EFFFF,
     0xFFFFFFFF, 0x3E62FFFF, 0x18000005, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000007,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -556,7 +556,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFF8, 0x00FFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFF8, 0x0000FFFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -568,14 +568,22 @@
     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,
+    0x00000003, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0x001FFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x001FFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -289,7 +289,7 @@
     0xFFFED740, 0x00000FFB, 0x551C8000, 0xE6905555,
     0xFFFFFFFF, 0x0000FFFF, 0x00000000, 0x55555555,
     0x55555401, 0x55555555, 0x55552AAB, 0x55555555,
-    0x55555555, 0xFFFE0015, 0x007FFFFF, 0x00000000,
+    0x55555555, 0xFFFE0055, 0x007FFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFFFFF, 0x0000003F, 0x00000000,
@@ -307,10 +307,10 @@
     0x55555555, 0x55555555, 0x55555555, 0x00002805,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x55555555, 0x00001554,
+    0x00000000, 0x00000000, 0x55555555, 0x00001555,
     0x00555555, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x55545554, 0x55555555, 0x6A005555,
-    0x00000855, 0x00000000, 0x00000000, 0x00000000,
+    0x00012855, 0x00000155, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x07FFFFFE, 0x00000000, 0x00000000,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -428,13 +428,13 @@
     0x000003F8, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFE0000, 0xBFFFFFFF, 0x000000B6, 0x00000000,
-    0x07FF0000, 0x00000000, 0x7FFFF800, 0x00010000,
-    0x00000000, 0x00000000, 0xDFC00000, 0x00003D9F,
+    0x07FF0000, 0x00000000, 0xFFFFF800, 0x00010000,
+    0x00000000, 0x00000000, 0x9FC00000, 0x00003D9F,
     0x00020000, 0xFFFF0000, 0x000007FF, 0x00000000,
     0x00000000, 0x0001FFC0, 0x00000000, 0x000FF800,
-    0xFBC00000, 0x00003EEF, 0x00000000, 0x00000000,
+    0xFBC00000, 0x00003EEF, 0x0E000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x0000000F, 0xD0000000, 0x003E7FFF, 0x0000000C,
+    0x0000000F, 0xDC000000, 0x00FEFFFF, 0x0000000C,
     0x0000000E, 0xD0000000, 0x0080399F, 0x0000000C,
     0x0000000E, 0xD0000000, 0x00023987, 0x00230000,
     0x0000000E, 0xD0000000, 0x00003BBF, 0x0000000C,
@@ -447,14 +447,14 @@
     0x00000000, 0x07F20000, 0x00007F80, 0x00000000,
     0x00000000, 0x1BF20000, 0x00003F00, 0x00000000,
     0x03000000, 0xC2A00000, 0x00000000, 0xFFFE0000,
-    0xFEFF00DF, 0x1FFFFFFF, 0x00000040, 0x00000000,
+    0xFEFFE0DF, 0x1FFFFFFF, 0x00000040, 0x00000000,
     0x00000000, 0x7FFFF800, 0xC3C00000, 0x001E3F9D,
     0x3C00BFFC, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x80000000, 0x00000000,
+    0x00000000, 0x00000000, 0xE0000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -467,18 +467,18 @@
     0x0F800000, 0x00000000, 0x7FE00000, 0x9FFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x0000001F, 0xFFF00000, 0x0000001F, 0x000FF800,
-    0x00000007, 0x000007FE, 0x00000000, 0x00000000,
+    0x00000007, 0x000007FE, 0x00000000, 0x000FFFC0,
     0x00000000, 0x00FFFFF0, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFF70000, 0x000421FF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFFFFFFF, 0xE000007F,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0xF000007F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFF0000, 0x0001FFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00038000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x80000000,
     0x00000000, 0x00000000, 0x00000000, 0xFFFFFFFF,
     0x00000000, 0x0000FC00, 0x00000000, 0x00000000,
     0x06000000, 0x00000000, 0x00000000, 0x00000000,
@@ -512,7 +512,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000007, 0xFF000000, 0x0000007F, 0x00000000,
     0x00000007, 0x07FF0000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -281,7 +281,7 @@
   {
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000008, 0xC0000000, 0x00005E01, 0x00000000,
+    0x00000008, 0xC8000000, 0x0000DE01, 0x00000000,
     0x0000000C, 0xC0000000, 0x00801981, 0x00000000,
     0x00000008, 0xC0000000, 0x00000001, 0x00000000,
     0x00000008, 0xC0000000, 0x00001A01, 0x00000000,
@@ -310,7 +310,7 @@
     0x0E000000, 0x00000000, 0x00A00000, 0x0007E01A,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000010, 0xE8200000, 0x0000001B, 0x00000000,
-    0x00000004, 0x000004C2, 0x00000000, 0x00000000,
+    0x00000004, 0x000004C2, 0x00000000, 0x000C5C80,
     0x00000000, 0x00300FF0, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00040002,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -323,7 +323,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x000016D8,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000005, 0x00000000, 0x00000000, 0x00000000,
     0x00000004, 0x01870000, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[3 << 4];
   }
 u_categ_Me =
 {
@@ -21,7 +21,6 @@
        -1,
        -1,
         2 +   128 * sizeof (short) / sizeof (int) +     0,
-        2 +   128 * sizeof (short) / sizeof (int) +    16,
        -1,
        -1,
        -1,
@@ -34,7 +33,8 @@
        -1,
        -1,
        -1,
-        2 +   128 * sizeof (short) / sizeof (int) +    32,
+       -1,
+        2 +   128 * sizeof (short) / sizeof (int) +    16,
        -1,
        -1,
        -1,
@@ -101,7 +101,7 @@
        -1,
        -1,
        -1,
-        2 +   128 * sizeof (short) / sizeof (int) +    48,
+        2 +   128 * sizeof (short) / sizeof (int) +    32,
        -1,
        -1,
        -1,
@@ -153,10 +153,6 @@
     0x00000000, 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, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -428,13 +428,13 @@
     0x000000F8, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFE0000, 0xBFFFFFFF, 0x000000B6, 0x00000000,
-    0x07FF0000, 0x00000000, 0x7FFFF800, 0x00010000,
+    0x07FF0000, 0x00000000, 0xFFFFF800, 0x00010000,
     0x00000000, 0x00000000, 0x9FC00000, 0x00003D9F,
     0x00020000, 0xFFFF0000, 0x000007FF, 0x00000000,
     0x00000000, 0x0001FFC0, 0x00000000, 0x000FF800,
-    0xFBC00000, 0x00003EEF, 0x00000000, 0x00000000,
+    0xFBC00000, 0x00003EEF, 0x0E000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000007, 0x10000000, 0x003E21FE, 0x0000000C,
+    0x00000007, 0x14000000, 0x00FE21FE, 0x0000000C,
     0x00000002, 0x10000000, 0x0000201E, 0x0000000C,
     0x00000006, 0x10000000, 0x00023986, 0x00230000,
     0x00000006, 0x10000000, 0x000021BE, 0x0000000C,
@@ -447,14 +447,14 @@
     0x00000000, 0x07F20000, 0x00007F80, 0x00000000,
     0x00000000, 0x1BF20000, 0x00003F00, 0x00000000,
     0x03000000, 0x02A00000, 0x00000000, 0x7FFE0000,
-    0xFEFF00DF, 0x1FFFFFFF, 0x00000040, 0x00000000,
+    0xFEFFE0DF, 0x1FFFFFFF, 0x00000040, 0x00000000,
     0x00000000, 0x66FDE000, 0xC3000000, 0x001E0001,
     0x20002064, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x80000000, 0x00000000,
+    0x00000000, 0x00000000, 0xE0000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -467,18 +467,18 @@
     0x01800000, 0x00000000, 0x7F400000, 0x9FF81FE5,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x0000000F, 0x17D00000, 0x00000004, 0x000FF800,
-    0x00000003, 0x0000033C, 0x00000000, 0x00000000,
+    0x00000003, 0x0000033C, 0x00000000, 0x0003A340,
     0x00000000, 0x00CFF000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFF70000, 0x000021FD,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFFFFFFF, 0xE000007F,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0xF000007F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x1FFF0000, 0x0001FFE2,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00038000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x80000000,
     0x00000000, 0x00000000, 0x00000000, 0xFFFFFFFF,
     0x00000000, 0x0000FC00, 0x00000000, 0x00000000,
     0x06000000, 0x00000000, 0x00000000, 0x00000000,
@@ -512,7 +512,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000002, 0xFF000000, 0x0000007F, 0x00000000,
     0x00000003, 0x06780000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[32 << 4];
+    /*unsigned*/ int level3[33 << 4];
   }
 u_categ_N =
 {
@@ -157,6 +157,7 @@
         3 +   256 * sizeof (short) / sizeof (int) +   416,
        -1,
         3 +   256 * sizeof (short) / sizeof (int) +   432,
+        3 +   256 * sizeof (short) / sizeof (int) +   448,
        -1,
        -1,
        -1,
@@ -166,8 +167,7 @@
        -1,
        -1,
        -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   448,
+        3 +   256 * sizeof (short) / sizeof (int) +   464,
        -1,
        -1,
        -1,
@@ -254,9 +254,9 @@
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   464,
+        3 +   256 * sizeof (short) / sizeof (int) +   480,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   480,
+        3 +   256 * sizeof (short) / sizeof (int) +   496,
        -1,
        -1,
        -1,
@@ -269,7 +269,7 @@
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   496,
+        3 +   256 * sizeof (short) / sizeof (int) +   512,
        -1,
        -1,
        -1,
@@ -293,7 +293,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x03F0FFC0,
     0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
     0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
-    0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
+    0x00000000, 0x00000000, 0x00000000, 0x00FCFFC0,
     0x00000000, 0x00000000, 0x00000000, 0x0007FFC0,
     0x00000000, 0x00000000, 0x00000000, 0x7F00FFC0,
     0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
@@ -391,6 +391,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFC0000, 0x0000FFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000007,
     0x00000000, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[17 << 4];
+    /*unsigned*/ int level3[18 << 4];
   }
 u_categ_Nd =
 {
@@ -157,6 +157,7 @@
        -1,
        -1,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   256,
        -1,
        -1,
        -1,
@@ -255,8 +256,7 @@
        -1,
        -1,
        -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   256,
+        3 +   256 * sizeof (short) / sizeof (int) +   272,
        -1,
        -1,
        -1,
@@ -314,7 +314,7 @@
     0x03FF0000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x0000FFC0, 0x00000000,
-    0x00000000, 0x00000000, 0x07FF0000, 0x00000000,
+    0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x03FF03FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
@@ -343,6 +343,10 @@
     0x00000000, 0x000003FF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[23 << 4];
   }
 u_categ_No =
 {
@@ -33,20 +33,20 @@
         3 +   256 * sizeof (short) / sizeof (int) +    80,
        -1,
         3 +   256 * sizeof (short) / sizeof (int) +    96,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   112,
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   112,
+        3 +   256 * sizeof (short) / sizeof (int) +   128,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   128,
         3 +   256 * sizeof (short) / sizeof (int) +   144,
+        3 +   256 * sizeof (short) / sizeof (int) +   160,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   160,
+        3 +   256 * sizeof (short) / sizeof (int) +   176,
        -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,
@@ -105,7 +105,7 @@
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   208,
+        3 +   256 * sizeof (short) / sizeof (int) +   224,
        -1,
        -1,
        -1,
@@ -149,14 +149,15 @@
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   224,
         3 +   256 * sizeof (short) / sizeof (int) +   240,
+        3 +   256 * sizeof (short) / sizeof (int) +   256,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   256,
         3 +   256 * sizeof (short) / sizeof (int) +   272,
+        3 +   256 * sizeof (short) / sizeof (int) +   288,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   288,
+        3 +   256 * sizeof (short) / sizeof (int) +   304,
+        3 +   256 * sizeof (short) / sizeof (int) +   320,
        -1,
        -1,
        -1,
@@ -253,8 +254,7 @@
        -1,
        -1,
        -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   304,
+        3 +   256 * sizeof (short) / sizeof (int) +   336,
        -1,
        -1,
        -1,
@@ -269,7 +269,7 @@
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   320,
+        3 +   256 * sizeof (short) / sizeof (int) +   352,
        -1,
        -1,
        -1,
@@ -289,7 +289,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x03F00000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00FC0000,
     0x00000000, 0x00000000, 0x00000000, 0x00070000,
     0x00000000, 0x00000000, 0x00000000, 0x7F000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -307,6 +307,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x03FF0000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x04000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x03F10000,
     0x000003FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFF0000, 0x00000000,
@@ -355,6 +359,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFC0000, 0x0000003F,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x0003FFFF,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -295,7 +295,7 @@
     0x00000000, 0x00000000, 0x00100000, 0x00000000,
     0x00003FFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x03800000,
-    0x00000000, 0x7FFF0000, 0x00000000, 0x00000000,
+    0x00000000, 0x7FFF0000, 0x40000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00010030,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -306,7 +306,7 @@
     0x00000000, 0x00000000, 0x0C008000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x0007FFF0, 0x3C000000, 0x00000000, 0x00000000,
-    0x00000020, 0x00000000, 0x001F0000, 0x00000000,
+    0x00000020, 0x00000000, 0x061F0000, 0x00000000,
     0x00000000, 0x00000000, 0x0000FC00, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x08000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -326,11 +326,11 @@
     0x000007FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000030, 0x00000000,
-    0x00000000, 0x00000000, 0xC0000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xC0000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00003F7F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFC000000, 0x00000001,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0xF0000000,
     0x00000000, 0xF8000000, 0x00000000, 0xC0000000,
     0x00000000, 0x00000000, 0x00080000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -353,7 +353,7 @@
     0x01FFFFF8, 0x00000000, 0x0F000000, 0x30000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xDE000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00010000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0x00037FFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -403,7 +403,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFE000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00003F80, 0x00000000,
     0x00000000, 0xD8000000, 0x00000003, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -295,7 +295,7 @@
     0x00000000, 0x00000000, 0x00100000, 0x00000000,
     0x00003FFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x03800000,
-    0x00000000, 0x7FFF0000, 0x00000000, 0x00000000,
+    0x00000000, 0x7FFF0000, 0x40000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00010030,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -306,7 +306,7 @@
     0x00000000, 0x00000000, 0x0C008000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x0007FFF0, 0x00000000, 0x00000000, 0x00000000,
-    0x00000020, 0x00000000, 0x001F0000, 0x00000000,
+    0x00000020, 0x00000000, 0x061F0000, 0x00000000,
     0x00000000, 0x00000000, 0x0000FC00, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x08000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -322,11 +322,11 @@
     0x000007BF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000030, 0x00000000,
-    0x00000000, 0x00000000, 0xC0000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xC0000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00003F7F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFC000000, 0x00000001,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0xF0000000,
     0x00000000, 0xF8000000, 0x00000000, 0xC0000000,
     0x00000000, 0x00000000, 0x00080000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -337,7 +337,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xDE000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00010000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xCB7FC9C3, 0x00037C00, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -383,7 +383,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFE000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00003F80, 0x00000000,
     0x00000000, 0xD8000000, 0x00000003, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[38 << 4];
+    /*unsigned*/ int level3[40 << 4];
   }
 u_categ_S =
 {
@@ -271,8 +271,8 @@
        -1,
         3 +   256 * sizeof (short) / sizeof (int) +   576,
         3 +   256 * sizeof (short) / sizeof (int) +   592,
-       -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   608,
+        3 +   256 * sizeof (short) / sizeof (int) +   624,
        -1,
        -1,
        -1,
@@ -292,7 +292,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x0000C9C0, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x60000200,
+    0x00000000, 0x00000000, 0x40000000, 0x60000200,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00400000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -304,7 +304,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00010000,
     0x00000000, 0x00000000, 0x00000000, 0x07F80000,
     0x00000000, 0x00000000, 0x00000000, 0x80000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00060000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x02000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x80000000, 0x00000000, 0x00000000,
@@ -326,7 +326,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000001, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0xC0000000, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x1FF007FE,
@@ -336,21 +336,21 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xA0000000, 0xE000E003, 0x6000E000,
     0x00000000, 0x00000000, 0x00040010, 0x1C000000,
-    0x00001C00, 0x01FFFFFF, 0x00000000, 0x00000000,
+    0x00001C00, 0x03FFFFFF, 0x00000000, 0x00000000,
     0xC1D0037B, 0x0C0042AF, 0x0000BC1F, 0x00000000,
     0xFFFF0000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFF9FF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000001FF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFF, 0x0000007F, 0x000007FF, 0x00000000,
     0xF0000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x000003FF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFBFFF, 0xFFFFFF0B,
-    0xFFFFF3DE, 0xFFFFFEFF, 0x7FC7AFFF, 0x000000FE,
-    0xFF100000, 0x7FFEFFFF, 0xFFFF179F, 0xFFFF003F,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x000000FF,
+    0xFFF00000, 0xFFFFFFFF, 0xFFFFD79F, 0xFFFF003F,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -398,7 +398,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000200, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFC0000, 0x00000003, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -424,12 +424,20 @@
     0x00200000, 0x00200000, 0x00008000, 0x00008000,
     0x00000200, 0x00000200, 0x00000008, 0x00000000,
     0xFFFFFFFF, 0xFFFF0FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000FFFFF, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFF0000, 0xA0027FFF, 0x80807C44, 0x9A000000,
-    0x00013C00, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFF0001, 0x0003FFFF, 0x000001FF, 0x00000000,
+    0x000FFFFF, 0x7FFE7FFF, 0xFFFEFFFE, 0x00000000,
+    0xFFFF0000, 0xFFFF7FFF, 0xFFFFFFFF, 0xFFFF03FF,
+    0x07FFFFFF, 0x00000000, 0x00000000, 0xFFFFFFC0,
+    0xFFFF0007, 0x07FFFFFF, 0x000301FF, 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, 0xFFFF0000, 0x000000FF,
+    0x00000000, 0x00000000, 0x00000000, 0xF8000000,
+    0x755DFFFE, 0xFFEF2F3F, 0x0000FFE1, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
     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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -173,7 +173,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x08000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x01FFFFFF, 0x00000000, 0x00000000,
+    0x00000000, 0x03FFFFFF, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[6 << 4];
+    /*unsigned*/ int level3[7 << 4];
   }
 u_categ_Sk =
 {
@@ -143,9 +143,9 @@
        -1,
        -1,
        -1,
-       -1,
+        2 +   128 * sizeof (short) / sizeof (int) +    80,
        -1,
-        2 +   128 * sizeof (short) / sizeof (int) +    80
+        2 +   128 * sizeof (short) / sizeof (int) +    96
   },
   {
     0x00000000, 0x00000000, 0x40000000, 0x00000001,
@@ -170,6 +170,10 @@
     0x00000600, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFC0000, 0x00000003, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x40000000, 0x00000001, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000008
   }
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -293,7 +293,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00040010, 0x1C000000,
     0x00001C00, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x0000081F, 0x00000000,
+    0x01000000, 0x00000000, 0x0000081F, 0x00000000,
     0x0C1F0000, 0x00004049, 0x0014C000, 0xFFF00000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -306,7 +306,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00008000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFFF179F, 0xFFFF003F,
+    0x00000000, 0x00000000, 0xFFFFD79F, 0xFFFF003F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[32 << 4];
+    /*unsigned*/ int level3[34 << 4];
   }
 u_categ_So =
 {
@@ -271,8 +271,8 @@
        -1,
         3 +   256 * sizeof (short) / sizeof (int) +   480,
         3 +   256 * sizeof (short) / sizeof (int) +   496,
-       -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   512,
+        3 +   256 * sizeof (short) / sizeof (int) +   528,
        -1,
        -1,
        -1,
@@ -288,7 +288,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x0000C000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x60000200,
+    0x00000000, 0x00000000, 0x40000000, 0x60000200,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00400000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -300,7 +300,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00010000,
     0x00000000, 0x00000000, 0x00000000, 0x05F80000,
     0x00000000, 0x00000000, 0x00000000, 0x80000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00060000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x02000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -318,27 +318,27 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000001, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0xC0000000, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x1FF007FE,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xC1D0037B, 0x0C0042AF, 0x0000B400, 0x00000000,
+    0xC0D0037B, 0x0C0042AF, 0x0000B400, 0x00000000,
     0xF3E00000, 0xFFFFBFB6, 0xFFEB3FFF, 0x000FFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFF0FF, 0xFFFFF9FC, 0xFFFFFFFF, 0xEFFFFFFF,
-    0x07FFFFFF, 0xFFF00000, 0x0FFFFFFF, 0x000001FC,
+    0x07FFFFFF, 0xFFF00000, 0x0FFFFFFF, 0x000FFFFC,
     0xFFFFFFFF, 0x0000007F, 0x000007FF, 0x00000000,
     0xF0000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x000003FF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFF7FFFFF, 0xFFFFFFFD, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF7FFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFBFFF, 0xFFFFFF0B,
-    0xFFFFF3DE, 0xFFFFFEFF, 0x7FC7AFFF, 0x000000FE,
-    0xFF100000, 0x7FFEFFFF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x000000FF,
+    0xFFF00000, 0xFFFFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -400,12 +400,20 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFF0FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000FFFFF, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFF0000, 0xA0027FFF, 0x80807C44, 0x9A000000,
-    0x00013C00, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFF0001, 0x0003FFFF, 0x000001FF, 0x00000000,
+    0x000FFFFF, 0x7FFE7FFF, 0xFFFEFFFE, 0x00000000,
+    0xFFFF0000, 0xFFFF7FFF, 0xFFFFFFFF, 0xFFFF03FF,
+    0x07FFFFFF, 0x00000000, 0x00000000, 0xFFFFFFC0,
+    0xFFFF0007, 0x07FFFFFF, 0x000301FF, 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, 0xFFFF0000, 0x000000FF,
+    0x00000000, 0x00000000, 0x00000000, 0xF8000000,
+    0x755DFFFE, 0xFFEF2F3F, 0x0000FFE1, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
     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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[161 * 40 + 1];
+    unsigned short level3[173 * 40 + 1];
   }
 u_category =
 {
@@ -30,17 +30,17 @@
      5504,  5632,  5760,  5888,  6016,  6144,  6272,  6400,
      6528,  6656,  6784,  6912,  7040,  7168,  7296,  7424,
      7552,  7680,  7808,  7936,  8064,  8064,  8192,  8320,
-     8448,  8576,  8704,  8832,  8960,  9088,  9216,  9344,
-     8704,  8704,  8064,  9472,  8064,  8064,  9600,    -1,
-     9728,  9856,  9984, 10112, 10240, 10368,  8704, 10496,
-    10624, 10752, 10880, 11008, 11136, 11264,  8704,  8704,
+     8448,  8576,  8704,  8832,  8960,  8704,  9088,  9216,
+     8704,  8704,  8064,  9344,  8064,  8064,  9472,    -1,
+     9600,  9728,  9856,  9984, 10112, 10240,  8704, 10368,
+    10496, 10624, 10752, 10880, 11008, 11136,  8704,  8704,
      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,  4224,  4224,  4224,  4224,
      4224,  4224,  4224,  4224,  4224,  4224,  4224,  4224,
      4224,  4224,  4224,  4224,  4224,  4224,  4224,  4224,
-     4224,  4224,  4224, 11392,  4224,  4224,  4224,  4224,
+     4224,  4224,  4224, 11264,  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,
@@ -60,10 +60,10 @@
      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,  4224,  4224,  4224, 11520,
-    11648,  4224,  4224,  4224,  4224,  4224,  4224,  4224,
-     4224, 11776,  4224,  4224, 11904, 12032, 12160, 12288,
-    12416, 12544, 12672, 12800, 12928, 13056,    -1, 13184,
+     4224,  4224,  4224,  4224,  4224,  4224,  4224, 11392,
+    11520,  4224,  4224,  4224,  4224,  4224,  4224,  4224,
+     4224, 11648,  4224,  4224, 11776, 11904, 12032, 12160,
+    12288, 12416, 12544, 12672, 12800, 12928, 13056, 13184,
      4224,  4224,  4224,  4224,  4224,  4224,  4224,  4224,
      4224,  4224,  4224,  4224,  4224,  4224,  4224,  4224,
      4224,  4224,  4224,  4224,  4224,  4224,  4224,  4224,
@@ -89,16 +89,20 @@
     15872, 16000,    -1,    -1,    -1,    -1,    -1,    -1,
     16128,    -1, 16256,    -1, 16384,    -1, 16512,    -1,
     16640,    -1,    -1,    -1, 16768,    -1,    -1,    -1,
-       -1, 16896,    -1,    -1,    -1,    -1,    -1,    -1,
+    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,
-     4224,  4224,  4224,  4224,  4224,  4224, 17024,    -1,
-    17152,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     4224,  4224,  4224,  4224,  4224,  4224, 17152,    -1,
+    17280,    -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,  4224,  4224,  4224,  4224,  4224,  4224,
-    17280,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    17408,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -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 +111,13 @@
        -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,  4224,  4224, 17536,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -118,14 +129,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,
+    17664,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -133,20 +137,16 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     8704, 17408, 17536, 17664, 17792,    -1, 17920,    -1,
-    18048, 18176, 18304, 18432, 18560, 18688, 18816, 18944,
+     8704, 17792, 17920, 18048, 18176,    -1, 18304,    -1,
+    18432, 18560, 18688, 18816, 18944, 19072, 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,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    19072, 19200, 19328, 19456, 19584,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    19456, 19584, 19712, 19840, 19968,    -1, 20096, 20224,
+    20352, 20480, 20608, 20736, 20864, 20992, 21120,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
      4224,  4224,  4224,  4224,  4224,  4224,  4224,  4224,
@@ -190,11 +190,12 @@
      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,  4224, 19712,  4224,  4224,
+     4224,  4224,  4224,  4224,  4224, 21248,  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,  4224,  4224,  4224,  4224, 19840,    -1,
+     4224,  4224,  4224,  4224,  4224,  4224, 21376,  4224,
+    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,
@@ -210,10 +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,
+     4224,  4224,  4224,  4224, 21504,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     4224,  4224,  4224,  4224, 19968,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    20096,    -1, 20224, 20352,    -1,    -1,    -1,    -1,
+    21632,    -1, 21760, 21888,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -340,7 +340,7 @@
     13568, 13568, 13568, 13568, 13568, 13568, 13568, 13568,
     13568, 13568, 13568, 13568, 13568, 13568, 13568, 13568,
     13568, 13568, 13568, 13568, 13568, 13568, 13568, 13568,
-    13568, 13568, 13568, 13568, 13568, 13568, 13568, 20480
+    13568, 13568, 13568, 13568, 13568, 13568, 13568, 22016
   },
   {
     0xe739, 0x739c, 0x39ce, 0x9ce7, 0xce73, 0xe739, 0x739c, 0x39ce,
@@ -394,7 +394,7 @@
     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, 0x4200, 0xbdef, 0xdef7, 0xef7b, 0x001d,
+    0x0080, 0x0802, 0x8020, 0x0200, 0xbd08, 0xdef7, 0xef7b, 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,
@@ -404,14 +404,14 @@
     0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842,
     0x8421, 0xde90, 0xef7b, 0x9084, 0x7b18, 0xbdef, 0xdef7, 0xef7b,
     0x6b5a, 0xbbdd, 0x3294, 0x19c6, 0xad63, 0x94a5, 0x4a52, 0xa529,
-    0xd894, 0x8c7b, 0x109d, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
+    0xd894, 0x8c7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
     0x0842, 0x8421, 0x4210, 0x2108, 0x1083, 0x0842, 0x8421, 0x5290,
-    0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0xe94a, 0x2108, 0x1084,
+    0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x2108, 0x1084,
     0x0842, 0x18c5, 0x2123, 0x1085, 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, 0x4912, 0xa529, 0x5294, 0x29f4, 0x94a5, 0xc652,
+    0x2108, 0x1084, 0x4912, 0xa529, 0x5294, 0x2d74, 0x94a5, 0xc652,
     0xa528, 0x5296, 0x210a, 0x2108, 0x1084, 0x0842, 0x4211, 0x256a,
     0xc631, 0x6318, 0x318c, 0x18c6, 0xd763, 0x10a4, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x94a5,
@@ -425,14 +425,14 @@
     0x8421, 0x5290, 0x294a, 0x94a5, 0x4632, 0x318d, 0xde8e, 0xef7b,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x4842, 0xa529,
     0x528c, 0x294a, 0x94a5, 0x4a32, 0xa329, 0x5294, 0xef4a, 0xc631,
-    0x6318, 0x318c, 0x18c6, 0xec63, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
-    0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
+    0x6318, 0x318c, 0x18c6, 0xec63, 0x1084, 0x0842, 0x8421, 0x4210,
+    0x2108, 0x1084, 0x0842, 0xa421, 0xd294, 0xec7b, 0xf7bd, 0x7bde,
     0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
     0x14a5, 0x0843, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
-    0x0842, 0x8421, 0x5ef4, 0x3188, 0x94a6, 0x4a52, 0xc529, 0x6318,
-    0xe98a, 0x94a4, 0x4a52, 0x84ef, 0x4210, 0x2108, 0x9484, 0x2312,
-    0x0842, 0x8421, 0x4210, 0x9071, 0x7bde, 0x9def, 0x4210, 0x2108,
+    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,
     0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0x4213, 0x2108, 0x93a4,
     0x3bde, 0x8421, 0x5ef4, 0x3188, 0x94a6, 0x7a52, 0xa637, 0x6377,
@@ -452,7 +452,7 @@
     0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0x4213, 0x2108, 0x13a4,
     0x09d2, 0x8421, 0x5ef4, 0x2988, 0x94a6, 0x7a52, 0xa637, 0x6377,
     0xef4a, 0xf7bd, 0x7bde, 0xbd31, 0x4ef7, 0x2748, 0x9484, 0x3bd2,
-    0x0842, 0x8421, 0x4210, 0xf495, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0x0842, 0x8421, 0x4210, 0x2895, 0x94a5, 0xbd52, 0xdef7, 0xef7b,
     0x17bd, 0x09d2, 0x8421, 0xde90, 0x213b, 0x13a4, 0x4842, 0x9def,
     0x4e90, 0x213a, 0x77bd, 0x7a42, 0x84ef, 0xde90, 0x213b, 0x1084,
     0x0842, 0x8421, 0xdef4, 0x31bb, 0x98c5, 0xbbde, 0xa631, 0x631b,
@@ -467,11 +467,11 @@
     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, 0xd6bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0x0842, 0x8421, 0x4210, 0x909d, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
     0x1bbd, 0x09d3, 0x8421, 0x4210, 0x213a, 0x13a4, 0x0842, 0x8421,
-    0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0x4213, 0x2108, 0x1084,
-    0x0842, 0x8421, 0xdef4, 0x3189, 0x94a6, 0xba52, 0xa631, 0x631b,
-    0xef4a, 0xf7bd, 0x7bde, 0xbd37, 0xdef7, 0xef7b, 0x9484, 0x3bd2,
+    0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
+    0x0842, 0x8421, 0xde90, 0x3189, 0x94a6, 0xba52, 0xa631, 0x631b,
+    0xe90a, 0xf7bd, 0x7bde, 0xbd37, 0xdef7, 0xef7b, 0x9484, 0x3bd2,
     0x0842, 0x8421, 0x4210, 0x294a, 0x54a5, 0xbdef, 0x4212, 0x2108,
     0x1bbd, 0x09d3, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0xbde9,
     0x4213, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x7484,
@@ -493,10 +493,10 @@
     0x4b55, 0xb52d, 0xd734, 0x319c, 0x1084, 0x0842, 0x9d21, 0x4210,
     0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842,
     0x8421, 0x4210, 0xef7a, 0x94bd, 0x4a52, 0xa529, 0x5294, 0x314a,
-    0x94a5, 0x6252, 0x8429, 0xd210, 0xef7b, 0x94a5, 0x4a52, 0xbd29,
+    0x94a5, 0x6252, 0x8429, 0x4210, 0x294a, 0x94a5, 0x4a52, 0xbd29,
     0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5,
     0x4a52, 0xa529, 0x5294, 0xad7a, 0xd6b5, 0x6b5a, 0xb5a9, 0x5ad6,
-    0xad7b, 0xc631, 0x6b18, 0xb5ad, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
+    0xad7b, 0xc631, 0x6b18, 0x35ad, 0xdec6, 0xef7b, 0xf7bd, 0x7bde,
     0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x6310, 0x294a, 0x94c5,
@@ -526,7 +526,7 @@
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x13a4, 0x4842, 0x84ef,
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
     0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210,
-    0x2108, 0x1084, 0x0842, 0x8421, 0xde90, 0x2f7b, 0xc635, 0x6318,
+    0x2108, 0x1084, 0x0842, 0x8421, 0xde90, 0x294b, 0xc635, 0x6318,
     0x518c, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0xef7a,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0xd6b5, 0x6b5a, 0xb5ad,
     0xdef6, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
@@ -576,7 +576,7 @@
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0xd210, 0xef7b, 0x18c6,
     0x8c63, 0xc631, 0x6318, 0x318c, 0x1086, 0x0842, 0xc621, 0xdef4,
-    0xef7b, 0x2108, 0x1084, 0x0842, 0xdea1, 0x8c7b, 0xd6b5, 0x6b5a,
+    0xef7b, 0x2108, 0x1084, 0x0842, 0xdea9, 0xad7b, 0xd6b5, 0x6b5a,
     0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0xc529,
     0xd318, 0x8c7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
@@ -595,9 +595,9 @@
     0xb5ad, 0x52d6, 0x294a, 0x94a5, 0x6b52, 0xb5ad, 0x5ad6, 0xef7b,
     0x18a5, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x94c4, 0x8a52, 0xa531, 0xde98, 0x213b, 0x2108,
-    0x1084, 0x0842, 0xdef5, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
-    0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
-    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0x1084, 0x0842, 0xdef5, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210,
+    0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x4842,
+    0xa531, 0x6318, 0x298a, 0x18a5, 0x7bd3, 0xbdef, 0x1ef7, 0x8c63,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x8c62, 0xc631, 0x5318, 0x294a, 0x94a5,
     0x4c62, 0xbd29, 0x18f7, 0x8c63, 0x2108, 0x1084, 0x0842, 0xdef5,
@@ -617,7 +617,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, 0xdef7, 0x294b,
+    0xbde9, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 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,
@@ -643,12 +643,12 @@
     0x6318, 0xf18c, 0x18c1, 0x5c63, 0xc62b, 0x9b28, 0x318b, 0x18c6,
     0x8c63, 0xca31, 0x62b8, 0x318c, 0x18c6, 0xb463, 0x6b5a, 0x7bad,
     0xbdef, 0xad6b, 0xd6b5, 0xf46a, 0x94ae, 0x4a52, 0x2949, 0x1b9b,
-    0x294a, 0x94a5, 0x4a52, 0x2949, 0xeb9b, 0x8c63, 0x7a31, 0xbdef,
-    0xdef7, 0xef7b, 0xce73, 0xe739, 0x739c, 0x39ce, 0x9ce7, 0xce73,
-    0xe739, 0xb39c, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
+    0x294a, 0x94a5, 0x4a52, 0x2949, 0xeb9b, 0x8c63, 0xc631, 0x6318,
+    0x318c, 0xef7a, 0xce73, 0xe739, 0x739c, 0x39ce, 0x9ce7, 0xce73,
+    0xe739, 0x739c, 0xdef6, 0xef7b, 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, 0x15ad,
+    0x82b5, 0x6b5a, 0xb505, 0x0006, 0x0840, 0x8000, 0x4150, 0x12ad,
     0x0000, 0xad40, 0xd6b5, 0x2a0a, 0xa0a8, 0x0002, 0x0d40, 0x0000,
     0x0810, 0x2421, 0x1ad4, 0x0002, 0x4a52, 0x4129, 0x2108, 0x5954,
     0xa86b, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0xa529, 0x5294,
@@ -672,7 +672,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, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x7bda, 0xbdef, 0xdef7, 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,
@@ -698,20 +698,15 @@
     0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6,
     0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a,
     0xb5ad, 0x5ad6, 0x956b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b,
-    0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
+    0xd6bd, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
     0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5,
     0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6,
-    0xaf6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xf6b5, 0x7bda,
-    0xb5ef, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b,
-    0xd6bd, 0x7b5a, 0xb5ad, 0x5ef6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
-    0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xbdad, 0x5ad6, 0xad6b, 0xd6b5,
-    0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0xdad6,
-    0xaf6b, 0xd6b5, 0x7bde, 0xb5ad, 0x5ad6, 0xed6b, 0xd6bd, 0x6b5a,
+    0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a,
     0xcdad, 0xd735, 0x735c, 0x35cd, 0x9cd7, 0x4a52, 0xa529, 0x5294,
-    0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x7b55, 0xb5ef,
-    0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6bd,
-    0x6b5a, 0xb5ad, 0x5ad6, 0xed6b, 0x4a52, 0x9b29, 0x5293, 0x2eca,
-    0xef7b, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0x6529,
+    0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x6b55, 0xb5ad,
+    0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5,
+    0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0x4a52, 0x9b29, 0x5293, 0x2eca,
+    0x94bb, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0x6529,
     0xcd73, 0xd735, 0x735c, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5,
     0xca52, 0x9ae6, 0xae6b, 0xe6b9, 0x6b9a, 0xb9ae, 0x9ae6, 0x4e6b,
     0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52,
@@ -737,7 +732,7 @@
     0x1084, 0x0842, 0x8421, 0x4210, 0xbdef, 0xdef7, 0xef7b, 0x1084,
     0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210,
     0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x4842,
-    0xbdef, 0xdef7, 0x1f7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0xbdef, 0xdef7, 0x1f7b, 0xf7b1, 0x7bde, 0xbdef, 0xdef7, 0x2f7b,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0xbde9,
     0xdef7, 0xef7b, 0x1084, 0x0842, 0x84e9, 0x4210, 0xe908, 0x1084,
     0x0842, 0x84e9, 0x4210, 0xe908, 0x1084, 0x0842, 0x84e9, 0x4210,
@@ -775,7 +770,7 @@
     0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108,
     0x1084, 0x0842, 0x8421, 0x4210, 0xe908, 0x2ab5, 0x54a5, 0xb5ad,
     0x5ad6, 0xad6b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
-    0x0842, 0xbd21, 0xdef7, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6,
+    0x0842, 0x8421, 0xde90, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6,
     0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x7bda,
     0xbdef, 0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108,
     0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
@@ -811,7 +806,7 @@
     0x1084, 0x0842, 0x8421, 0x3210, 0x8c62, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x2108, 0x1084, 0x0842, 0xd211, 0xef7b, 0xf7bd,
     0x7bde, 0xbdef, 0xdef7, 0xef7b, 0x8020, 0x0200, 0x2008, 0x0080,
-    0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x83bd, 0x0200,
+    0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200,
     0x2008, 0x0080, 0x2902, 0x9ce7, 0x7bd8, 0xbdef, 0x5ef7, 0x1c4a,
     0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0xbd08,
     0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
@@ -823,11 +818,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, 0xef7a, 0xf7bd, 0x7bde, 0xbdef,
-    0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd,
+    0x8020, 0x0200, 0x8308, 0x1052, 0xe840, 0xf420, 0x7bde, 0xbdef,
+    0xdef7, 0xef7b, 0x8020, 0x0200, 0x2008, 0xdef4, 0xef7b, 0xf7bd,
     0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
     0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
-    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0x4277, 0x2108,
+    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0x4207, 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,
@@ -858,6 +853,11 @@
     0x0852, 0x8529, 0x4210, 0x2948, 0x90a4, 0x7bde, 0xbdef, 0xdef7,
     0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0x4277, 0x8c46, 0xf7bd, 0x7bde,
     0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 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,
+    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,
@@ -894,8 +894,8 @@
     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, 0x4210, 0x2108, 0xf484,
-    0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
+    0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x5084,
+    0x294a, 0x94a5, 0x4a52, 0xa529, 0xf694, 0x7bde, 0xbdef, 0xdef7,
     0xef7b, 0x77bd, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842,
     0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
@@ -1003,6 +1003,11 @@
     0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
     0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0x294a, 0x94a5,
     0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0xea94,
+    0x18a6, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
+    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,
     0x18a5, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x98c6,
     0x4a52, 0xa631, 0x1894, 0x8c75, 0xf631, 0x7bde, 0xbdef, 0xdef7,
@@ -1023,6 +1028,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, 0xa421, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
+    0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
+    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0xf484, 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,
     0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
     0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5,
     0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6,
@@ -1094,25 +1109,70 @@
     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, 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,
+    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, 0xdef6, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b,
+    0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
+    0xded6, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd,
+    0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
+    0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
+    0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b,
+    0xd6b5, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad,
+    0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5,
+    0x6b5a, 0xb5ad, 0xded6, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 0xdef7,
+    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,
+    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,
+    0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad,
+    0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5,
+    0x6b5a, 0xb5ad, 0x5ad6, 0xed6b, 0xd7b5, 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,
+    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, 0xf7bd, 0x7bde, 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,
+    0xd6bd, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd7b5, 0x7b5a, 0xb5ed,
+    0x5ed7, 0xed6b, 0xd6b5, 0x6b5a, 0xb5ef, 0xdad6, 0xef6b, 0xd6b5,
+    0x6bda, 0xb5ad, 0x5ad6, 0xad6b, 0xf7b5, 0x6bde, 0xb5ad, 0x5ad6,
+    0xad6b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
     0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
-    0x294a, 0x94a5, 0x4a52, 0xdea9, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad,
-    0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xed6b, 0xf6bd,
-    0x7bde, 0xbdef, 0xdef7, 0xaf6b, 0xd7bd, 0x7bde, 0xbded, 0x5ad7,
-    0xed6b, 0xf7bd, 0x7bde, 0xbdaf, 0xdef7, 0xaf7b, 0xf7bd, 0x7bde,
-    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0x5af6, 0xaf7b,
-    0xf7bd, 0x7bde, 0xbdef, 0x5ad7, 0xef6b, 0xf7b5, 0x7bde, 0xbdef,
-    0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd,
-    0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
+    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,
-    0xf7b5, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad,
-    0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xf6b5,
-    0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 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,
+    0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a,
+    0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x7bda, 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,
@@ -1120,9 +1180,9 @@
     0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
     0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421,
     0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084,
-    0x7a42, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
-    0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde,
-    0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b,
+    0x7a42, 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, 0xef48, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd,
     0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7,
--- a/lib/unictype/combining.h
+++ b/lib/unictype/combining.h
@@ -1,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Combining class of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[51 << 7];
+    unsigned char level3[53 << 7];
   }
 u_combclass =
 {
@@ -28,8 +28,8 @@
        -1,  3840,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,  3968,    -1,  4096,    -1,    -1,    -1,    -1,
-     4224,  4352,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,  3968,  4096,  4224,    -1,    -1,    -1,    -1,
+     4352,  4480,    -1,    -1,    -1,    -1,    -1,    -1,
        -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,  4480,  4608,    -1,    -1,
-     4736,  4864,  4992,  5120,    -1,  5248,    -1,  5376,
+       -1,    -1,    -1,    -1,  4608,  4736,    -1,    -1,
+     4864,  4992,  5120,  5248,    -1,  5376,    -1,  5504,
        -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,13 +79,13 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,  5504,    -1,
-       -1,    -1,    -1,    -1,  5632,    -1,    -1,    -1,
-       -1,    -1,    -1,  5760,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,  5632,    -1,
+       -1,    -1,    -1,    -1,  5760,    -1,    -1,    -1,
+       -1,    -1,    -1,  5888,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,  5888,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,  6016,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,  6016,    -1,    -1,    -1,    -1,    -1,    -1,
+     6144,  6272,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -133,7 +133,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,  6144,  6272,  6400,    -1,    -1,    -1,
+       -1,    -1,  6400,  6528,  6656,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -206,7 +206,7 @@
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,  27,  28,  29,  30,  31,
      32,  33,  34, 230, 230, 220, 220, 230,
-    230, 230, 230, 230, 220, 230, 230,   0,
+    230, 230, 230, 230, 220, 230, 230, 220,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
      35,   0,   0,   0,   0,   0,   0,   0,
@@ -270,7 +270,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, 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,
@@ -462,7 +462,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, 230,
+      0,   0,   0,   0,   0, 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,
@@ -575,9 +575,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,   7,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   9,   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,
@@ -626,7 +626,7 @@
     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, 220, 230, 220,
+      0,   0,   0,   0, 233, 220, 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,
@@ -671,6 +671,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,   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,
     230, 230, 230, 230, 230, 230, 230, 230,
     230, 230, 230, 230, 230, 230, 230, 230,
     230, 230, 230, 230, 230, 230, 230, 230,
@@ -906,6 +922,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,   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,   9,   7,   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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[49 << 4];
+    /*unsigned*/ int level3[51 << 4];
   }
 u_is_alnum =
 {
@@ -202,7 +202,8 @@
        -1,
        -1,
        -1,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   336,
+        4 +   384 * sizeof (short) / sizeof (int) +   688,
        -1,
        -1,
        -1,
@@ -237,6 +238,7 @@
        -1,
        -1,
        -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   704,
        -1,
        -1,
        -1,
@@ -254,10 +256,8 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   688,
-        4 +   384 * sizeof (short) / sizeof (int) +   704,
+        4 +   384 * sizeof (short) / sizeof (int) +   720,
+        4 +   384 * sizeof (short) / sizeof (int) +   736,
        -1,
        -1,
        -1,
@@ -270,7 +270,7 @@
        -1,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   720,
+        4 +   384 * sizeof (short) / sizeof (int) +   752,
        -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) +   736,
+        4 +   384 * sizeof (short) / sizeof (int) +   768,
         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) +   752,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   784,
+        4 +   384 * sizeof (short) / sizeof (int) +   800,
        -1,
        -1,
        -1,
@@ -403,7 +403,7 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
-        4 +   384 * sizeof (short) / sizeof (int) +   768,
+        4 +   384 * sizeof (short) / sizeof (int) +   800,
        -1,
        -1
   },
@@ -418,28 +418,28 @@
     0xFFFFD740, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFBFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE003F, 0x027FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFE00FF, 0x027FFFFF, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0xFFFF0000, 0x000707FF,
-    0x00000000, 0xFFFFFFFE, 0x000007FF, 0xFFFEC3FF,
+    0x00000000, 0xFFFFFFFF, 0x000007FF, 0xFFFEC3FF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x002FFFFF, 0x9FFFC060,
     0xFFFD0000, 0x0000FFFF, 0xFFFFE000, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0002003F, 0xFFFFFFFF, 0x043007FF,
-    0x043FFFFF, 0x00000110, 0x00000000, 0x00000000,
+    0x043FFFFF, 0x00000110, 0x01FFFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFE06FFC3,
+    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFEFEFFC3,
     0xFFF99FE0, 0x23C5FDFF, 0xB0004000, 0x0003FFC3,
     0xFFF987E0, 0x036DFDFF, 0x5E000000, 0x001CFFC0,
     0xFFFBBFE0, 0x23EDFDFF, 0x00010000, 0x0000FFC3,
     0xFFF99FE0, 0x23EDFDFF, 0xB0000000, 0x0002FFC3,
     0xD63DC7E8, 0x03FFC718, 0x00010000, 0x0000FFC0,
     0xFFFDDFE0, 0x23EFFDFF, 0x03000000, 0x0000FFC3,
-    0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x0000FFC3,
-    0xFFFDDFE0, 0x23FFFDFF, 0x00000000, 0xFC00FFC3,
+    0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x0006FFC3,
+    0xFFFDDFE0, 0x27FFFFFF, 0x00004000, 0xFC00FFC3,
     0xFC7FFFE0, 0x2FFBFFFF, 0x0000007F, 0x00000000,
     0xFFFFFFFE, 0x07FF7FFF, 0x03FF7FBF, 0x00000000,
     0xFEF02596, 0x200DECAE, 0x33FF005F, 0x00000000,
     0x00000001, 0x000003FF, 0xFFFFFEFF, 0x00001FFF,
-    0x00000F00, 0x00000000, 0x00000000, 0x00000000,
+    0x00001F00, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0x800007FF, 0x3C3F03FF, 0xFFE1C062,
     0x03FF4003, 0xFFFFFFFF, 0xFFFF003F, 0x17FFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -459,11 +459,11 @@
     0x03FF0000, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFF05FF, 0xFFFFFFFF, 0x003FFFFF,
     0x1FFFFFFF, 0x00000000, 0xFFFFFFC0, 0x001F3FFF,
-    0xFFFFFFFF, 0x00000FFF, 0x07FF00FE, 0x00000000,
+    0xFFFFFFFF, 0x00000FFF, 0x03FF00FE, 0x00000000,
     0x007FFFFF, 0xFFFFFFFF, 0x001FFFFF, 0x00000000,
     0x03FF03FF, 0x00000080, 0x00000000, 0x00000000,
     0xFFFFFFE0, 0x000FFFFF, 0x03FF0FE0, 0x00000000,
-    0xFFFFFFF8, 0x03FFC001, 0x00000000, 0x00000000,
+    0xFFFFFFF8, 0x03FFC001, 0xFFFFFFFF, 0x0000003F,
     0xFFFFFFFF, 0x0000000F, 0xFFFFE3FF, 0x3FFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x0003DE00,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -473,7 +473,7 @@
     0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF,
     0xFFFFFFFF, 0x5FDFFFFF, 0x0FCF1FDC, 0x1FDC1FFF,
     0x00000000, 0x00000000, 0x00000000, 0x80020000,
-    0x001F0000, 0x00000000, 0x00000000, 0x00000000,
+    0x1FFF0000, 0x00000000, 0x00000000, 0x00000000,
     0x3E2FFC84, 0xF3FFBF50, 0x000043E0, 0xFFFFFFFF,
     0x000001FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -491,7 +491,7 @@
     0x000000E0, 0x1F3E03FE, 0xFFFFFFFE, 0xFFFFFFFF,
     0xE07FFFFF, 0xFFFFFFFE, 0xFFFFFFFF, 0xF7FFFFFF,
     0xFFFFFFE0, 0xFFFE3FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00007FFF, 0x00FFFFFF, 0x00000000, 0xFFFF0000,
+    0x00007FFF, 0x07FFFFFF, 0x00000000, 0xFFFF0000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -508,17 +508,17 @@
     0x00001FFF, 0x00000000, 0xFFFF0000, 0x3FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFF1FFF, 0x00000FFF, 0xFFFFFFFF, 0x80007FFC,
+    0xFFFF1FFF, 0x00000FFF, 0xFFFFFFFF, 0x80007FFF,
     0x00FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF,
     0xFF800000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000019FF, 0x00000000, 0x00000000, 0xF8000000,
+    0x000379FF, 0x000003FF, 0x00000000, 0xFC000000,
     0xFFFFF7BB, 0x00000007, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFC, 0x000FFFFF, 0x03FF0000, 0x08FC0000,
     0xFFFFFFFF, 0xFFFF003F, 0x0000007F, 0x1FFFFFFF,
     0xFFFFFFF0, 0x0007FFFF, 0x03FF8000, 0x00000000,
     0xFFFFFFFF, 0x000001FF, 0x03FF0FF7, 0x047FFFFF,
     0xFFFFFFFF, 0x3E62FFFF, 0x38000005, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x03FF0007,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -564,7 +564,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFF8, 0x00FFFFFF, 0x00000000, 0x0000FFC0,
     0xFFFFFFF8, 0x0000FFFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -580,6 +580,14 @@
     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,
+    0x00000003, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF,
     0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF,
     0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF,
@@ -590,16 +598,16 @@
     0xFFFFFDFF, 0xFFFFFDFF, 0xFFFFCFF7, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFF0000, 0xA0021FFF, 0x80800044, 0x9A000000,
-    0x00000400, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFF0000, 0xFFFF1FFF, 0xFFFF03FF, 0xFFFF03FF,
+    0x000007FF, 0x00000000, 0x00000000, 0xFFFFFFC0,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0x001FFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x001FFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[49 << 4];
+    /*unsigned*/ int level3[51 << 4];
   }
 u_is_alpha =
 {
@@ -202,7 +202,8 @@
        -1,
        -1,
        -1,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   336,
+        4 +   384 * sizeof (short) / sizeof (int) +   688,
        -1,
        -1,
        -1,
@@ -237,6 +238,7 @@
        -1,
        -1,
        -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   704,
        -1,
        -1,
        -1,
@@ -254,10 +256,8 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   688,
-        4 +   384 * sizeof (short) / sizeof (int) +   704,
+        4 +   384 * sizeof (short) / sizeof (int) +   720,
+        4 +   384 * sizeof (short) / sizeof (int) +   736,
        -1,
        -1,
        -1,
@@ -270,7 +270,7 @@
        -1,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   720,
+        4 +   384 * sizeof (short) / sizeof (int) +   752,
        -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) +   736,
+        4 +   384 * sizeof (short) / sizeof (int) +   768,
         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) +   752,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   784,
+        4 +   384 * sizeof (short) / sizeof (int) +   800,
        -1,
        -1,
        -1,
@@ -403,7 +403,7 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
-        4 +   384 * sizeof (short) / sizeof (int) +   768,
+        4 +   384 * sizeof (short) / sizeof (int) +   800,
        -1,
        -1
   },
@@ -418,28 +418,28 @@
     0xFFFFD740, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFBFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE003F, 0x027FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFE00FF, 0x027FFFFF, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0xFFFF0000, 0x000707FF,
-    0x00000000, 0xFFFFFFFE, 0x000007FF, 0xFFFEC3FF,
+    0x00000000, 0xFFFFFFFF, 0x000007FF, 0xFFFEC3FF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x002FFFFF, 0x9FFFC060,
     0xFFFD0000, 0x0000FFFF, 0xFFFFE000, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0002003F, 0xFFFFFFFF, 0x043007FF,
-    0x043FFFFF, 0x00000110, 0x00000000, 0x00000000,
+    0x043FFFFF, 0x00000110, 0x01FFFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFE06FFC3,
+    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFEFEFFC3,
     0xFFF99FE0, 0x23C5FDFF, 0xB0004000, 0x0003FFC3,
     0xFFF987E0, 0x036DFDFF, 0x5E000000, 0x001CFFC0,
     0xFFFBBFE0, 0x23EDFDFF, 0x00010000, 0x0000FFC3,
     0xFFF99FE0, 0x23EDFDFF, 0xB0000000, 0x0002FFC3,
     0xD63DC7E8, 0x03FFC718, 0x00010000, 0x0000FFC0,
     0xFFFDDFE0, 0x23EFFDFF, 0x03000000, 0x0000FFC3,
-    0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x0000FFC3,
-    0xFFFDDFE0, 0x23FFFDFF, 0x00000000, 0xFC00FFC3,
+    0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x0006FFC3,
+    0xFFFDDFE0, 0x27FFFFFF, 0x00004000, 0xFC00FFC3,
     0xFC7FFFE0, 0x2FFBFFFF, 0x0000007F, 0x00000000,
     0xFFFFFFFE, 0x07FF7FFF, 0x03FF7FBF, 0x00000000,
     0xFEF02596, 0x200DECAE, 0x33FF005F, 0x00000000,
     0x00000001, 0x000003FF, 0xFFFFFEFF, 0x00001FFF,
-    0x00000F00, 0x00000000, 0x00000000, 0x00000000,
+    0x00001F00, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0x800007FF, 0x3C3F03FF, 0xFFE1C062,
     0x03FF4003, 0xFFFFFFFF, 0xFFFF003F, 0x17FFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -459,11 +459,11 @@
     0x03FF0000, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFF05FF, 0xFFFFFFFF, 0x003FFFFF,
     0x1FFFFFFF, 0x00000000, 0xFFFFFFC0, 0x001F3FFF,
-    0xFFFFFFFF, 0x00000FFF, 0x07FF00FE, 0x00000000,
+    0xFFFFFFFF, 0x00000FFF, 0x03FF00FE, 0x00000000,
     0x007FFFFF, 0xFFFFFFFF, 0x001FFFFF, 0x00000000,
     0x03FF03FF, 0x00000080, 0x00000000, 0x00000000,
     0xFFFFFFE0, 0x000FFFFF, 0x03FF0FE0, 0x00000000,
-    0xFFFFFFF8, 0x03FFC001, 0x00000000, 0x00000000,
+    0xFFFFFFF8, 0x03FFC001, 0xFFFFFFFF, 0x0000003F,
     0xFFFFFFFF, 0x0000000F, 0xFFFFE3FF, 0x3FFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x0003DE00,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -473,7 +473,7 @@
     0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF,
     0xFFFFFFFF, 0x5FDFFFFF, 0x0FCF1FDC, 0x1FDC1FFF,
     0x00000000, 0x00000000, 0x00000000, 0x80020000,
-    0x001F0000, 0x00000000, 0x00000000, 0x00000000,
+    0x1FFF0000, 0x00000000, 0x00000000, 0x00000000,
     0x3E2FFC84, 0xF3FFBF50, 0x000043E0, 0xFFFFFFFF,
     0x000001FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -491,7 +491,7 @@
     0x000000E0, 0x1F3E03FE, 0xFFFFFFFE, 0xFFFFFFFF,
     0xE07FFFFF, 0xFFFFFFFE, 0xFFFFFFFF, 0xF7FFFFFF,
     0xFFFFFFE0, 0xFFFE3FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00007FFF, 0x00FFFFFF, 0x00000000, 0xFFFF0000,
+    0x00007FFF, 0x07FFFFFF, 0x00000000, 0xFFFF0000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -508,17 +508,17 @@
     0x00001FFF, 0x00000000, 0xFFFF0000, 0x3FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFF1FFF, 0x00000FFF, 0xFFFFFFFF, 0x80007FFC,
+    0xFFFF1FFF, 0x00000FFF, 0xFFFFFFFF, 0x80007FFF,
     0x00FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF,
     0xFF800000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000019FF, 0x00000000, 0x00000000, 0xF8000000,
+    0x000379FF, 0x000003FF, 0x00000000, 0xFC000000,
     0xFFFFF7BB, 0x00000007, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFC, 0x000FFFFF, 0x03FF0000, 0x08FC0000,
     0xFFFFFFFF, 0xFFFF003F, 0x0000007F, 0x1FFFFFFF,
     0xFFFFFFF0, 0x0007FFFF, 0x03FF8000, 0x00000000,
     0xFFFFFFFF, 0x000001FF, 0x03FF0FF7, 0x047FFFFF,
     0xFFFFFFFF, 0x3E62FFFF, 0x38000005, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x03FF0007,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -564,7 +564,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFF8, 0x00FFFFFF, 0x00000000, 0x0000FFC0,
     0xFFFFFFF8, 0x0000FFFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -580,6 +580,14 @@
     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,
+    0x00000003, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF,
     0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF,
     0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF,
@@ -590,16 +598,16 @@
     0xFFFFFDFF, 0xFFFFFDFF, 0xFFFFCFF7, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFF0000, 0xA0021FFF, 0x80800044, 0x9A000000,
-    0x00000400, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFF0000, 0xFFFF1FFF, 0xFFFF03FF, 0xFFFF03FF,
+    0x000007FF, 0x00000000, 0x00000000, 0xFFFFFFC0,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0x001FFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x001FFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[57 << 4];
+    /*unsigned*/ int level3[61 << 4];
   }
 u_is_graph =
 {
@@ -216,8 +216,8 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
+       18 +   640 * sizeof (short) / sizeof (int) +   160,
+       18 +   640 * sizeof (short) / sizeof (int) +   736,
        -1,
        -1,
        -1,
@@ -252,7 +252,7 @@
        -1,
        -1,
        -1,
-       -1,
+       18 +   640 * sizeof (short) / sizeof (int) +   752,
        -1,
        -1,
        -1,
@@ -268,10 +268,10 @@
        -1,
        -1,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   736,
-       18 +   640 * sizeof (short) / sizeof (int) +   752,
        18 +   640 * sizeof (short) / sizeof (int) +   768,
        18 +   640 * sizeof (short) / sizeof (int) +   784,
+       18 +   640 * sizeof (short) / sizeof (int) +   800,
+       18 +   640 * sizeof (short) / sizeof (int) +   816,
        -1,
        -1,
        -1,
@@ -284,10 +284,10 @@
        -1,
        -1,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   800,
-       18 +   640 * sizeof (short) / sizeof (int) +   816,
-       -1,
-       -1,
+       18 +   640 * sizeof (short) / sizeof (int) +   832,
+       18 +   640 * sizeof (short) / sizeof (int) +   848,
+       18 +   640 * sizeof (short) / sizeof (int) +   864,
+       18 +   640 * sizeof (short) / sizeof (int) +   880,
        -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) +   832,
+       18 +   640 * sizeof (short) / sizeof (int) +   896,
        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) +   848,
-       -1,
+       18 +   640 * sizeof (short) / sizeof (int) +   912,
+       18 +   640 * sizeof (short) / sizeof (int) +   928,
        -1,
        -1,
        -1,
@@ -417,10 +417,10 @@
        -1,
        -1,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
-       18 +   640 * sizeof (short) / sizeof (int) +   864,
+       18 +   640 * sizeof (short) / sizeof (int) +   928,
        -1,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   880,
+       18 +   640 * sizeof (short) / sizeof (int) +   944,
        -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) +   896
+       18 +   640 * sizeof (short) / sizeof (int) +   960
   },
   {
     0x00000000, 0xFFFFFFFE, 0xFFFFFFFF, 0x7FFFFFFF,
@@ -688,35 +688,35 @@
     0xFFFFD7F0, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE003F, 0xFE7FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFE00FF, 0xFE7FFFFF, 0xFFFFFFFE,
     0xFFFE06FF, 0xFFFFFFFF, 0xFFFF00FF, 0x001F07FF,
-    0xCFFFFFCF, 0xFFFFFFFE, 0x7FFFFFFF, 0xFFFFFFFF,
+    0xCFFFFFCF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFBFFF, 0xFFFFFFFF, 0xFFFFE7FF, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0003FFFF, 0xFFFFFFFF, 0x07FFFFFF,
-    0xFFFFFFFF, 0x7FFF3FFF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x7FFF3FFF, 0x4FFFFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xF3FFFFFF, 0xFF3F7FFF, 0xFE07FFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFEFFFFFF,
     0xFFF99FEE, 0xF3C5FDFF, 0xB080799F, 0x0FFFFFCF,
     0xFFF987EE, 0xD36DFDFF, 0x5E023987, 0x003FFFC0,
     0xFFFBBFEE, 0xF3EDFDFF, 0x00013BBF, 0x0002FFCF,
-    0xFFF99FEE, 0xF3EDFDFF, 0xB0C0399F, 0x0003FFCF,
+    0xFFF99FEE, 0xF3EDFDFF, 0xB0C0399F, 0x00FFFFCF,
     0xD63DC7EC, 0xC3FFC718, 0x00813DC7, 0x07FFFFC0,
     0xFFFDDFEE, 0xE3EFFDFF, 0x03603DDF, 0xFF00FFCF,
     0xFFFDDFEC, 0xF3EFFDFF, 0x40603DDF, 0x0006FFCF,
-    0xFFFDDFEC, 0xE3FFFDFF, 0x00803DDF, 0xFE3FFFCF,
+    0xFFFDDFEC, 0xE7FFFFFF, 0x00807DDF, 0xFE3FFFCF,
     0xFC7FFFEC, 0x2FFBFFFF, 0xFF5F847F, 0x001C0000,
     0xFFFFFFFE, 0x87FFFFFF, 0x0FFFFFFF, 0x00000000,
     0xFEF02596, 0x3BFFECAE, 0x33FF3F5F, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFEFF, 0xFFFE1FFF,
-    0xFEFF0FFF, 0xDFFFFFFF, 0x01FFDFFF, 0x00000000,
+    0xFEFFFFFF, 0xDFFFFFFF, 0x07FFDFFF, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF003F, 0x1FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x3D7F3DFF, 0xFFFFFFFF,
     0xFFFF3DFF, 0x7F3DFFFF, 0xFF7FFF3D, 0xFFFFFFFF,
-    0xFF3DFFFF, 0xFFFFFFFF, 0x87FFFFFF, 0x1FFFFFFF,
+    0xFF3DFFFF, 0xFFFFFFFF, 0xE7FFFFFF, 0x1FFFFFFF,
     0x03FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x001FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -733,38 +733,38 @@
     0xCFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF, 0x9FFFFFFF,
     0x03FF03FF, 0x00003FFF, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF0FFF, 0x1FFFFFFF,
-    0xFFFFFFFF, 0x03FFC7FF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x03FFC7FF, 0xFFFFFFFF, 0xF00FFFFF,
     0xFFFFFFFF, 0xF8FFFFFF, 0xFFFFE3FF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0xFFFF0000, 0x0007FFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xE000007F,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xF000007F,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF,
     0xFFFFFFFF, 0xFFDFFFFF, 0xEFCFFFDF, 0x7FDCFFFF,
     0xFFFFF880, 0xFFFFFCFF, 0x7FFFFFFF, 0xFFF3FC1F,
-    0x001F7FFF, 0x01FFFFFF, 0xFFFF0000, 0x0001FFFF,
+    0x1FFF7FFF, 0x03FFFFFF, 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, 0x000001FF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFF, 0x0000007F, 0x000007FF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFBFFF, 0xFFFFFF0B,
-    0xFFFFF3DE, 0xFFFFFEFF, 0x7FC7AFFF, 0xFFFFFFFE,
-    0xFF1FFFFF, 0x7FFEFFFF, 0xFFFF17FF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFD7FF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x03FF1FFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFF7FFF, 0x7FFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFE03FFFF,
-    0xFFFFFFFF, 0xFFFF003F, 0xFFFFFFFF, 0x0000803F,
+    0xFFFFFFFF, 0xFFFF003F, 0xFFFFFFFF, 0x8001803F,
     0x007FFFFF, 0x7F7F7F7F, 0x7F7F7F7F, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0003FFFF, 0x00000000, 0x00000000,
     0xFBFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
@@ -773,7 +773,7 @@
     0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFE, 0xFFFFFFFF,
     0xFE7FFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFE0, 0xFFFE3FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFF7FFF, 0x00FFFFFF, 0xFFFFFFFF, 0xFFFF000F,
+    0xFFFF7FFF, 0x07FFFFFF, 0xFFFFFFFF, 0xFFFF000F,
     0x7FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -790,17 +790,17 @@
     0xFFFF1FFF, 0xFFFFFFFF, 0xFFFF007F, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0x00000FFF, 0xFFFFFFFF, 0xF00FFFFC,
+    0xFFFFFFFF, 0x00000FFF, 0xFFFFFFFF, 0xF00FFFFF,
     0x00FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00001FFF, 0x00000000, 0x00000000, 0xF8000000,
+    0x00037FFF, 0x000003FF, 0x00000000, 0xFC000000,
     0xFFFFFFFF, 0x03FF0FFF, 0xFFFFFFFF, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x03FFC01F, 0x0FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x800FFFFF, 0x1FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xC3FFBFFF, 0x00000000,
     0xFFFFFFFF, 0x007FFFFF, 0xF3FF3FFF, 0x0FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xF8000007, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x03FF3FFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -809,7 +809,7 @@
     0xFFFFFFFF, 0xFFFF3FFF, 0xFFFFFFFF, 0xFFFF3FFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, 0x00000000,
     0xE0F8007F, 0x5F7FFFFF, 0xFFFFFFDB, 0xFFFFFFFF,
-    0xFFFFFFFF, 0x0003FFFF, 0xFFF80000, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFF80003, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF0000, 0xFFFFFFFF,
@@ -846,7 +846,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFC3FFF, 0x0000FFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x00000003, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -862,6 +862,14 @@
     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,
+    0x00000003, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF,
     0xFFFFFFFF, 0xFFFFFE7F, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -879,12 +887,20 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFCFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFF0FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000FFFFF, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFF07FF, 0xA0027FFF, 0x80807C44, 0x9A000000,
-    0x00013C00, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFF0001, 0x0003FFFF, 0x000001FF, 0x00000000,
+    0x000FFFFF, 0x7FFE7FFF, 0xFFFEFFFE, 0x00000000,
+    0xFFFF07FF, 0xFFFF7FFF, 0xFFFFFFFF, 0xFFFF03FF,
+    0x07FFFFFF, 0x00000000, 0x00000000, 0xFFFFFFC0,
+    0xFFFF0007, 0x07FFFFFF, 0x000301FF, 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, 0xFFFF0000, 0x000000FF,
+    0x00000000, 0x00000000, 0x00000000, 0xF8000000,
+    0x755DFFFE, 0xFFEF2F3F, 0x0000FFE1, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000,
@@ -892,8 +908,8 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0x001FFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x001FFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -283,13 +283,13 @@
     0x00000000, 0x00200000, 0x80000000, 0xFF7FFFFF,
     0xAAAAAAAA, 0x54AAAAAA, 0xAAAAA955, 0xD4AAAAAA,
     0x46241129, 0xA251212A, 0xB5555B60, 0xAA2CAAAA,
-    0xAAAAAAAA, 0x900AAAA8, 0x0ADFAA85, 0x20268B09,
+    0xAAAAAAAA, 0x900AAAA8, 0x0ADFAA85, 0x20268B29,
     0x00041F09, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000020, 0x388A0000,
     0x00000000, 0xFFFEF000, 0xAAE37FFF, 0x0927AAAA,
     0x00000000, 0xFFFF0000, 0xFFFFFFFF, 0xAAAAAAAA,
     0xAAAAA802, 0xAAAAAAAA, 0xAAAAD554, 0xAAAAAAAA,
-    0xAAAAAAAA, 0x0000002A, 0x00000000, 0xFFFFFFFE,
+    0xAAAAAAAA, 0x000000AA, 0x00000000, 0xFFFFFFFE,
     0x0000007F, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -311,10 +311,10 @@
     0xAAAAAAAA, 0xAAAAAAAA, 0xAAAAAAAA, 0x0000500A,
     0xFFFFFFFF, 0x0000003F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xAAAAAAAA, 0x00002AA8,
+    0x00000000, 0x00000000, 0xAAAAAAAA, 0x00002AAA,
     0x00AAAAAA, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xAAA8AAA8, 0xAAAAAAAA, 0x9400AAAA,
-    0x000010AA, 0x00000000, 0x00000000, 0x00000000,
+    0x000210AA, 0x000002AA, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x07FFFFFE, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[57 << 4];
+    /*unsigned*/ int level3[61 << 4];
   }
 u_is_print =
 {
@@ -216,8 +216,8 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
+       18 +   640 * sizeof (short) / sizeof (int) +   160,
+       18 +   640 * sizeof (short) / sizeof (int) +   736,
        -1,
        -1,
        -1,
@@ -252,7 +252,7 @@
        -1,
        -1,
        -1,
-       -1,
+       18 +   640 * sizeof (short) / sizeof (int) +   752,
        -1,
        -1,
        -1,
@@ -268,10 +268,10 @@
        -1,
        -1,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   736,
-       18 +   640 * sizeof (short) / sizeof (int) +   752,
        18 +   640 * sizeof (short) / sizeof (int) +   768,
        18 +   640 * sizeof (short) / sizeof (int) +   784,
+       18 +   640 * sizeof (short) / sizeof (int) +   800,
+       18 +   640 * sizeof (short) / sizeof (int) +   816,
        -1,
        -1,
        -1,
@@ -284,10 +284,10 @@
        -1,
        -1,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   800,
-       18 +   640 * sizeof (short) / sizeof (int) +   816,
-       -1,
-       -1,
+       18 +   640 * sizeof (short) / sizeof (int) +   832,
+       18 +   640 * sizeof (short) / sizeof (int) +   848,
+       18 +   640 * sizeof (short) / sizeof (int) +   864,
+       18 +   640 * sizeof (short) / sizeof (int) +   880,
        -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) +   832,
+       18 +   640 * sizeof (short) / sizeof (int) +   896,
        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) +   848,
-       -1,
+       18 +   640 * sizeof (short) / sizeof (int) +   912,
+       18 +   640 * sizeof (short) / sizeof (int) +   928,
        -1,
        -1,
        -1,
@@ -417,10 +417,10 @@
        -1,
        -1,
        18 +   640 * sizeof (short) / sizeof (int) +   160,
-       18 +   640 * sizeof (short) / sizeof (int) +   864,
+       18 +   640 * sizeof (short) / sizeof (int) +   928,
        -1,
        -1,
-       18 +   640 * sizeof (short) / sizeof (int) +   880,
+       18 +   640 * sizeof (short) / sizeof (int) +   944,
        -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) +   896
+       18 +   640 * sizeof (short) / sizeof (int) +   960
   },
   {
     0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF,
@@ -688,35 +688,35 @@
     0xFFFFD7F0, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE003F, 0xFE7FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFE00FF, 0xFE7FFFFF, 0xFFFFFFFE,
     0xFFFE06FF, 0xFFFFFFFF, 0xFFFF00FF, 0x001F07FF,
-    0xCFFFFFCF, 0xFFFFFFFE, 0x7FFFFFFF, 0xFFFFFFFF,
+    0xCFFFFFCF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFBFFF, 0xFFFFFFFF, 0xFFFFE7FF, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0003FFFF, 0xFFFFFFFF, 0x07FFFFFF,
-    0xFFFFFFFF, 0x7FFF3FFF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x7FFF3FFF, 0x4FFFFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xF3FFFFFF, 0xFF3F7FFF, 0xFE07FFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFEFFFFFF,
     0xFFF99FEE, 0xF3C5FDFF, 0xB080799F, 0x0FFFFFCF,
     0xFFF987EE, 0xD36DFDFF, 0x5E023987, 0x003FFFC0,
     0xFFFBBFEE, 0xF3EDFDFF, 0x00013BBF, 0x0002FFCF,
-    0xFFF99FEE, 0xF3EDFDFF, 0xB0C0399F, 0x0003FFCF,
+    0xFFF99FEE, 0xF3EDFDFF, 0xB0C0399F, 0x00FFFFCF,
     0xD63DC7EC, 0xC3FFC718, 0x00813DC7, 0x07FFFFC0,
     0xFFFDDFEE, 0xE3EFFDFF, 0x03603DDF, 0xFF00FFCF,
     0xFFFDDFEC, 0xF3EFFDFF, 0x40603DDF, 0x0006FFCF,
-    0xFFFDDFEC, 0xE3FFFDFF, 0x00803DDF, 0xFE3FFFCF,
+    0xFFFDDFEC, 0xE7FFFFFF, 0x00807DDF, 0xFE3FFFCF,
     0xFC7FFFEC, 0x2FFBFFFF, 0xFF5F847F, 0x001C0000,
     0xFFFFFFFE, 0x87FFFFFF, 0x0FFFFFFF, 0x00000000,
     0xFEF02596, 0x3BFFECAE, 0x33FF3F5F, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFEFF, 0xFFFE1FFF,
-    0xFEFF0FFF, 0xDFFFFFFF, 0x01FFDFFF, 0x00000000,
+    0xFEFFFFFF, 0xDFFFFFFF, 0x07FFDFFF, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF003F, 0x1FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x3D7F3DFF, 0xFFFFFFFF,
     0xFFFF3DFF, 0x7F3DFFFF, 0xFF7FFF3D, 0xFFFFFFFF,
-    0xFF3DFFFF, 0xFFFFFFFF, 0x87FFFFFF, 0x1FFFFFFF,
+    0xFF3DFFFF, 0xFFFFFFFF, 0xE7FFFFFF, 0x1FFFFFFF,
     0x03FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x001FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -733,38 +733,38 @@
     0xCFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF, 0x9FFFFFFF,
     0x03FF03FF, 0x00003FFF, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF0FFF, 0x1FFFFFFF,
-    0xFFFFFFFF, 0x03FFC7FF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x03FFC7FF, 0xFFFFFFFF, 0xF00FFFFF,
     0xFFFFFFFF, 0xF8FFFFFF, 0xFFFFE3FF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0xFFFF0000, 0x0007FFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xE000007F,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xF000007F,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF,
     0xFFFFFFFF, 0xFFDFFFFF, 0xEFCFFFDF, 0x7FDCFFFF,
     0xFFFFFFFF, 0xFFFFFCFF, 0xFFFFFFFF, 0xFFF3FC1F,
-    0x001F7FFF, 0x01FFFFFF, 0xFFFF0000, 0x0001FFFF,
+    0x1FFF7FFF, 0x03FFFFFF, 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, 0x000001FF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFF, 0x0000007F, 0x000007FF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFBFFF, 0xFFFFFF0B,
-    0xFFFFF3DE, 0xFFFFFEFF, 0x7FC7AFFF, 0xFFFFFFFE,
-    0xFF1FFFFF, 0x7FFEFFFF, 0xFFFF17FF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFD7FF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x03FF1FFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFF7FFF, 0x7FFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFE03FFFF,
-    0xFFFFFFFF, 0xFFFF003F, 0xFFFFFFFF, 0x0000803F,
+    0xFFFFFFFF, 0xFFFF003F, 0xFFFFFFFF, 0x8001803F,
     0x007FFFFF, 0x7F7F7F7F, 0x7F7F7F7F, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0003FFFF, 0x00000000, 0x00000000,
     0xFBFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
@@ -773,7 +773,7 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFE, 0xFFFFFFFF,
     0xFE7FFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFE0, 0xFFFE3FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFF7FFF, 0x00FFFFFF, 0xFFFFFFFF, 0xFFFF000F,
+    0xFFFF7FFF, 0x07FFFFFF, 0xFFFFFFFF, 0xFFFF000F,
     0x7FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -790,17 +790,17 @@
     0xFFFF1FFF, 0xFFFFFFFF, 0xFFFF007F, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0x00000FFF, 0xFFFFFFFF, 0xF00FFFFC,
+    0xFFFFFFFF, 0x00000FFF, 0xFFFFFFFF, 0xF00FFFFF,
     0x00FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00001FFF, 0x00000000, 0x00000000, 0xF8000000,
+    0x00037FFF, 0x000003FF, 0x00000000, 0xFC000000,
     0xFFFFFFFF, 0x03FF0FFF, 0xFFFFFFFF, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x03FFC01F, 0x0FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x800FFFFF, 0x1FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xC3FFBFFF, 0x00000000,
     0xFFFFFFFF, 0x007FFFFF, 0xF3FF3FFF, 0x0FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xF8000007, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x03FF3FFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -809,7 +809,7 @@
     0xFFFFFFFF, 0xFFFF3FFF, 0xFFFFFFFF, 0xFFFF3FFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, 0x00000000,
     0xE0F8007F, 0x5F7FFFFF, 0xFFFFFFDB, 0xFFFFFFFF,
-    0xFFFFFFFF, 0x0003FFFF, 0xFFF80000, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFF80003, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF0000, 0xFFFFFFFF,
@@ -846,7 +846,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFC3FFF, 0x0000FFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x00000003, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -862,6 +862,14 @@
     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,
+    0x00000003, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF,
     0xFFFFFFFF, 0xFFFFFE7F, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -879,12 +887,20 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFCFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFF0FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000FFFFF, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFF07FF, 0xA0027FFF, 0x80807C44, 0x9A000000,
-    0x00013C00, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFF0001, 0x0003FFFF, 0x000001FF, 0x00000000,
+    0x000FFFFF, 0x7FFE7FFF, 0xFFFEFFFE, 0x00000000,
+    0xFFFF07FF, 0xFFFF7FFF, 0xFFFFFFFF, 0xFFFF03FF,
+    0x07FFFFFF, 0x00000000, 0x00000000, 0xFFFFFFC0,
+    0xFFFF0007, 0x07FFFFFF, 0x000301FF, 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, 0xFFFF0000, 0x000000FF,
+    0x00000000, 0x00000000, 0x00000000, 0xF8000000,
+    0x755DFFFE, 0xFFEF2F3F, 0x0000FFE1, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000,
@@ -892,8 +908,8 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0x001FFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x001FFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[49 << 4];
+    /*unsigned*/ int level3[51 << 4];
   }
 u_is_punct =
 {
@@ -286,13 +286,13 @@
        -1,
        18 +   512 * sizeof (short) / sizeof (int) +   720,
        18 +   512 * sizeof (short) / sizeof (int) +   736,
+       18 +   512 * sizeof (short) / sizeof (int) +   752,
+       18 +   512 * sizeof (short) / sizeof (int) +   768,
        -1,
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       18 +   512 * sizeof (short) / sizeof (int) +   752,
+       18 +   512 * sizeof (short) / sizeof (int) +   784,
        -1,
        -1,
        -1,
@@ -547,7 +547,7 @@
        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) +   768
+       18 +   512 * sizeof (short) / sizeof (int) +   800
   },
   {
     0x00000000, 0xFC00FFFE, 0xF8000001, 0x78000001,
@@ -562,33 +562,33 @@
     0x000003FC, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFC000000, 0x00000000,
     0xFFFE0600, 0xFFFFFFFF, 0x000000FF, 0x00180000,
-    0xCFFFFFCF, 0x00000000, 0x7FFFF800, 0x00013C00,
+    0xCFFFFFCF, 0x00000000, 0xFFFFF800, 0x00013C00,
     0x00000000, 0x00000000, 0xFFD00000, 0x60003F9F,
     0x0002BFFF, 0xFFFF0000, 0x000007FF, 0x00000000,
     0x00000000, 0x0001FFC0, 0x00000000, 0x03CFF800,
-    0xFBC00000, 0x7FFF3EEF, 0x00000000, 0x00000000,
+    0xFBC00000, 0x7FFF3EEF, 0x4E000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x0000000F, 0xD0000000, 0x003E7FFF, 0x0001003C,
+    0x0000000F, 0xDC000000, 0x00FEFFFF, 0x0001003C,
     0x0000000E, 0xD0000000, 0x0080399F, 0x0FFC000C,
     0x0000000E, 0xD0000000, 0x00023987, 0x00230000,
     0x0000000E, 0xD0000000, 0x00003BBF, 0x0002000C,
-    0x0000000E, 0xD0000000, 0x00C0399F, 0x0001000C,
+    0x0000000E, 0xD0000000, 0x00C0399F, 0x00FD000C,
     0x00000004, 0xC0000000, 0x00803DC7, 0x07FF0000,
     0x0000000E, 0xC0000000, 0x00603DDF, 0xFF00000C,
-    0x0000000C, 0xD0000000, 0x00603DDF, 0x0006000C,
+    0x0000000C, 0xD0000000, 0x00603DDF, 0x0000000C,
     0x0000000C, 0xC0000000, 0x00803DDF, 0x023F000C,
     0x0000000C, 0x00000000, 0xFF5F8400, 0x001C0000,
     0x00000000, 0x80008000, 0x0C008040, 0x00000000,
     0x00000000, 0x1BF20000, 0x00003F00, 0x00000000,
     0xFFFFFFFE, 0xFFFFFC00, 0x00000000, 0xFFFE0000,
-    0xFEFF00FF, 0xDFFFFFFF, 0x01FFDFFF, 0x00000000,
+    0xFEFFE0FF, 0xDFFFFFFF, 0x07FFDFFF, 0x00000000,
     0x00000000, 0x7FFFF800, 0xC3C0FC00, 0x001E3F9D,
     0xFC00BFFC, 0x00000000, 0x00000000, 0x08000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x80000000, 0x1FFFFFFF,
+    0x00000000, 0x00000000, 0xE0000000, 0x1FFFFFFF,
     0x03FF0000, 0x00000000, 0x00000000, 0x00000000,
     0x00000001, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -601,35 +601,35 @@
     0x00003FFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000200, 0x00000000, 0x00000000,
     0x00000000, 0x0FFF0FFF, 0x00000031, 0x00000000,
-    0x00000000, 0xFFFF0000, 0xC0000301, 0xFFFFFFFF,
+    0x00000000, 0xFFFF0000, 0xC4000301, 0xFFFFFFFF,
     0xCF800000, 0x00000000, 0x7FE00000, 0x9FFFFFFF,
     0x00000000, 0x00003F7F, 0x00000000, 0x00000000,
     0x0000001F, 0xFFF00000, 0xFC00001F, 0x1FFFFFFF,
-    0x00000007, 0x000007FE, 0x00000000, 0x00000000,
+    0x00000007, 0x000007FE, 0x00000000, 0xF00FFFC0,
     0x00000000, 0xF8FFFFF0, 0x00000000, 0xC0000000,
     0x00000000, 0x00000000, 0xFFFF0000, 0x000421FF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFFFFFFF, 0xE000007F,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0xF000007F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xA0000000, 0xE000E003, 0x6000E000,
     0xFFFFF880, 0xFFFFFCFF, 0x7FFFFFFF, 0x7FF1FC1F,
-    0x00007FFF, 0x01FFFFFF, 0xFFFF0000, 0x0001FFFF,
+    0x00007FFF, 0x03FFFFFF, 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, 0x000001FF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFF, 0x0000007F, 0x000007FF, 0xFFFFFFFF,
     0x0FFFFFFF, 0x00000000, 0x00000000, 0xFFFFFC00,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFBFFF, 0xFFFFFF0B,
-    0xFFFFF3DE, 0xFFFFFEFF, 0x7FC7AFFF, 0xFFFFFFFE,
-    0xFF1FFFFF, 0x7FFEFFFF, 0xFFFF17FF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFD7FF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -640,7 +640,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xFE0387E0,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x80010000,
     0x00000000, 0x00000000, 0x00000000, 0xFFFFFFFF,
     0xFFFFFFFF, 0x00037FFF, 0x00000000, 0x00000000,
     0xFBFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
@@ -681,7 +681,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x40000000, 0x00000200, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFC0000, 0x00000003, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xC0000000, 0x00000000, 0x00000000,
@@ -710,7 +710,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000007, 0xFF000000, 0xFFFC3FFF, 0x0000003F,
     0x00000007, 0xFFFF0000, 0x00000003, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -731,12 +731,20 @@
     0x00200000, 0x00200000, 0x00008000, 0x00008000,
     0x00000200, 0x00000200, 0x00000008, 0x00000000,
     0xFFFFFFFF, 0xFFFF0FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000FFFFF, 0x00000000, 0x00000000, 0x00000000,
-    0x000007FF, 0x00006000, 0x00007C00, 0x00000000,
-    0x00013800, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFF0001, 0x0003FFFF, 0x000001FF, 0x00000000,
+    0x000FFFFF, 0x7FFE7FFF, 0xFFFEFFFE, 0x00000000,
+    0x000007FF, 0x00006000, 0x0000FC00, 0x00000000,
+    0x07FFF800, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFF0007, 0x07FFFFFF, 0x000301FF, 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, 0xFFFF0000, 0x000000FF,
+    0x00000000, 0x00000000, 0x00000000, 0xF8000000,
+    0x755DFFFE, 0xFFEF2F3F, 0x0000FFE1, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
     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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -289,7 +289,7 @@
     0xFFFED740, 0x00000FFB, 0x55008000, 0xE6905555,
     0xFFFFFFFF, 0x0000FFFF, 0x00000000, 0x55555555,
     0x55555401, 0x55555555, 0x55552AAB, 0x55555555,
-    0x55555555, 0xFFFE0015, 0x007FFFFF, 0x00000000,
+    0x55555555, 0xFFFE0055, 0x007FFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFFFFF, 0x0000003F, 0x00000000,
@@ -311,10 +311,10 @@
     0x55555555, 0x55555555, 0x55555555, 0x00002805,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x55555555, 0x00001554,
+    0x00000000, 0x00000000, 0x55555555, 0x00001555,
     0x00555555, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x55545554, 0x55555555, 0x6A005555,
-    0x00000855, 0x00000000, 0x00000000, 0x00000000,
+    0x00012855, 0x00000155, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x07FFFFFE, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[13 << 6];
   }
 u_decdigit =
 {
@@ -23,8 +23,8 @@
       512,   512,   512,    -1,   640,   640,   768,    -1,
       384,   896,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,   128,
-      896,    -1,  1024,  1152,    -1,  1280,   640,     0,
-     1408,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      896,    -1,  1024,   640,    -1,  1152,   640,     0,
+     1280,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -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,  1536,   640,   640,    -1,    -1,   256,
+       -1,   640,  1408,   640,   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,6 +85,9 @@
        -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,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -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,10 +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,  1664,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1536,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -219,14 +219,6 @@
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-    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, 0x02, 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,
     0x21, 0x43, 0x65, 0x87, 0xa9, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[24 << 6];
+    unsigned char level3[25 << 6];
   }
 u_digit =
 {
@@ -85,6 +85,7 @@
        -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,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -133,15 +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,  2816,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,  2944,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,  2944,    -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
@@ -327,6 +327,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, 0x32, 0x54, 0x76, 0x98, 0x0a, 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, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21,
     0x43, 0x65, 0x87, 0xa9, 0x21, 0x43, 0x65, 0x87,
     0xa9, 0x21, 0x43, 0x65, 0x87, 0xa9, 0x21, 0x43,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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,6 +1,6 @@
 /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
 /* Numeric values of Unicode characters.  */
-/* Generated automatically by gen-uni-tables.c for Unicode 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 static const uc_fraction_t u_numeric_values[113] =
 {
   { 0, 0 },
@@ -127,7 +127,7 @@
   {
     int level1[3];
     short level2[3 << 9];
-    unsigned short level3[52 * 56 + 1];
+    unsigned short level3[54 * 56 + 1];
   }
 u_numeric =
 {
@@ -135,17 +135,17 @@
   {
         0,   128,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,   256,   384,    -1,   512,
-       -1,    -1,   640,   768,   640,   640,   640,   896,
-     1024,   640,  1152,    -1,  1280,  1280,  1408,    -1,
-      512,  1536,    -1,    -1,    -1,    -1,  1664,    -1,
-       -1,    -1,    -1,    -1,    -1,  1792,    -1,  1920,
-     1536,    -1,  2048,  2176,    -1,  2304,  1280,     0,
-     2432,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     2560,  2688,  2816,  2944,    -1,    -1,    -1,    -1,
-     3072,  3200,    -1,    -1,    -1,    -1,  3328,  3456,
+       -1,    -1,   640,   768,   640,   640,   896,  1024,
+     1152,   640,  1280,    -1,  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,
+     2560,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     2688,  2816,  2944,  3072,    -1,    -1,    -1,    -1,
+     3200,  3328,    -1,    -1,    -1,    -1,  3456,  3584,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,  3584,    -1,    -1,    -1,    -1,    -1,    -1,
-     3712,    -1,    -1,  3840,  3968,  4096,    -1,    -1,
+       -1,  3712,    -1,    -1,    -1,    -1,    -1,    -1,
+     3840,    -1,    -1,  3968,  4096,  4224,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -174,8 +174,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,  4224,  4352,    -1,    -1,
-     4480,  1280,  2688,  1280,  1280,    -1,    -1,   384,
+       -1,    -1,    -1,    -1,  4352,  4480,    -1,    -1,
+     4608,  1408,  2816,  1408,  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,
@@ -195,18 +195,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,    -1,  4608,  4736,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,  1536,    -1,
-       -1,    -1,  4864,  4992,    -1,    -1,  5120,  5248,
-       -1,  4224,    -1,    -1,    -1,    -1,    -1,    -1,
-     5376,    -1,  5504,    -1,  5632,    -1,  5760,    -1,
-       -1,    -1,    -1,    -1,  5888,    -1,    -1,    -1,
+       -1,    -1,  4736,  4864,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,  1664,    -1,
+       -1,    -1,  4992,  5120,    -1,    -1,  5248,  5376,
+       -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,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     6016,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     6272,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -249,15 +249,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,  6144,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,  6272,
+       -1,    -1,    -1,    -1,    -1,    -1,  6400,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,  6528,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -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,  6656,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -323,7 +323,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,  6528,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,  6784,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1
   },
   {
@@ -382,6 +382,13 @@
     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, 0x1ab8, 0xa77e, 0x00e1, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 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, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -656,6 +663,13 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0182, 0x60a1, 0x2038, 0x8a12, 0xe545, 0x9a93,
     0x6ad1, 0x1bb6, 0xa72e, 0xf1db, 0xbe7a, 0xb01f, 0xf60a, 0x017e,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
+    0x0000, 0x0000, 0x0000, 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,
     0x4203, 0x70c1, 0x2440, 0x8414, 0xe182, 0x4880, 0x0a28, 0x0386,
     0xa122, 0x0c10, 0x0508, 0x01c3, 0x5091, 0x0608, 0x8284, 0x4061,
     0x1420, 0x070c, 0x4244, 0x1821, 0x0810, 0x0305, 0x2000, 0x1018,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[50 << 4];
   }
 u_property_alphabetic =
 {
@@ -202,6 +202,8 @@
        -1,
        -1,
        -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   336,
+        4 +   384 * sizeof (short) / sizeof (int) +   688,
        -1,
        -1,
        -1,
@@ -236,6 +238,7 @@
        -1,
        -1,
        -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   704,
        -1,
        -1,
        -1,
@@ -253,11 +256,8 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   688,
-        4 +   384 * sizeof (short) / sizeof (int) +   704,
+        4 +   384 * sizeof (short) / sizeof (int) +   720,
+        4 +   384 * sizeof (short) / sizeof (int) +   736,
        -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) +   720,
+        4 +   384 * sizeof (short) / sizeof (int) +   752,
         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) +   736,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   768,
+        4 +   384 * sizeof (short) / sizeof (int) +   784,
        -1,
        -1,
        -1,
@@ -403,7 +403,7 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   336,
-        4 +   384 * sizeof (short) / sizeof (int) +   752,
+        4 +   384 * sizeof (short) / sizeof (int) +   784,
        -1,
        -1
   },
@@ -418,28 +418,28 @@
     0xFFFFD740, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFBFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE003F, 0x027FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFE00FF, 0x027FFFFF, 0xFFFFFFFE,
     0x000000FF, 0xBFFF0000, 0xFFFF00B6, 0x000707FF,
-    0x07FF0000, 0xFFFFFFFE, 0x7EFFFFFF, 0xFFFFC000,
+    0x07FF0000, 0xFFFFFFFF, 0xFEFFFFFF, 0xFFFFC000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x1FEFFFFF, 0x9C00E1FE,
     0xFFFF0000, 0xFFFFFFFF, 0xFFFFE000, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0003FFFF, 0xFFFFFC00, 0x043007FF,
-    0xFCFFFFFF, 0x00001FFF, 0x00000000, 0x00000000,
+    0xFCFFFFFF, 0x00001FFF, 0x01FFFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xE3FFFFFF, 0xFF215FFF, 0xFE06000F,
+    0xFFFFFFFF, 0xEFFFFFFF, 0xFFE1DFFF, 0xFEFE000F,
     0xFFF99FEE, 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, 0x0000000F,
-    0xFFFDDFEC, 0xE3FFFDFF, 0x00801DDF, 0xFC00000F,
+    0xFFFDDFEC, 0xE3EFFDFF, 0x40601DDF, 0x0006000F,
+    0xFFFDDFEC, 0xE7FFFFFF, 0x00805DDF, 0xFC00000F,
     0xFC7FFFEC, 0x2FFBFFFF, 0xFF5F807F, 0x000C0000,
     0xFFFFFFFE, 0x07FFFFFF, 0x0000207F, 0x00000000,
     0xFEF02596, 0x3BFFECAE, 0x3000205F, 0x00000000,
     0x00000001, 0x00000000, 0xFFFFFEFF, 0xFFFE1FFF,
-    0xFEFF0F03, 0x1FFFFFFF, 0x00000000, 0x00000000,
+    0xFEFFFF03, 0x1FFFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xF97FFFFF, 0xFFFF0000, 0xFFFFC1E7,
     0x3000407F, 0xFFFFFFFF, 0xFFFF003F, 0x17FFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -463,7 +463,7 @@
     0x0FFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF, 0x001FFFFE,
     0x00000000, 0x00000080, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFEFFFFF, 0x00000FEF, 0x00000000,
-    0xFFFFFFFF, 0x0000C3FF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x0000C3FF, 0xFFFFFFFF, 0x0003FFBF,
     0xFFFFFFFF, 0x003FFFFF, 0xFC00E000, 0x3FFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x0007DE00,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -473,7 +473,7 @@
     0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF,
     0xFFFFFFFF, 0x5FDFFFFF, 0x0FCF1FDC, 0x1FDC1FFF,
     0x00000000, 0x00000000, 0x00000000, 0x80020000,
-    0x001F0000, 0x00000000, 0x00000000, 0x00000000,
+    0x1FFF0000, 0x00000000, 0x00000000, 0x00000000,
     0x3E2FFC84, 0xF3FFBD50, 0x000043E0, 0xFFFFFFFF,
     0x000001FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -491,7 +491,7 @@
     0x000000E0, 0x1F3E03FE, 0xFFFFFFFE, 0xFFFFFFFF,
     0xE07FFFFF, 0xFFFFFFFE, 0xFFFFFFFF, 0xF7FFFFFF,
     0xFFFFFFE0, 0xFFFE3FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00007FFF, 0x00FFFFFF, 0x00000000, 0xFFFF0000,
+    0x00007FFF, 0x07FFFFFF, 0x00000000, 0xFFFF0000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -508,17 +508,17 @@
     0x00001FFF, 0x00000000, 0xFFFF0000, 0x3FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFF1FFF, 0x00000C00, 0xFFFFFFFF, 0x80007FFC,
+    0xFFFF1FFF, 0x00000C00, 0xFFFFFFFF, 0x80007FFF,
     0x00FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF,
     0xFF800000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000019FF, 0x00000000, 0x00000000, 0xF8000000,
+    0x000379FF, 0x000003FF, 0x00000000, 0xFC000000,
     0xFFFFF7BB, 0x000000FF, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x0000000F, 0x08FC0000,
     0xFFFFFC00, 0xFFFF07FF, 0x0007FFFF, 0x1FFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x00008000, 0x00000000,
+    0xFFFFFFFF, 0xFFF7FFFF, 0x00008000, 0x00000000,
     0xFFFFFFFF, 0x007FFFFF, 0x00003FFF, 0x047FFFFF,
     0xFFFFFFFF, 0x7FFFFFFF, 0x38000005, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x000007FF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -564,7 +564,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000000,
     0xFFFFFFFC, 0x01FFFFFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -580,6 +580,14 @@
     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,
+    0x00000003, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF,
     0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF,
     0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF,
@@ -594,8 +602,8 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0x001FFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x001FFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -281,7 +281,7 @@
   {
     0x0000000F, 0x00000000, 0x00000000, 0x00001BFF,
     0x00000000, 0x00000000, 0x20000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00008000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x7FFFFFFF,
     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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -148,7 +148,7 @@
         2 +   128 * sizeof (short) / sizeof (int) +    64
   },
   {
-    0xF8002930, 0xFFFFFFFF, 0x800007FF, 0xFFFEE000,
+    0xF8002930, 0xFFFFFFFF, 0x000007FF, 0xFFFEE000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, 0xFC00C060,
     0xFFFD7FFF, 0x0000FFFF, 0xFFFFF800, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFE003F, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[8 << 4];
   }
 u_property_bidi_boundary_neutral =
 {
@@ -39,7 +39,6 @@
        18 +   512 * sizeof (short) / sizeof (int) +     0,
        -1,
        -1,
-       18 +   512 * sizeof (short) / sizeof (int) +    16,
        -1,
        -1,
        -1,
@@ -52,7 +51,8 @@
        -1,
        -1,
        -1,
-       18 +   512 * sizeof (short) / sizeof (int) +    32,
+       -1,
+       18 +   512 * sizeof (short) / sizeof (int) +    16,
        -1,
        -1,
        -1,
@@ -162,8 +162,8 @@
        -1,
        -1,
        -1,
+       18 +   512 * sizeof (short) / sizeof (int) +    32,
        18 +   512 * sizeof (short) / sizeof (int) +    48,
-       18 +   512 * sizeof (short) / sizeof (int) +    64,
        -1,
        -1,
        -1,
@@ -268,7 +268,7 @@
        -1,
        -1,
        -1,
-       18 +   512 * sizeof (short) / sizeof (int) +    80,
+       18 +   512 * sizeof (short) / sizeof (int) +    64,
        -1,
        -1,
        -1,
@@ -291,7 +291,7 @@
        -1,
        -1,
        -1,
-       18 +   512 * sizeof (short) / sizeof (int) +    96,
+       18 +   512 * sizeof (short) / sizeof (int) +    80,
        -1,
        -1,
        -1,
@@ -419,15 +419,15 @@
        -1,
        -1,
        -1,
+       18 +   512 * sizeof (short) / sizeof (int) +    80,
        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) +   112,
+       18 +   512 * sizeof (short) / sizeof (int) +   112,
+       18 +   512 * sizeof (short) / sizeof (int) +   112,
+       18 +   512 * sizeof (short) / sizeof (int) +   112,
+       18 +   512 * sizeof (short) / sizeof (int) +   112,
+       18 +   512 * sizeof (short) / sizeof (int) +   112,
        -1,
        -1,
        -1,
@@ -547,17 +547,13 @@
        -1,
        -1,
        -1,
-       18 +   512 * sizeof (short) / sizeof (int) +    96
+       18 +   512 * sizeof (short) / sizeof (int) +    80
   },
   {
     0x0FFFC1FF, 0x00000000, 0x00000000, 0x80000000,
     0xFFFFFFDF, 0x00002000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00008000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00003800, 0x00000000, 0x00000000, 0x0000FC1F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -173,7 +173,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x08000000, 0x00000000,
     0x00000000, 0x001F0000, 0x00000000, 0x00000000,
-    0x00000000, 0x01FFFFFF, 0x00000000, 0x00000000,
+    0x00000000, 0x03FFFFFF, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -287,7 +287,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0xFC3007FF,
-    0x043FFFFF, 0xFFFFC110, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x043FFFFF, 0xFFFFC110, 0xF1FFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[40 << 4];
+    /*unsigned*/ int level3[43 << 4];
   }
 u_property_bidi_left_to_right =
 {
@@ -285,13 +285,13 @@
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   400,
        18 +   512 * sizeof (short) / sizeof (int) +   608,
-       18 +   512 * sizeof (short) / sizeof (int) +   400,
+       18 +   512 * sizeof (short) / sizeof (int) +   624,
+       18 +   512 * sizeof (short) / sizeof (int) +   640,
+       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,
-       18 +   512 * sizeof (short) / sizeof (int) +   400,
-       18 +   512 * sizeof (short) / sizeof (int) +   400,
-       18 +   512 * sizeof (short) / sizeof (int) +   624,
+       18 +   512 * sizeof (short) / sizeof (int) +   672,
        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) +   624,
+       18 +   512 * sizeof (short) / sizeof (int) +   672,
        -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) +   624
+       18 +   512 * sizeof (short) / sizeof (int) +   672
   },
   {
     0x00000000, 0x00000000, 0x07FFFFFE, 0x07FFFFFE,
@@ -564,27 +564,27 @@
     0x0000FBFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFF8, 0xEFFFFFFF, 0xFFC1DE01, 0xFFFFFFF3,
+    0xFFFFFFF8, 0xEBFFFFFF, 0xFF01DE01, 0xFFFFFFF3,
     0xFFFFFFFD, 0xEFFFFFFF, 0xFFFFDFE1, 0xF7F3FFF3,
     0xFFFFFFF9, 0xEFFFFFFF, 0xFFFDC679, 0xFFDCFFFF,
     0xFFFFFFF9, 0xEFFFFFFF, 0xFFFFDE41, 0xFFFDFFF3,
     0xFFFFFFFD, 0x6FFFFFFF, 0xFFBFDFE1, 0xFFFFFFF3,
     0xFFFFFFFB, 0xFFFFFFFF, 0xFFFFDFFE, 0xF807FFFF,
     0xFFFFFFFF, 0x3FFFFFFF, 0xFF9FC23E, 0x80FFFFF3,
-    0xFFFFFFFF, 0xEFFFFFFF, 0xFFFFCFFF, 0xFFF9FFF3,
+    0xFFFFFFFF, 0xEFFFFFFF, 0xFFFFCFFF, 0xFFFFFFF3,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFDFE1, 0xFFFFFFF3,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFA3FBFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0x780DFFFF, 0xFFFF807F, 0xFFFFFFFF,
     0xFFFFFFFF, 0xE40DFFFF, 0xFFFFC0FF, 0xFFFFFFFF,
     0xFCFFFFFF, 0xC15FFFFF, 0xFFFFFFFF, 0x8001FFFF,
-    0x0100FF20, 0xE0000000, 0xFFFFFFBF, 0xFFFFFFFF,
+    0x01001F20, 0xE0000000, 0xFFFFFFBF, 0xFFFFFFFF,
     0xFFFFFFFF, 0x99021FFF, 0x3CFFFFFF, 0xFFE1FFFE,
     0xDFFFDF9B, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x1FFFFFFF, 0xFFFFFFFF,
     0xFC00FFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -601,31 +601,31 @@
     0xFE7FFFFF, 0xFFFFFFFF, 0x80BFFFFF, 0x6007E01A,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFF0, 0xE82FFFFF, 0xFFFFFFFB, 0xFFF007FF,
-    0xFFFFFFFC, 0xFFFFFCC3, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFC, 0xFFFFFCC3, 0xFFFFFFFF, 0xFFFC5CBF,
     0xFFFFFFFF, 0xFF300FFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x0008FFFF, 0xFFFFDE02,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0x1FFFFF80,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0x0FFFFF80,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0x5FFFFFFF, 0x1FFF1FFC, 0x9FFF1FFF,
     0x00004000, 0x00000000, 0x00000000, 0x800E0000,
-    0xFFFF8000, 0xFE000000, 0x0000FFFF, 0xFFFE0000,
+    0xFFFF8000, 0xFC000000, 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, 0xFFFFFE00,
+    0x00200000, 0x00000000, 0x00000000, 0xFFF00000,
     0x00000000, 0xFFFFFF80, 0xFFFFF800, 0x00000000,
     0xF0000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x000003FF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00001000, 0x00004000, 0x000000F4,
-    0x00000C21, 0x00000100, 0x80385000, 0x00000001,
-    0x00E00000, 0x80010000, 0x0000E800, 0x00000000,
+    0x00000000, 0x00001000, 0x00000000, 0x00000000,
+    0x00000001, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00002800, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -636,7 +636,7 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x01FC781F,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000000,
     0x00000000, 0xFFFC0000, 0xFFFFFFFF, 0xFFFFFFFF,
     0x04000000, 0x00000000, 0x00000000, 0xFFF00000,
@@ -686,7 +686,7 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFD, 0xFFFFFFFF, 0x00000000, 0x00000000,
     0xF000F800, 0xFFFFFFFF, 0xFFFFFFFF, 0xDFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFD, 0x00FFFFFF, 0x0003FF80, 0xFFFFFFC0,
     0xFFFFFFFC, 0xF987FFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -703,11 +703,23 @@
     0xFFDFFFFF, 0xFFFFFFFF, 0xFFFF7FFF, 0xFFFFFFFF,
     0xFFFFFDFF, 0xFFFFFFFF, 0x00003FF7, 0x00000000,
     0x00000000, 0x0000F000, 0x00000000, 0x00000000,
-    0xFFF00000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFF00000, 0x80018000, 0x00010001, 0xFFFFFFFF,
     0xFFFFF800, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x0040FFFE, 0x00000000, 0xE0000000,
+    0xFFF00000, 0x00000000, 0xFFFFF820, 0xFFFE0000,
+    0x00000000, 0x80000000, 0x00000002, 0x00000000,
+    0x00001000, 0x00000000, 0x00000000, 0xE1000000,
+    0x00000000, 0xC0000010, 0x0000FFFF, 0xFFFFFF00,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF,
+    0x8AA20001, 0x0010D0C0, 0xFFFF001E, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0xFFFFFFC0, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0xFFF00000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x3FFFFFFF
   }
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -428,13 +428,13 @@
     0x000003F8, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFE0000, 0xBFFFFFFF, 0x000000B6, 0x00000000,
-    0x07FF0000, 0x00000000, 0x7FFFF800, 0x00010000,
-    0x00000000, 0x00000000, 0xDFC00000, 0x00003D9F,
+    0x07FF0000, 0x00000000, 0xFFFFF800, 0x00010000,
+    0x00000000, 0x00000000, 0x9FC00000, 0x00003D9F,
     0x00020000, 0xFFFF0000, 0x000007FF, 0x00000000,
     0x00000000, 0x0001FFC0, 0x00000000, 0x000FF800,
-    0xFBC00000, 0x00003EEF, 0x00000000, 0x00000000,
+    0xFBC00000, 0x00003EEF, 0x0E000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000007, 0x10000000, 0x003E21FE, 0x0000000C,
+    0x00000007, 0x14000000, 0x00FE21FE, 0x0000000C,
     0x00000002, 0x10000000, 0x0000201E, 0x0000000C,
     0x00000006, 0x10000000, 0x00023986, 0x00230000,
     0x00000006, 0x10000000, 0x000021BE, 0x0000000C,
@@ -447,14 +447,14 @@
     0x00000000, 0x07F20000, 0x00007F80, 0x00000000,
     0x00000000, 0x1BF20000, 0x00003F00, 0x00000000,
     0x03000000, 0x02A00000, 0x00000000, 0x7FFE0000,
-    0xFEFF00DF, 0x1FFFFFFF, 0x00000040, 0x00000000,
+    0xFEFFE0DF, 0x1FFFFFFF, 0x00000040, 0x00000000,
     0x00000000, 0x66FDE000, 0xC3000000, 0x001E0001,
     0x20002064, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x80000000, 0x00000000,
+    0x00000000, 0x00000000, 0xE0000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -467,18 +467,18 @@
     0x01800000, 0x00000000, 0x7F400000, 0x9FF81FE5,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x0000000F, 0x17D00000, 0x00000004, 0x000FF800,
-    0x00000003, 0x0000033C, 0x00000000, 0x00000000,
+    0x00000003, 0x0000033C, 0x00000000, 0x0003A340,
     0x00000000, 0x00CFF000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFF70000, 0x000021FD,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFFFFFFF, 0xE000007F,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0xF000007F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFF0000, 0x0001FFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00038000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x80000000,
     0x00000000, 0x00000000, 0x00000000, 0xFFFFFFFF,
     0x00000000, 0x0000FC00, 0x00000000, 0x00000000,
     0x06000000, 0x00000000, 0x00000000, 0x00000000,
@@ -512,7 +512,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000002, 0xFF000000, 0x0000007F, 0x00000000,
     0x00000003, 0x06780000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[38 << 4];
   }
 u_property_bidi_other_neutral =
 {
@@ -157,7 +157,7 @@
         3 +   256 * sizeof (short) / sizeof (int) +   480,
        -1,
        -1,
-       -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   496,
        -1,
        -1,
        -1,
@@ -254,9 +254,9 @@
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   496,
+        3 +   256 * sizeof (short) / sizeof (int) +   512,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   512,
+        3 +   256 * sizeof (short) / sizeof (int) +   528,
        -1,
        -1,
        -1,
@@ -269,10 +269,10 @@
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   528,
-       -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,
        -1,
        -1,
        -1,
@@ -292,7 +292,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000400, 0x00000000, 0x00000000, 0x00000000,
     0x0000C0C0, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000200,
+    0x00000000, 0x00000000, 0x40000000, 0x00000200,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x03C00000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -300,7 +300,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x05F80000,
     0x00000000, 0x00000000, 0x00000000, 0x7F000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00060000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -334,15 +334,15 @@
     0xFFF3FFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0x003FFFFF, 0x00000000, 0xF8000000,
-    0xFFDFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000001FF,
+    0xFFDFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFF, 0x0000007F, 0x000007FF, 0xFFFFFFFF,
     0x000000FF, 0x00000000, 0x00000000, 0xFFFFFC00,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFEFFF, 0xFFFFBFFF, 0xFFFFFF0B,
-    0xFFFFF3DE, 0xFFFFFEFF, 0x7FC7AFFF, 0xFFFFFFFE,
-    0xFF1FFFFF, 0x7FFEFFFF, 0xFFFF17FF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFEFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFD7FF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -403,6 +403,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFE000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFC0000, 0x0000003F,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x00000023, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000,
@@ -412,8 +416,20 @@
     0x00200000, 0x00000000, 0x00008000, 0x00000000,
     0x00000200, 0x00000000, 0x00000008, 0x00000000,
     0xFFFFFFFF, 0xFFFF0FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000FFFFF, 0x00000000, 0x00000000, 0x00000000,
+    0x000FFFFF, 0x7FFE7FFF, 0xFFFEFFFE, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFBF0001, 0xFFFFFFFF, 0x1FFFFFFF,
+    0x000FFFFF, 0xFFFFFFFF, 0x000007DF, 0x0001FFFF,
+    0xFFFFFFFF, 0x7FFFFFFF, 0xFFFFFFFD, 0xFFFFFFFF,
+    0xFFFFEFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1EFFFFFF,
+    0xFFFFFFFF, 0x3FFFFFEF, 0xFFFF0000, 0x000000FF,
+    0x00000000, 0x00000000, 0x00000000, 0xF8000000,
+    0x755DFFFE, 0xFFEF2F3F, 0x0000FFE1, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
     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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -432,13 +432,13 @@
     0x000003F8, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x02000000, 0x00000000,
     0xFFFE0000, 0xBFFFFFFF, 0x000000B6, 0x00100000,
-    0x07FF000F, 0x00000000, 0x7FFFF801, 0x00010000,
-    0x00000000, 0x00000000, 0xFFC00000, 0x00003DFF,
+    0x07FF000F, 0x00000000, 0xFFFFF801, 0x00010000,
+    0x00000000, 0x00000000, 0xBFC00000, 0x00003DFF,
     0x00028000, 0xFFFF0000, 0x000007FF, 0x00000000,
     0x00000000, 0x0001FFC0, 0x00000000, 0x043FF800,
-    0xFFC00000, 0x00003FFF, 0x00000000, 0x00000000,
+    0xFFC00000, 0x00003FFF, 0x0E000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000007, 0x10000000, 0x003E21FE, 0x0002000C,
+    0x00000007, 0x14000000, 0x00FE21FE, 0x0002000C,
     0x00000002, 0x10000000, 0x0000201E, 0x0000000C,
     0x00000006, 0x10000000, 0x00023986, 0x00230000,
     0x00000006, 0x10000000, 0x000021BE, 0x0000000C,
@@ -451,14 +451,14 @@
     0x00000000, 0x07F20000, 0x00007FC0, 0x00000000,
     0x00000000, 0x1BF20000, 0x00003F40, 0x00000000,
     0x03000000, 0x02A00000, 0x00000000, 0x7FFE0000,
-    0xFEFF00DF, 0x1FFFFFFF, 0x00000040, 0x00000000,
+    0xFEFFE0DF, 0x1FFFFFFF, 0x00000040, 0x00000000,
     0x00000000, 0x66FDE000, 0xC3000000, 0x001E0001,
     0x20002064, 0x00000000, 0x00000000, 0x10000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x80000000, 0x00000000,
+    0x00000000, 0x00000000, 0xE0000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -471,22 +471,22 @@
     0x01800000, 0x00000000, 0x7F400000, 0x9FF81FE5,
     0x00000000, 0x00000080, 0x00000000, 0x00000000,
     0x0000000F, 0x17D00000, 0x00000004, 0x000FF800,
-    0x00000003, 0x0000033C, 0x00000000, 0x00000000,
+    0x00000003, 0x0000033C, 0x00000000, 0x0003A340,
     0x00000000, 0x00CFF000, 0x00000000, 0x3F000000,
     0x00000000, 0x00000000, 0xFFF70000, 0x000021FD,
     0x00000000, 0xFFFFF000, 0xFFFFFFFF, 0x01000003,
-    0xF8000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xE000007F,
+    0xF8000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xF000007F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xA0000000, 0xE000E003, 0x6000E000,
     0x0300F800, 0x00007C90, 0x00000000, 0x8002FC1F,
-    0x001F0000, 0x00000000, 0xFFFF0000, 0x0001FFFF,
+    0x1FFF0000, 0x00000000, 0xFFFF0000, 0x0001FFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x20000000,
     0x00000000, 0x00000000, 0x00000000, 0x00038000,
-    0x00000000, 0x00000000, 0x00000000, 0x00008000,
+    0x00000000, 0x00000000, 0x00000000, 0x80008000,
     0x00000000, 0x00000000, 0x00000000, 0xFFFFFFFF,
     0x00000000, 0x00008000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -519,7 +519,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x40000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0xFFFC0000, 0x00000003, 0x00000000,
     0x0008FFFF, 0x0000007F, 0x00240000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x80000000,
     0x04004080, 0x40000000, 0x00000001, 0x00010000,
@@ -532,7 +532,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000002, 0xFF000000, 0x0000007F, 0x00000000,
     0x00000003, 0x26780000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -289,7 +289,7 @@
     0xFFFFD740, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFBFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE003F, 0x007FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFE00FF, 0x007FFFFF, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFFFFF, 0x0000003F, 0x00000000,
@@ -315,10 +315,10 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000781F,
     0xFFFFFFFF, 0x0000003F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFFFFFFF, 0x00003FFC,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0x00003FFF,
     0x00FFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000018FF, 0x00000000, 0x00000000, 0x00000000,
+    0x000378FF, 0x000003FF, 0x00000000, 0x04000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00F8007F, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -289,7 +289,7 @@
     0xFFFED740, 0x00000FFB, 0x55638004, 0xE6B35555,
     0xFFFFFFFF, 0x0000FFFF, 0x00000000, 0x55555555,
     0x55555401, 0x55555555, 0x55552AAB, 0x55555555,
-    0x55555555, 0xFFFE0015, 0x007FFFFF, 0x00000000,
+    0x55555555, 0xFFFE0055, 0x007FFFFF, 0x00000000,
     0x00000080, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFFFFF, 0x0000003F, 0x00000000,
@@ -311,10 +311,10 @@
     0x55555555, 0x55555555, 0x55555555, 0x00002805,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x55555555, 0x00001554,
+    0x00000000, 0x00000000, 0x55555555, 0x00001555,
     0x00555555, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x55545554, 0x55555555, 0x6A005555,
-    0x00000855, 0x00000000, 0x00000000, 0x00000000,
+    0x00012855, 0x00000155, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00F8007F, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -283,13 +283,13 @@
     0x00000000, 0x00200000, 0xFF7FFFFF, 0xFF7FFFFF,
     0xFFFFFFFF, 0xFEFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xF7FFDFFF, 0xB3FFF3FF, 0xFFFFFFF0, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFC0FFFFD, 0x0ADFFFFF, 0x20268B09,
+    0xFFFFFFFF, 0xFC0FFFFD, 0x0ADFFFFF, 0x20268B29,
     0x00041F09, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000020, 0x38CF0000,
     0xFFFFD740, 0xFFFFFFFB, 0xFFE3FFFF, 0xEFB7FFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE003F, 0x007FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFE00FF, 0x007FFFFF, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFFFFF, 0x0000003F, 0x00000000,
@@ -315,10 +315,10 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000780F,
     0xFFFFFFFF, 0x0000003F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFFFFFFF, 0x00003FFC,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0x00003FFF,
     0x00FFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFCFFFC, 0xFFFFFFFF, 0xFE00FFFF,
-    0x000018FF, 0x00000000, 0x00000000, 0x00000000,
+    0x000338FF, 0x000003FF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00F8007F, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -289,7 +289,7 @@
     0xFFFED740, 0x00000FFB, 0x55008000, 0xE6905555,
     0xFFFFFFFF, 0x0000FFFF, 0x00000000, 0x55555555,
     0x55555401, 0x55555555, 0x55552AAB, 0x55555555,
-    0x55555555, 0xFFFE0015, 0x007FFFFF, 0x00000000,
+    0x55555555, 0xFFFE0055, 0x007FFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFFFFF, 0x0000003F, 0x00000000,
@@ -311,10 +311,10 @@
     0x55555555, 0x55555555, 0x55555555, 0x00002805,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x55555555, 0x00001554,
+    0x00000000, 0x00000000, 0x55555555, 0x00001555,
     0x00555555, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x55545554, 0x55555555, 0x6A005555,
-    0x00000855, 0x00000000, 0x00000000, 0x00000000,
+    0x00012855, 0x00000155, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x07FFFFFE, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -283,13 +283,13 @@
     0x00000000, 0x00200000, 0x80000000, 0xFF7FFFFF,
     0xAAAAAAAA, 0x54AAAAAA, 0xAAAAAB55, 0xD4AAAAAA,
     0x46241129, 0xA251212A, 0xB55556D0, 0xAA2BAAAA,
-    0xAAAAAAAA, 0x900AAAA8, 0x0ADFAA85, 0x20268B09,
+    0xAAAAAAAA, 0x900AAAA8, 0x0ADFAA85, 0x20268B29,
     0x00041F09, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000020, 0x388A0000,
     0x00010000, 0xFFFFF000, 0xAAE37FFF, 0x0927AAAA,
     0x00000000, 0xFFFF0000, 0xFFFFFFFF, 0xAAAAAAAA,
     0xAAAAA802, 0xAAAAAAAA, 0xAAAAD554, 0xAAAAAAAA,
-    0xAAAAAAAA, 0x0000002A, 0x00000000, 0xFFFFFFFE,
+    0xAAAAAAAA, 0x000000AA, 0x00000000, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -311,10 +311,10 @@
     0xAAAAAAAA, 0xAAAAAAAA, 0xAAAAAAAA, 0x0000500A,
     0xFFFFFFFF, 0x0000003F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xAAAAAAAA, 0x00002AA8,
+    0x00000000, 0x00000000, 0xAAAAAAAA, 0x00002AAA,
     0x00AAAAAA, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xAAA8AAA8, 0xAAAAAAAA, 0x9400AAAA,
-    0x000010AA, 0x00000000, 0x00000000, 0x00000000,
+    0x000210AA, 0x000002AA, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00F8007F, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -283,13 +283,13 @@
     0x00000000, 0x00200000, 0x80000000, 0xFF7FFFFF,
     0xAAAAAAAA, 0x54AAAAAA, 0xAAAAAB55, 0xD4AAAAAA,
     0x46241129, 0xA251212A, 0xB5555B60, 0xAA2DAAAA,
-    0xAAAAAAAA, 0x900AAAA8, 0x0ADFAA85, 0x20268B09,
+    0xAAAAAAAA, 0x900AAAA8, 0x0ADFAA85, 0x20268B29,
     0x00041F09, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000020, 0x388A0000,
     0x00010000, 0xFFFFF000, 0xAAE37FFF, 0x0927AAAA,
     0x00000000, 0xFFFF0000, 0xFFFFFFFF, 0xAAAAAAAA,
     0xAAAAA802, 0xAAAAAAAA, 0xAAAAD554, 0xAAAAAAAA,
-    0xAAAAAAAA, 0x0000002A, 0x00000000, 0xFFFFFFFE,
+    0xAAAAAAAA, 0x000000AA, 0x00000000, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -311,10 +311,10 @@
     0xAAAAAAAA, 0xAAAAAAAA, 0xAAAAAAAA, 0x0000500A,
     0xFFFFFFFF, 0x0000003F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xAAAAAAAA, 0x00002AA8,
+    0x00000000, 0x00000000, 0xAAAAAAAA, 0x00002AAA,
     0x00AAAAAA, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xAAA8AAA8, 0xAAAAAAAA, 0x9400AAAA,
-    0x000010AA, 0x00000000, 0x00000000, 0x00000000,
+    0x000210AA, 0x000002AA, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00F8007F, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -428,13 +428,13 @@
     0x000003F8, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFE0000, 0xBFFFFFFF, 0x000000B6, 0x00000000,
-    0x07FF0000, 0x00000000, 0x7FFFF800, 0x00010000,
-    0x00000000, 0x00000000, 0xDFC00000, 0x00003D9F,
+    0x07FF0000, 0x00000000, 0xFFFFF800, 0x00010000,
+    0x00000000, 0x00000000, 0x9FC00000, 0x00003D9F,
     0x00020000, 0xFFFF0000, 0x000007FF, 0x00000000,
     0x00000000, 0x0001FFC0, 0x00000000, 0x000FF800,
-    0xFBC00000, 0x00003EEF, 0x00000000, 0x00000000,
+    0xFBC00000, 0x00003EEF, 0x0E000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x0000000F, 0xD0000000, 0x003E7FFF, 0x0000000C,
+    0x0000000F, 0xDC000000, 0x00FEFFFF, 0x0000000C,
     0x0000000E, 0xD0000000, 0x0080399F, 0x0000000C,
     0x0000000E, 0xD0000000, 0x00023987, 0x00230000,
     0x0000000E, 0xD0000000, 0x00003BBF, 0x0000000C,
@@ -447,14 +447,14 @@
     0x00000000, 0x07F20000, 0x00007F80, 0x00000000,
     0x00000000, 0x1BF20000, 0x00003F00, 0x00000000,
     0x03000000, 0xC2A00000, 0x00000000, 0xFFFE0000,
-    0xFEFF00DF, 0x1FFFFFFF, 0x00000040, 0x00000000,
+    0xFEFFE0DF, 0x1FFFFFFF, 0x00000040, 0x00000000,
     0x00000000, 0x7FFFF800, 0xC3C00000, 0x001E3F9D,
     0x3C00BFFC, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x80000000, 0x00000000,
+    0x00000000, 0x00000000, 0xE0000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -467,18 +467,18 @@
     0x0F800000, 0x00000000, 0x7FE00000, 0x9FFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x0000001F, 0xFFF00000, 0x0000001F, 0x000FF800,
-    0x00000007, 0x000007FE, 0x00000000, 0x00000000,
+    0x00000007, 0x000007FE, 0x00000000, 0x000FFFC0,
     0x00000000, 0x00FFFFF0, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFF70000, 0x000421FF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFFFFFFF, 0xE000007F,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0xF000007F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFF0000, 0x0001FFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00038000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x80000000,
     0x00000000, 0x00000000, 0x00000000, 0xFFFFFFFF,
     0x00000000, 0x0000FC00, 0x00000000, 0x00000000,
     0x06000000, 0x00000000, 0x00000000, 0x00000000,
@@ -512,7 +512,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000007, 0xFF000000, 0x0000007F, 0x00000000,
     0x00000007, 0x07FF0000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -377,9 +377,9 @@
     0x00000000, 0xF8000000, 0x00000001, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFF07FF, 0x000067FF, 0x00007C00, 0x00000000,
+    0xFFFF07FF, 0x000067FF, 0x0000FC00, 0x00000000,
     0x00010000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000001, 0x00000000, 0x000001FF, 0x00000000,
+    0x00000003, 0x00000000, 0x000001FF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -173,7 +173,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x08000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x01FFFFFF, 0x00000000, 0x00000000,
+    0x00000000, 0x03FFFFFF, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[17 << 4];
+    /*unsigned*/ int level3[18 << 4];
   }
 u_property_decimal_digit =
 {
@@ -157,6 +157,7 @@
        -1,
        -1,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   256,
        -1,
        -1,
        -1,
@@ -255,8 +256,7 @@
        -1,
        -1,
        -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   256,
+        3 +   256 * sizeof (short) / sizeof (int) +   272,
        -1,
        -1,
        -1,
@@ -314,7 +314,7 @@
     0x03FF0000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x0000FFC0, 0x00000000,
-    0x00000000, 0x00000000, 0x07FF0000, 0x00000000,
+    0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x03FF03FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x03FF0000, 0x00000000,
@@ -343,6 +343,10 @@
     0x00000000, 0x000003FF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[2 << 7];
-    /*unsigned*/ int level3[6 << 4];
+    /*unsigned*/ int level3[7 << 4];
   }
 u_property_deprecated =
 {
@@ -37,10 +37,6 @@
        16 +   256 * sizeof (short) / sizeof (int) +     0,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
        16 +   256 * sizeof (short) / sizeof (int) +    16,
        -1,
        -1,
@@ -49,9 +45,13 @@
        -1,
        -1,
        -1,
+       16 +   256 * sizeof (short) / sizeof (int) +    48,
        -1,
-       16 +   256 * sizeof (short) / sizeof (int) +    48,
+       -1,
+       -1,
+       -1,
        16 +   256 * sizeof (short) / sizeof (int) +    64,
+       16 +   256 * sizeof (short) / sizeof (int) +    80,
        -1,
        -1,
        -1,
@@ -162,7 +162,7 @@
        -1,
        -1,
        -1,
-       16 +   256 * sizeof (short) / sizeof (int) +    80,
+       16 +   256 * sizeof (short) / sizeof (int) +    96,
        -1,
        -1,
        -1,
@@ -296,6 +296,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000200, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00080000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x02800000,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[4 << 4];
   }
 u_property_format_control =
 {
@@ -37,7 +37,6 @@
        16 +   384 * sizeof (short) / sizeof (int) +     0,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +    16,
        -1,
        -1,
        -1,
@@ -50,7 +49,8 @@
        -1,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +    32,
+       -1,
+       16 +   384 * sizeof (short) / sizeof (int) +    16,
        -1,
        -1,
        -1,
@@ -266,7 +266,7 @@
        -1,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +    48,
+       16 +   384 * sizeof (short) / sizeof (int) +    32,
        -1,
        -1,
        -1,
@@ -290,7 +290,7 @@
        -1,
        -1,
        -1,
-       16 +   384 * sizeof (short) / sizeof (int) +    64,
+       16 +   384 * sizeof (short) / sizeof (int) +    48,
        -1,
        -1,
        -1,
@@ -424,10 +424,6 @@
     0x00000000, 0x00002000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00008000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000800, 0x00000000, 0x00000000, 0x0000FC1F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[56 << 4];
+    /*unsigned*/ int level3[60 << 4];
   }
 u_property_grapheme_base =
 {
@@ -202,8 +202,8 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   160,
+        4 +   384 * sizeof (short) / sizeof (int) +   752,
        -1,
        -1,
        -1,
@@ -238,7 +238,7 @@
        -1,
        -1,
        -1,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   768,
        -1,
        -1,
        -1,
@@ -254,10 +254,10 @@
        -1,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   752,
-        4 +   384 * sizeof (short) / sizeof (int) +   768,
         4 +   384 * sizeof (short) / sizeof (int) +   784,
         4 +   384 * sizeof (short) / sizeof (int) +   800,
+        4 +   384 * sizeof (short) / sizeof (int) +   816,
+        4 +   384 * sizeof (short) / sizeof (int) +   832,
        -1,
        -1,
        -1,
@@ -270,10 +270,10 @@
        -1,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   816,
-        4 +   384 * sizeof (short) / sizeof (int) +   832,
-       -1,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   848,
+        4 +   384 * sizeof (short) / sizeof (int) +   864,
+        4 +   384 * sizeof (short) / sizeof (int) +   880,
+        4 +   384 * sizeof (short) / sizeof (int) +   896,
        -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) +   848,
+        4 +   384 * sizeof (short) / sizeof (int) +   912,
         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) +   864,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   928,
+        4 +   384 * sizeof (short) / sizeof (int) +   944,
        -1,
        -1,
        -1,
@@ -403,7 +403,7 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   160,
-        4 +   384 * sizeof (short) / sizeof (int) +   880,
+        4 +   384 * sizeof (short) / sizeof (int) +   944,
        -1,
        -1
   },
@@ -418,28 +418,28 @@
     0xFFFFD7F0, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFC07, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE003F, 0xFE7FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFE00FF, 0xFE7FFFFF, 0xFFFFFFFE,
     0x000006FF, 0x40000000, 0xFFFF0049, 0x001F07FF,
-    0xC800FFC0, 0xFFFFFFFE, 0x000007FF, 0xFFFEFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, 0xFFFFC260,
+    0xC800FFC0, 0xFFFFFFFF, 0x000007FF, 0xFFFEFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x403FFFFF, 0xFFFFC260,
     0xFFFD3FFF, 0x0000FFFF, 0xFFFFE000, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0002003F, 0xFFFFFFFF, 0x07F007FF,
-    0x043FFFFF, 0x7FFF0110, 0x00000000, 0x00000000,
+    0x043FFFFF, 0x7FFF0110, 0x41FFFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFF8, 0xE3FFFFFF, 0xFF015E01, 0xFE07FFF3,
+    0xFFFFFFF8, 0xEBFFFFFF, 0xFF01DE01, 0xFEFFFFF3,
     0xFFF99FEC, 0xA3C5FDFF, 0xB0005981, 0x0FFFFFC3,
     0xFFF987E8, 0xC36DFDFF, 0x5E000001, 0x001CFFC0,
     0xFFFBBFE8, 0xE3EDFDFF, 0x00011A01, 0x0002FFC3,
-    0xFFF99FEC, 0x23EDFDFF, 0xB0001981, 0x0003FFC3,
+    0xFFF99FEC, 0x23EDFDFF, 0xB0001981, 0x00FFFFC3,
     0xD63DC7E8, 0x83FFC718, 0x00011DC6, 0x07FFFFC0,
     0xFFFDDFEE, 0x23EFFDFF, 0x0300001E, 0xFF00FFC3,
     0xFFFDDFEC, 0x63EFFDFF, 0x40000D9B, 0x0006FFC3,
-    0xFFFDDFEC, 0xA3FFFDFF, 0x00001DC1, 0xFE3FFFC3,
+    0xFFFDDFEC, 0xA7FFFFFF, 0x00005DC1, 0xFE3FFFC3,
     0xFC7FFFEC, 0x2FFBFFFF, 0x7F03007F, 0x001C0000,
     0xFFFFFFFE, 0x800DFFFF, 0x0FFF807F, 0x00000000,
     0xFEF02596, 0x200DECAE, 0x33FF005F, 0x00000000,
     0xFCFFFFFF, 0xFD5FFFFF, 0xFFFFFEFF, 0x80001FFF,
-    0x00000F20, 0xC0000000, 0x01FFDFBF, 0x00000000,
+    0x00001F20, 0xC0000000, 0x07FFDFBF, 0x00000000,
     0xFFFFFFFF, 0x99021FFF, 0x3CFFFFFF, 0xFFE1FFFE,
     0xDFFFDF9B, 0xFFFFFFFF, 0xFFFF003F, 0x1FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -463,7 +463,7 @@
     0xCE7FFFFF, 0xFFFFFFFF, 0x00BFFFFF, 0x0007E01A,
     0x03FF03FF, 0x00003FFF, 0x00000000, 0x00000000,
     0xFFFFFFF0, 0xE82FFFFF, 0xFFFF0FFB, 0x1FF007FF,
-    0xFFFFFFFC, 0x03FFC4C3, 0x00000000, 0x00000000,
+    0xFFFFFFFC, 0x03FFC4C3, 0xFFFFFFFF, 0xF00C5CBF,
     0xFFFFFFFF, 0xF8300FFF, 0xFFFFE3FF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00080000, 0x0007DE02,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -473,28 +473,28 @@
     0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF,
     0xFFFFFFFF, 0xFFDFFFFF, 0xEFCFFFDF, 0x7FDCFFFF,
     0xFFFF07FF, 0xFFFF80FF, 0xFFFFFFFF, 0xFFF30000,
-    0x001F7FFF, 0x01FFFFFF, 0x00000000, 0x00000000,
+    0x1FFF7FFF, 0x03FFFFFF, 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, 0x000001FF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFF, 0x0000007F, 0x000007FF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFBFFF, 0xFFFFFF0B,
-    0xFFFFF3DE, 0xFFFFFEFF, 0x7FC7AFFF, 0xFFFFFFFE,
-    0xFF1FFFFF, 0x7FFEFFFF, 0xFFFF17FF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFD7FF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x03FF1FFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFF7FFF, 0x7FFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFE007FFF,
-    0xFFFFFFFF, 0xFFFF003F, 0xFFFFFFFF, 0x0000803F,
+    0xFFFFFFFF, 0xFFFF003F, 0xFFFFFFFF, 0x0001803F,
     0x007FFFFF, 0x7F7F7F7F, 0x7F7F7F7F, 0x00000000,
     0xFFFFFFFF, 0x0003FFFF, 0x00000000, 0x00000000,
     0xFBFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
@@ -503,7 +503,7 @@
     0xFFFFFFFF, 0xFFFF03FF, 0xFFFFFFFE, 0xFFFFFFFF,
     0xF87FFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFE0, 0xFFFE3FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFF7FFF, 0x00FFFFFF, 0xFFFFFFFF, 0xFFFF000F,
+    0xFFFF7FFF, 0x07FFFFFF, 0xFFFFFFFF, 0xFFFF000F,
     0x7FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -520,17 +520,17 @@
     0xFFFF1FFF, 0xFFFFFFFF, 0xFFFF007F, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0x00000FFF, 0xFFFFFFFF, 0xC0087FFC,
+    0xFFFFFFFF, 0x00000FFF, 0xFFFFFFFF, 0xC0087FFF,
     0x00FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FCFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00001FFF, 0x00000000, 0x00000000, 0xF8000000,
+    0x00037FFF, 0x000003FF, 0x00000000, 0xFC000000,
     0xFFFFF7BB, 0x03FF0F9F, 0xFFFFFFFF, 0x00FFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x03FFC00F, 0x0FFC0000,
     0xFFFFFFFF, 0xFFFFC03F, 0x800C007F, 0x1FFFFFFF,
     0xFFFFFFF8, 0xEC37FFFF, 0xC3FFBFFF, 0x00000000,
     0xFFFFFFFF, 0x001981FF, 0xF3FF2FF7, 0x0FFFFFFF,
     0xFFFFFFFF, 0x3E62FFFF, 0xF8000005, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x03FF1EDF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -543,7 +543,7 @@
     0xFFFFFFFF, 0xFFFF3FFF, 0xFFFFFFFF, 0xFFFF3FFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, 0x00000000,
     0xA0F8007F, 0x5F7FFFFF, 0xFFFFFFDB, 0xFFFFFFFF,
-    0xFFFFFFFF, 0x0003FFFF, 0xFFF80000, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFF80003, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF0000, 0xFFFFFFFF,
@@ -580,7 +580,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFD, 0x00FFFFFF, 0xFFFC3F80, 0x0000FFFF,
     0xFFFFFFFC, 0xD987FFFF, 0x00000003, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -596,6 +596,14 @@
     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,
+    0x00000003, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF,
     0xFFFFFFFF, 0xFFFFFE7F, 0xFFFFFFFF, 0x00003C5F,
@@ -613,12 +621,20 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFCFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFF0FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000FFFFF, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFF07FF, 0xA0027FFF, 0x80807C44, 0x9A000000,
-    0x00013C00, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFF0001, 0x0003FFFF, 0x000001FF, 0x00000000,
+    0x000FFFFF, 0x7FFE7FFF, 0xFFFEFFFE, 0x00000000,
+    0xFFFF07FF, 0xFFFF7FFF, 0xFFFFFFFF, 0xFFFF03FF,
+    0x07FFFFFF, 0x00000000, 0x00000000, 0xFFFFFFC0,
+    0xFFFF0007, 0x07FFFFFF, 0x000301FF, 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, 0xFFFF0000, 0x000000FF,
+    0x00000000, 0x00000000, 0x00000000, 0xF8000000,
+    0x755DFFFE, 0xFFEF2F3F, 0x0000FFE1, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000,
@@ -626,8 +642,8 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0x001FFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x001FFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -428,13 +428,13 @@
     0x000003F8, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFE0000, 0xBFFFFFFF, 0x000000B6, 0x00000000,
-    0x07FF0000, 0x00000000, 0x7FFFF800, 0x00010000,
-    0x00000000, 0x00000000, 0xDFC00000, 0x00003D9F,
+    0x07FF0000, 0x00000000, 0xFFFFF800, 0x00010000,
+    0x00000000, 0x00000000, 0x9FC00000, 0x00003D9F,
     0x00020000, 0xFFFF0000, 0x000007FF, 0x00000000,
     0x00000000, 0x0001FFC0, 0x00000000, 0x000FF800,
-    0xFBC00000, 0x00003EEF, 0x00000000, 0x00000000,
+    0xFBC00000, 0x00003EEF, 0x0E000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000007, 0x10000000, 0x003E21FE, 0x0000000C,
+    0x00000007, 0x14000000, 0x00FE21FE, 0x0000000C,
     0x00000002, 0x50000000, 0x0080201E, 0x0000000C,
     0x00000006, 0x10000000, 0x00023986, 0x00230000,
     0x00000006, 0x10000000, 0x000021BE, 0x0000000C,
@@ -447,14 +447,14 @@
     0x00000000, 0x07F20000, 0x00007F80, 0x00000000,
     0x00000000, 0x1BF20000, 0x00003F00, 0x00000000,
     0x03000000, 0x02A00000, 0x00000000, 0x7FFE0000,
-    0xFEFF00DF, 0x1FFFFFFF, 0x00000040, 0x00000000,
+    0xFEFFE0DF, 0x1FFFFFFF, 0x00000040, 0x00000000,
     0x00000000, 0x66FDE000, 0xC3000000, 0x001E0001,
     0x20002064, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x80000000, 0x00000000,
+    0x00000000, 0x00000000, 0xE0000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -467,18 +467,18 @@
     0x01800000, 0x00000000, 0x7F400000, 0x9FF81FE5,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x0000000F, 0x17D00000, 0x00000004, 0x000FF800,
-    0x00000003, 0x0000033C, 0x00000000, 0x00000000,
+    0x00000003, 0x0000033C, 0x00000000, 0x0003A340,
     0x00000000, 0x00CFF000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFF70000, 0x000021FD,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFFFFFFF, 0xE000007F,
+    0x00000000, 0x00000000, 0xFFFFFFFF, 0xF000007F,
     0x00003000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFF0000, 0x0001FFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00038000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x80000000,
     0x00000000, 0x00000000, 0x00000000, 0xFFFFFFFF,
     0x00000000, 0x0000FC00, 0x00000000, 0x00000000,
     0x06000000, 0x00000000, 0x00000000, 0x00000000,
@@ -512,7 +512,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000002, 0xFF000000, 0x0000007F, 0x00000000,
     0x00000003, 0x06780000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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_grapheme_link =
 {
@@ -43,6 +43,15 @@
        -1,
        -1,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   112,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
+       -1,
        -1,
        -1,
        -1,
@@ -96,17 +105,8 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   112,
         3 +   256 * sizeof (short) / sizeof (int) +   128,
+        3 +   256 * sizeof (short) / sizeof (int) +   144,
        -1,
        -1,
        -1,
@@ -154,10 +154,10 @@
        -1,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   144,
+        3 +   256 * sizeof (short) / sizeof (int) +   160,
        -1,
        -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   160,
+        3 +   256 * sizeof (short) / sizeof (int) +   176,
        -1,
        -1,
        -1,
@@ -306,7 +306,11 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000001,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000010, 0x00000000,
-    0x00000000, 0x00000400, 0x00000000, 0x00000000,
+    0x00000000, 0x00000400, 0x00000000, 0x000C0000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x80000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000040, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000010, 0x00000000,
     0x00000000, 0x00000000, 0x00080000, 0x00000000,
@@ -319,7 +323,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000040, 0x00000000,
     0x00000000, 0x02000000, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[49 << 4];
+    /*unsigned*/ int level3[51 << 4];
   }
 u_property_id_continue =
 {
@@ -214,6 +214,8 @@
        -1,
        -1,
        -1,
+       16 +   512 * sizeof (short) / sizeof (int) +   304,
+       16 +   512 * sizeof (short) / sizeof (int) +   656,
        -1,
        -1,
        -1,
@@ -248,6 +250,7 @@
        -1,
        -1,
        -1,
+       16 +   512 * sizeof (short) / sizeof (int) +   672,
        -1,
        -1,
        -1,
@@ -263,13 +266,10 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       16 +   512 * sizeof (short) / sizeof (int) +   656,
-       16 +   512 * sizeof (short) / sizeof (int) +   672,
        16 +   512 * sizeof (short) / sizeof (int) +   688,
        16 +   512 * sizeof (short) / sizeof (int) +   704,
+       16 +   512 * sizeof (short) / sizeof (int) +   720,
+       16 +   512 * sizeof (short) / sizeof (int) +   736,
        -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) +   720,
+       16 +   512 * sizeof (short) / sizeof (int) +   752,
        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) +   736,
-       -1,
+       16 +   512 * sizeof (short) / sizeof (int) +   768,
+       16 +   512 * sizeof (short) / sizeof (int) +   784,
        -1,
        -1,
        -1,
@@ -415,10 +415,10 @@
        -1,
        -1,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
-       16 +   512 * sizeof (short) / sizeof (int) +   752,
+       16 +   512 * sizeof (short) / sizeof (int) +   784,
        -1,
        -1,
-       16 +   512 * sizeof (short) / sizeof (int) +   768,
+       16 +   512 * sizeof (short) / sizeof (int) +   800,
        -1,
        -1,
        -1,
@@ -558,35 +558,35 @@
     0xFFFFD7C0, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFBFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFCFB, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE003F, 0x027FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFE00FF, 0x027FFFFF, 0xFFFFFFFE,
     0xFFFE00FF, 0xBFFFFFFF, 0xFFFF00B6, 0x000707FF,
-    0x07FF0000, 0xFFFFFFFE, 0x7FFFFFFF, 0xFFFFC3FF,
+    0x07FF0000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFC3FF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x9FEFFFFF, 0x9FFFFDFF,
     0xFFFF0000, 0xFFFFFFFF, 0xFFFFE7FF, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0003FFFF, 0xFFFFFFFF, 0x043FFFFF,
-    0xFFFFFFFF, 0x00003FFF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x00003FFF, 0x0FFFFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xF3FFFFFF, 0xFF3F7FFF, 0xFE06FFCF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFEFEFFCF,
     0xFFF99FEE, 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, 0x0000FFCF,
-    0xFFFDDFEC, 0xE3FFFDFF, 0x00803DDF, 0xFC00FFCF,
+    0xFFFDDFEC, 0xF3EFFDFF, 0x40603DDF, 0x0006FFCF,
+    0xFFFDDFEC, 0xE7FFFFFF, 0x00807DDF, 0xFC00FFCF,
     0xFC7FFFEC, 0x2FFBFFFF, 0xFF5F847F, 0x000C0000,
     0xFFFFFFFE, 0x07FFFFFF, 0x03FF7FFF, 0x00000000,
     0xFEF02596, 0x3BFFECAE, 0x33FF3F5F, 0x00000000,
     0x03000001, 0xC2A003FF, 0xFFFFFEFF, 0xFFFE1FFF,
-    0xFEFF0FDF, 0x1FFFFFFF, 0x00000040, 0x00000000,
+    0xFEFFFFDF, 0x1FFFFFFF, 0x00000040, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF03FF, 0xFFFFFFFF,
     0x3FFFFFFF, 0xFFFFFFFF, 0xFFFF003F, 0x17FFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x3D7F3DFF, 0xFFFFFFFF,
     0xFFFF3DFF, 0x7F3DFFFF, 0xFF7FFF3D, 0xFFFFFFFF,
-    0xFF3DFFFF, 0xFFFFFFFF, 0x87FFFFFF, 0x0003FE00,
+    0xFF3DFFFF, 0xFFFFFFFF, 0xE7FFFFFF, 0x0003FE00,
     0x0000FFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x001FFFFF,
     0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -603,27 +603,27 @@
     0x0FFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF, 0x9FFFFFFF,
     0x03FF03FF, 0x00000080, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x03FF0FFF, 0x000FF800,
-    0xFFFFFFFF, 0x03FFC7FF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x03FFC7FF, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFF, 0x00FFFFFF, 0xFFFFE3FF, 0x3FFFFFFF,
     0x00000000, 0x00000000, 0xFFF70000, 0x0007FFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xE000007F,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xF000007F,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF,
     0xFFFFFFFF, 0x5FDFFFFF, 0x0FCF1FDC, 0x1FDC1FFF,
     0x00000000, 0x80000000, 0x00100001, 0x80020000,
-    0x001F0000, 0x00000000, 0x1FFF0000, 0x0001FFE2,
+    0x1FFF0000, 0x00000000, 0x1FFF0000, 0x0001FFE2,
     0x3F2FFC84, 0xF3FFFD50, 0x000043E0, 0xFFFFFFFF,
     0x000001FF, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFF7FFF, 0x7FFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0003F81F,
-    0xFFFFFFFF, 0xFFFF003F, 0xFFFFFFFF, 0x0000803F,
+    0xFFFFFFFF, 0xFFFF003F, 0xFFFFFFFF, 0x8000803F,
     0x007FFFFF, 0x7F7F7F7F, 0x7F7F7F7F, 0xFFFFFFFF,
     0x000000E0, 0x1F3EFFFE, 0xFFFFFFFE, 0xFFFFFFFF,
     0xFE7FFFFF, 0xFFFFFFFE, 0xFFFFFFFF, 0xF7FFFFFF,
     0xFFFFFFE0, 0xFFFE3FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00007FFF, 0x00FFFFFF, 0x00000000, 0xFFFF0000,
+    0x00007FFF, 0x07FFFFFF, 0x00000000, 0xFFFF0000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -640,17 +640,17 @@
     0x00001FFF, 0x00000000, 0xFFFF0000, 0x3FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFF1FFF, 0x00000FFF, 0xFFFFFFFF, 0xB000FFFC,
+    0xFFFF1FFF, 0x00000FFF, 0xFFFFFFFF, 0xB000FFFF,
     0x00FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0003FFFF,
     0xFF800000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000019FF, 0x00000000, 0x00000000, 0xF8000000,
+    0x000379FF, 0x000003FF, 0x00000000, 0xFC000000,
     0xFFFFFFFF, 0x000000FF, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x03FF001F, 0x08FFFFFF,
     0xFFFFFFFF, 0xFFFF3FFF, 0x000FFFFF, 0x1FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x03FF8001, 0x00000000,
     0xFFFFFFFF, 0x007FFFFF, 0x03FF3FFF, 0x0C7FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x38000007, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x03FF37FF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -696,7 +696,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000007F, 0x0000FFC0,
     0xFFFFFFFF, 0x07FFFFFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -712,6 +712,14 @@
     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,
+    0x00000003, 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, 0xF807E3E0,
@@ -734,8 +742,8 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0x001FFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x001FFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[46 << 4];
+    /*unsigned*/ int level3[48 << 4];
   }
 u_property_id_start =
 {
@@ -202,6 +202,8 @@
        -1,
        -1,
        -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   304,
+        4 +   384 * sizeof (short) / sizeof (int) +   656,
        -1,
        -1,
        -1,
@@ -236,6 +238,7 @@
        -1,
        -1,
        -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   672,
        -1,
        -1,
        -1,
@@ -253,11 +256,8 @@
        -1,
        -1,
        -1,
-       -1,
-       -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,
        -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) +   688,
+        4 +   384 * sizeof (short) / sizeof (int) +   720,
         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) +   704,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   736,
+        4 +   384 * sizeof (short) / sizeof (int) +   752,
        -1,
        -1,
        -1,
@@ -403,7 +403,7 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
-        4 +   384 * sizeof (short) / sizeof (int) +   720,
+        4 +   384 * sizeof (short) / sizeof (int) +   752,
        -1,
        -1
   },
@@ -418,28 +418,28 @@
     0xFFFFD740, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFBFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE003F, 0x027FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFE00FF, 0x027FFFFF, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0xFFFF0000, 0x000707FF,
-    0x00000000, 0xFFFFFFFE, 0x000007FF, 0xFFFEC000,
+    0x00000000, 0xFFFFFFFF, 0x000007FF, 0xFFFEC000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x002FFFFF, 0x9C00C060,
     0xFFFD0000, 0x0000FFFF, 0xFFFFE000, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0002003F, 0xFFFFFC00, 0x043007FF,
-    0x043FFFFF, 0x00000110, 0x00000000, 0x00000000,
+    0x043FFFFF, 0x00000110, 0x01FFFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFE060003,
+    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFEFE0003,
     0xFFF99FE0, 0x23C5FDFF, 0xB0004000, 0x00030003,
     0xFFF987E0, 0x036DFDFF, 0x5E000000, 0x001C0000,
     0xFFFBBFE0, 0x23EDFDFF, 0x00010000, 0x00000003,
     0xFFF99FE0, 0x23EDFDFF, 0xB0000000, 0x00020003,
     0xD63DC7E8, 0x03FFC718, 0x00010000, 0x00000000,
     0xFFFDDFE0, 0x23EFFDFF, 0x03000000, 0x00000003,
-    0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x00000003,
-    0xFFFDDFE0, 0x23FFFDFF, 0x00000000, 0xFC000003,
+    0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x00060003,
+    0xFFFDDFE0, 0x27FFFFFF, 0x00004000, 0xFC000003,
     0xFC7FFFE0, 0x2FFBFFFF, 0x0000007F, 0x00000000,
     0xFFFFFFFE, 0x000DFFFF, 0x0000007F, 0x00000000,
     0xFEF02596, 0x200DECAE, 0x3000005F, 0x00000000,
     0x00000001, 0x00000000, 0xFFFFFEFF, 0x00001FFF,
-    0x00000F00, 0x00000000, 0x00000000, 0x00000000,
+    0x00001F00, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0x800007FF, 0x3C3F0000, 0xFFE1C062,
     0x00004003, 0xFFFFFFFF, 0xFFFF003F, 0x17FFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -463,7 +463,7 @@
     0x007FFFFF, 0xFFFFFFFF, 0x001FFFFF, 0x00000000,
     0x00000000, 0x00000080, 0x00000000, 0x00000000,
     0xFFFFFFE0, 0x000FFFFF, 0x00000FE0, 0x00000000,
-    0xFFFFFFF8, 0x0000C001, 0x00000000, 0x00000000,
+    0xFFFFFFF8, 0x0000C001, 0xFFFFFFFF, 0x0000003F,
     0xFFFFFFFF, 0x0000000F, 0xFC00E000, 0x3FFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x0003DE00,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -473,7 +473,7 @@
     0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF,
     0xFFFFFFFF, 0x5FDFFFFF, 0x0FCF1FDC, 0x1FDC1FFF,
     0x00000000, 0x00000000, 0x00000000, 0x80020000,
-    0x001F0000, 0x00000000, 0x00000000, 0x00000000,
+    0x1FFF0000, 0x00000000, 0x00000000, 0x00000000,
     0x3F2FFC84, 0xF3FFFD50, 0x000043E0, 0xFFFFFFFF,
     0x000001FF, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFF7FFF, 0x7FFFFFFF, 0xFFFFFFFF,
@@ -483,7 +483,7 @@
     0x000000E0, 0x1F3E03FE, 0xFFFFFFFE, 0xFFFFFFFF,
     0xF87FFFFF, 0xFFFFFFFE, 0xFFFFFFFF, 0xF7FFFFFF,
     0xFFFFFFE0, 0xFFFE3FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00007FFF, 0x00FFFFFF, 0x00000000, 0xFFFF0000,
+    0x00007FFF, 0x07FFFFFF, 0x00000000, 0xFFFF0000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -500,17 +500,17 @@
     0x00001FFF, 0x00000000, 0xFFFF0000, 0x3FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFF1FFF, 0x00000C00, 0xFFFFFFFF, 0x80007FFC,
+    0xFFFF1FFF, 0x00000C00, 0xFFFFFFFF, 0x80007FFF,
     0x00FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF,
     0xFF800000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000019FF, 0x00000000, 0x00000000, 0xF8000000,
+    0x000379FF, 0x000003FF, 0x00000000, 0xFC000000,
     0xFFFFF7BB, 0x00000007, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFC, 0x000FFFFF, 0x00000000, 0x08FC0000,
     0xFFFFFC00, 0xFFFF003F, 0x0000007F, 0x1FFFFFFF,
     0xFFFFFFF0, 0x0007FFFF, 0x00008000, 0x00000000,
     0xFFFFFFFF, 0x000001FF, 0x00000FF7, 0x047FFFFF,
     0xFFFFFFFF, 0x3E62FFFF, 0x38000005, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000007,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -556,7 +556,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFF8, 0x00FFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFF8, 0x0000FFFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -572,6 +572,14 @@
     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,
+    0x00000003, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF,
     0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF,
     0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF,
@@ -586,8 +594,8 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0x001FFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x001FFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -242,7 +242,7 @@
         4 +   256 * sizeof (short) / sizeof (int) +    16,
         4 +   256 * sizeof (short) / sizeof (int) +    16,
         4 +   256 * sizeof (short) / sizeof (int) +   112,
-       -1,
+        4 +   256 * sizeof (short) / sizeof (int) +   128,
        -1,
        -1,
        -1,
@@ -310,8 +310,8 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0x001FFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x001FFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -289,7 +289,7 @@
     0x00010000, 0xFFFFF000, 0xAAE37FFF, 0x192FAAAA,
     0x00000000, 0xFFFF0000, 0xFFFFFFFF, 0xAAAAAAAA,
     0xAAAAA802, 0xAAAAAAAA, 0xAAAAD554, 0xAAAAAAAA,
-    0xAAAAAAAA, 0x0000002A, 0x00000000, 0xFFFFFFFE,
+    0xAAAAAAAA, 0x000000AA, 0x00000000, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -311,10 +311,10 @@
     0xAAAAAAAA, 0xAAAAAAAA, 0xAAAAAAAA, 0x0000501A,
     0xFFFFFFFF, 0x0000003F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xAAAAAAAA, 0x00002AA8,
+    0x00000000, 0x00000000, 0xAAAAAAAA, 0x00002AAA,
     0x00AAAAAA, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xAAABAAA8, 0xAAAAAAAA, 0x95FFAAAA,
-    0x000010AA, 0x00000000, 0x00000000, 0x00000000,
+    0x000250AA, 0x000002AA, 0x00000000, 0x04000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00F8007F, 0x00000000, 0x00000000, 0x00000000,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -293,7 +293,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00400000, 0x001C0000, 0x00040011, 0x7C00001E,
     0x00007C00, 0x00000000, 0x1FFF0000, 0x0000F862,
-    0x3E2FFC04, 0xF1FBB310, 0x00000BFF, 0x00000000,
+    0x3F2FFC84, 0xF1FBB310, 0x00000BFF, 0x00000000,
     0xFFFF0000, 0xF0C37EFF, 0x2FFFFFFF, 0xFFF00030,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -306,7 +306,7 @@
     0x00000060, 0x00000000, 0x00000005, 0x0000E00F,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0xFFFF17FF, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0xFFFFD7FF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[34 << 4];
+    /*unsigned*/ int level3[35 << 4];
   }
 u_property_numeric =
 {
@@ -158,6 +158,7 @@
         4 +   384 * sizeof (short) / sizeof (int) +   432,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   448,
+        4 +   384 * sizeof (short) / sizeof (int) +   464,
        -1,
        -1,
        -1,
@@ -167,8 +168,7 @@
        -1,
        -1,
        -1,
-       -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   464,
+        4 +   384 * sizeof (short) / sizeof (int) +   480,
        -1,
        -1,
        -1,
@@ -255,9 +255,9 @@
        -1,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   480,
+        4 +   384 * sizeof (short) / sizeof (int) +   496,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   496,
+        4 +   384 * sizeof (short) / sizeof (int) +   512,
        -1,
        -1,
        -1,
@@ -270,7 +270,7 @@
        -1,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   512,
+        4 +   384 * sizeof (short) / sizeof (int) +   528,
        -1,
        -1,
        -1,
@@ -402,7 +402,7 @@
        -1,
        -1,
        -1,
-        4 +   384 * sizeof (short) / sizeof (int) +   528,
+        4 +   384 * sizeof (short) / sizeof (int) +   544,
        -1,
        -1,
        -1
@@ -422,7 +422,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x03F0FFC0,
     0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
     0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
-    0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
+    0x00000000, 0x00000000, 0x00000000, 0x00FCFFC0,
     0x00000000, 0x00000000, 0x00000000, 0x0007FFC0,
     0x00000000, 0x00000000, 0x00000000, 0x7F00FFC0,
     0x00000000, 0x00000000, 0x00000000, 0x0000FFC0,
@@ -524,6 +524,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0xFFFC0000, 0x0000FFFF,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFF3FFFF, 0xFF3FFFFF, 0x00000007,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -287,13 +287,13 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xBFFF0000, 0x000000B6, 0x00000000,
-    0x07FF0000, 0x00000000, 0x7EFFF800, 0x00010000,
+    0x07FF0000, 0x00000000, 0xFEFFF800, 0x00010000,
     0x00000000, 0x00000000, 0x1FC00000, 0x0000219E,
     0x00020000, 0xFFFF0000, 0x00000000, 0x00000000,
     0x00000000, 0x0001FFC0, 0x00000000, 0x00000000,
     0xF8C00000, 0x00001EEF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x0000000F, 0xC0000000, 0x00205FFF, 0x0000000C,
+    0x0000000F, 0xCC000000, 0x00E0DFFF, 0x0000000C,
     0x0000000E, 0xC0000000, 0x0080199F, 0x0000000C,
     0x0000000E, 0xC0000000, 0x00021987, 0x00230000,
     0x0000000E, 0xC0000000, 0x00001BBF, 0x0000000C,
@@ -306,7 +306,7 @@
     0x00000000, 0x07F20000, 0x00002000, 0x00000000,
     0x00000000, 0x1BF20000, 0x00002000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xFFFE0000,
-    0xFEFF0003, 0x1FFFFFFF, 0x00000000, 0x00000000,
+    0xFEFFE003, 0x1FFFFFFF, 0x00000000, 0x00000000,
     0x00000000, 0x797FF800, 0xC3C00000, 0x001E0185,
     0x3000007C, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -326,7 +326,7 @@
     0x0F800000, 0x00000000, 0x7FE00000, 0x001FFFFE,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x0000001F, 0xFFE00000, 0x0000000F, 0x00000000,
-    0x00000007, 0x000003FE, 0x00000000, 0x00000000,
+    0x00000007, 0x000003FE, 0x00000000, 0x0003FF80,
     0x00000000, 0x003FFFF0, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00040000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -342,7 +342,7 @@
     0x00000000, 0x000000F8, 0x00000000, 0x00000000,
     0x00000003, 0xFFF00000, 0x0000000F, 0x00000000,
     0x00000000, 0x000007C0, 0x0007FF80, 0x00000000,
-    0x0000000F, 0xFFF80000, 0x00000000, 0x00000000,
+    0x0000000F, 0xFFF00000, 0x00000000, 0x00000000,
     0x00000000, 0x007FFE00, 0x00003008, 0x00000000,
     0x00000000, 0x419D0000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -355,7 +355,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000007, 0xFF000000, 0x0000003F, 0x00000000,
     0x00000004, 0x01FF0000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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_property_other_id_continue =
 {
@@ -30,7 +30,7 @@
         2 +   128 * sizeof (short) / sizeof (int) +    32,
        -1,
        -1,
-       -1,
+        2 +   128 * sizeof (short) / sizeof (int) +    48,
        -1,
        -1,
        -1,
@@ -159,6 +159,10 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x0003FE00,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x04000000, 0x00000000
   }
 };
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -289,7 +289,7 @@
     0x00000000, 0x00000000, 0x00270000, 0x00330000,
     0x00400000, 0x001C0000, 0x00000001, 0x6000001E,
     0x00006000, 0x00000000, 0x1FFF0000, 0x0000F862,
-    0x3E2FFC04, 0xF1FBB310, 0x000003E0, 0x00000000,
+    0x3E2FFC84, 0xF1FBB310, 0x000003E0, 0x00000000,
     0xF3E00000, 0xF0C33EB6, 0x2FEB3FFF, 0x00000030,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -295,7 +295,7 @@
     0x00000000, 0x00000000, 0x00100000, 0x00000000,
     0x00003FFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x03800000,
-    0x00000000, 0x7FFF0000, 0x00000000, 0x00000000,
+    0x00000000, 0x7FFF0000, 0x40000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00010030,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -306,7 +306,7 @@
     0x00000000, 0x00000000, 0x0C008000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x0007FFF0, 0x3C000000, 0x00000000, 0x00000000,
-    0x00000020, 0x00000000, 0x001F0000, 0x00000000,
+    0x00000020, 0x00000000, 0x061F0000, 0x00000000,
     0x00000000, 0x00000000, 0x0000FC00, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x08000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -326,11 +326,11 @@
     0x000007FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000030, 0x00000000,
-    0x00000000, 0x00000000, 0xC0000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xC0000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00003F7F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFC000000, 0x00000001,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0xF0000000,
     0x00000000, 0xF8000000, 0x00000000, 0xC0000000,
     0x00000000, 0x00000000, 0x00080000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -353,7 +353,7 @@
     0x01FFFFF8, 0x00000000, 0x0F000000, 0x30000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xDE000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00010000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0x00037FFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -403,7 +403,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFE000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00003F80, 0x00000000,
     0x00000000, 0xD8000000, 0x00000003, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[20 << 4];
   }
 u_property_sentence_terminal =
 {
@@ -154,10 +154,10 @@
        -1,
        -1,
        -1,
+        3 +   256 * sizeof (short) / sizeof (int) +   288,
        -1,
        -1,
-       -1,
-        3 +   256 * sizeof (short) / sizeof (int) +   288,
+        3 +   256 * sizeof (short) / sizeof (int) +   304,
        -1,
        -1,
        -1,
@@ -305,14 +305,14 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00004000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00600000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000208, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000030, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000F00, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xCC000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x18000000, 0x00000000, 0xC0000000,
@@ -351,7 +351,11 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x80004002, 0x00000000, 0x00000000, 0x00000002,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00C00000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000180, 0x00000000,
     0x00000000, 0xC0000000, 0x00000003, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -295,7 +295,7 @@
     0x00000000, 0x00000000, 0x00100000, 0x00000000,
     0x000017FF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x03000000,
-    0x00000000, 0x7FFF0000, 0x00000000, 0x00000000,
+    0x00000000, 0x7FFF0000, 0x40000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000030,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -371,7 +371,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFC000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00003F80, 0x00000000,
     0x00000000, 0xC0000000, 0x00000003, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[56 << 4];
+    /*unsigned*/ int level3[60 << 4];
   }
 u_property_unassigned_code_value =
 {
@@ -214,10 +214,8 @@
        16 +   640 * sizeof (short) / sizeof (int) +   576,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / 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) +   720,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
@@ -252,6 +250,8 @@
        16 +   640 * sizeof (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) +   576,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
@@ -266,10 +266,10 @@
        16 +   640 * sizeof (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) +   752,
        16 +   640 * sizeof (short) / sizeof (int) +   768,
+       16 +   640 * sizeof (short) / sizeof (int) +   784,
+       16 +   640 * sizeof (short) / sizeof (int) +   800,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
@@ -282,14 +282,14 @@
        16 +   640 * sizeof (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) +   832,
+       16 +   640 * sizeof (short) / sizeof (int) +   848,
+       16 +   640 * sizeof (short) / sizeof (int) +   864,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   816,
+       16 +   640 * sizeof (short) / sizeof (int) +   880,
        -1,
        -1,
        -1,
@@ -373,7 +373,7 @@
        -1,
        -1,
        -1,
-       16 +   640 * sizeof (short) / sizeof (int) +   832,
+       16 +   640 * sizeof (short) / sizeof (int) +   896,
        -1,
        -1,
        -1,
@@ -381,8 +381,8 @@
        -1,
        -1,
        -1,
-       16 +   640 * sizeof (short) / sizeof (int) +   848,
-       16 +   640 * sizeof (short) / sizeof (int) +   576,
+       16 +   640 * sizeof (short) / sizeof (int) +   912,
+       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,
@@ -415,9 +415,9 @@
        16 +   640 * sizeof (short) / sizeof (int) +   576,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
        -1,
-       16 +   640 * sizeof (short) / sizeof (int) +   864,
+       16 +   640 * sizeof (short) / sizeof (int) +   928,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   816,
+       16 +   640 * sizeof (short) / sizeof (int) +   880,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
@@ -545,8 +545,8 @@
        16 +   640 * sizeof (short) / sizeof (int) +   576,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   816,
        16 +   640 * sizeof (short) / sizeof (int) +   880,
+       16 +   640 * sizeof (short) / sizeof (int) +   944,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
@@ -673,7 +673,7 @@
        16 +   640 * sizeof (short) / sizeof (int) +   576,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
        16 +   640 * sizeof (short) / sizeof (int) +   576,
-       16 +   640 * sizeof (short) / sizeof (int) +   816
+       16 +   640 * sizeof (short) / sizeof (int) +   880
   },
   {
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -682,35 +682,35 @@
     0x0000280F, 0x00000004, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x0001FFC0, 0x01800000, 0x00000001,
+    0x00000000, 0x0001FF00, 0x01800000, 0x00000001,
     0x0001F900, 0x00000000, 0x0000FF00, 0xFFE0F800,
-    0x30000030, 0x00000001, 0x80000000, 0x00000000,
+    0x30000030, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00004000, 0x00000000, 0x00001800, 0x00000000,
     0x00000000, 0xFFFC0000, 0x00000000, 0xF8000000,
-    0x00000000, 0x8000C000, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x8000C000, 0xB0000000, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00000000, 0x0C000000, 0x00C08000, 0x01F80000,
+    0x00000000, 0x00000000, 0x00000000, 0x01000000,
     0x00066011, 0x0C3A0200, 0x4F7F8660, 0xF0000030,
     0x00067811, 0x2C920200, 0xA1FDC678, 0xFFC0003F,
     0x00044011, 0x0C120200, 0xFFFEC440, 0xFFFD0030,
-    0x00066011, 0x0C120200, 0x4F3FC660, 0xFFFC0030,
+    0x00066011, 0x0C120200, 0x4F3FC660, 0xFF000030,
     0x29C23813, 0x3C0038E7, 0xFF7EC238, 0xF800003F,
     0x00022011, 0x1C100200, 0xFC9FC220, 0x00FF0030,
     0x00022013, 0x0C100200, 0xBF9FC220, 0xFFF90030,
-    0x00022013, 0x1C000200, 0xFF7FC220, 0x01C00030,
+    0x00022013, 0x18000000, 0xFF7F8220, 0x01C00030,
     0x03800013, 0xD0040000, 0x00A07B80, 0xFFE3FFFF,
     0x00000001, 0x78000000, 0xF0000000, 0xFFFFFFFF,
     0x010FDA69, 0xC4001351, 0xCC00C0A0, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000100, 0x0001E000,
-    0x0100F000, 0x20000000, 0xFE002000, 0xFFFFFFFF,
+    0x01000000, 0x20000000, 0xF8002000, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x0000FFC0, 0xE0000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xC280C200, 0x00000000,
     0x0000C200, 0x80C20000, 0x008000C2, 0x00000000,
-    0x00C20000, 0x00000000, 0x78000000, 0xE0000000,
+    0x00C20000, 0x00000000, 0x18000000, 0xE0000000,
     0xFC000000, 0x00000000, 0x00000000, 0xFFE00000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xE0000000, 0x00000000, 0x00000000, 0xFFFE0000,
@@ -723,38 +723,38 @@
     0x30000000, 0x00000000, 0x80000000, 0x60000000,
     0xFC00FC00, 0xFFFFC000, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x0000F000, 0xE0000000,
-    0x00000000, 0xFC003800, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0xFC003800, 0x00000000, 0x0FF00000,
     0x00000000, 0x07000000, 0x00001C00, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, 0xFFF80000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x1FFFFF80,
+    0x00000000, 0x00000000, 0x00000000, 0x0FFFFF80,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xC0C00000, 0x00000000, 0x5500C0C0, 0xC0000000,
     0x00000000, 0x00200000, 0x10300020, 0x80230000,
     0x00000000, 0x00000000, 0x00000000, 0x000C03E0,
-    0xFFE08000, 0xFE000000, 0x0000FFFF, 0xFFFE0000,
+    0xE0008000, 0xFC000000, 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, 0xFFFFFE00,
+    0x00000000, 0x00000000, 0x00000000, 0xFFF00000,
     0x00000000, 0xFFFFFF80, 0xFFFFF800, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00004000, 0x000000F4,
-    0x00000C21, 0x00000100, 0x80385000, 0x00000001,
-    0x00E00000, 0x80010000, 0x0000E800, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000001, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00002800, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFC00E000, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00008000, 0x80000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x01FC0000,
-    0x00000000, 0x0000FFC0, 0x00000000, 0xFFFF7FC0,
+    0x00000000, 0x0000FFC0, 0x00000000, 0x7FFE7FC0,
     0xFF800000, 0x80808080, 0x80808080, 0x00000000,
     0x00000000, 0xFFFC0000, 0xFFFFFFFF, 0xFFFFFFFF,
     0x04000000, 0x00000000, 0x00000000, 0xFFF00000,
@@ -763,7 +763,7 @@
     0x00000000, 0x00000000, 0x00000001, 0x00000000,
     0x01800000, 0x00000000, 0x00000000, 0x00000000,
     0x0000001F, 0x0001C000, 0x00000000, 0x00000000,
-    0x00008000, 0xFF000000, 0x00000000, 0x0000FFF0,
+    0x00008000, 0xF8000000, 0x00000000, 0x0000FFF0,
     0x80000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x80000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -780,17 +780,17 @@
     0x0000E000, 0x00000000, 0x0000FF80, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0xFFFFF000, 0x00000000, 0x0FF00003,
+    0x00000000, 0xFFFFF000, 0x00000000, 0x0FF00000,
     0xFF000000, 0x00000000, 0x00000000, 0xFF000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFE000, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF,
+    0xFFFC8000, 0xFFFFFC00, 0xFFFFFFFF, 0x03FFFFFF,
     0x00000000, 0xFC00F000, 0x00000000, 0xFF000000,
     0x00000000, 0x00000000, 0xFC003FE0, 0xF0000000,
     0x00000000, 0x00000000, 0x7FF00000, 0xE0000000,
     0x00000000, 0x00000000, 0x3C004000, 0xFFFFFFFF,
     0x00000000, 0xFF800000, 0x0C00C000, 0xF0000000,
     0x00000000, 0x00000000, 0x07FFFFF8, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFF818181, 0xFFFF8080, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0xFC00C000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -799,7 +799,7 @@
     0x00000000, 0x0000C000, 0x00000000, 0x0000C000,
     0x00000000, 0x00000000, 0xFC000000, 0xFFFFFFFF,
     0x1F07FF80, 0xA0800000, 0x00000024, 0x00000000,
-    0x00000000, 0xFFFC0000, 0x0007FFFF, 0x00000000,
+    0x00000000, 0x00000000, 0x0007FFFC, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x0000FFFF, 0x00000000,
@@ -840,7 +840,7 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0x0003C000, 0xFFFF0000,
     0x00000000, 0x00000000, 0xFFFFFFFC, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -856,6 +856,14 @@
     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,
+    0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0xFFC00000,
     0x00000000, 0x00000180, 0x00000000, 0x00000000,
@@ -873,12 +881,20 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00003000, 0x00000000,
     0x00000000, 0x0000F000, 0x00000000, 0x00000000,
-    0xFFF00000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x0000F800, 0x5FFD8000, 0x7F7F83BB, 0x65FFFFFF,
-    0xFFFEC3FF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x0000FFFE, 0xFFFC0000, 0xFFFFFE00, 0xFFFFFFFF,
+    0xFFF00000, 0x80018000, 0x00010001, 0xFFFFFFFF,
+    0x0000F800, 0x00008000, 0x00000000, 0x0000FC00,
+    0xF8000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F,
+    0x0000FFF8, 0xF8000000, 0xFFFCFE00, 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, 0x0000FFFF, 0xFFFFFF00,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF,
+    0x8AA20001, 0x0010D0C0, 0xFFFF001E, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0xFFFFFFC0, 0xFFFFFFFF,
+    0x00000000, 0x00000000, 0x00000000, 0xFFF00000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -890,8 +906,8 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0xFFE00000, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x00000000, 0xFFE00000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xC0000000, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[2 << 7];
-    /*unsigned*/ int level3[6 << 4];
+    /*unsigned*/ int level3[7 << 4];
   }
 u_property_unified_ideograph =
 {
@@ -242,7 +242,7 @@
         4 +   256 * sizeof (short) / sizeof (int) +     0,
         4 +   256 * sizeof (short) / sizeof (int) +     0,
         4 +   256 * sizeof (short) / sizeof (int) +    80,
-       -1,
+        4 +   256 * sizeof (short) / sizeof (int) +    96,
        -1,
        -1,
        -1,
@@ -302,7 +302,11 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0x001FFFFF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x001FFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000
   }
 };
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
@@ -289,7 +289,7 @@
     0xFFFED740, 0x00000FFB, 0x551C8000, 0xE6905555,
     0xFFFFFFFF, 0x0000FFFF, 0x00000000, 0x55555555,
     0x55555401, 0x55555555, 0x55552AAB, 0x55555555,
-    0x55555555, 0xFFFE0015, 0x007FFFFF, 0x00000000,
+    0x55555555, 0xFFFE0055, 0x007FFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0xFFFFFFFF, 0x0000003F, 0x00000000,
@@ -311,10 +311,10 @@
     0x55555555, 0x55555555, 0x55555555, 0x00002805,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x55555555, 0x00001554,
+    0x00000000, 0x00000000, 0x55555555, 0x00001555,
     0x00555555, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x55545554, 0x55555555, 0x6A005555,
-    0x00000855, 0x00000000, 0x00000000, 0x00000000,
+    0x00012855, 0x00000155, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x07FFFFFE, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[49 << 4];
+    /*unsigned*/ int level3[51 << 4];
   }
 u_property_xid_continue =
 {
@@ -214,6 +214,8 @@
        -1,
        -1,
        -1,
+       16 +   512 * sizeof (short) / sizeof (int) +   304,
+       16 +   512 * sizeof (short) / sizeof (int) +   656,
        -1,
        -1,
        -1,
@@ -248,6 +250,7 @@
        -1,
        -1,
        -1,
+       16 +   512 * sizeof (short) / sizeof (int) +   672,
        -1,
        -1,
        -1,
@@ -263,13 +266,10 @@
        -1,
        -1,
        -1,
-       -1,
-       -1,
-       -1,
-       16 +   512 * sizeof (short) / sizeof (int) +   656,
-       16 +   512 * sizeof (short) / sizeof (int) +   672,
        16 +   512 * sizeof (short) / sizeof (int) +   688,
        16 +   512 * sizeof (short) / sizeof (int) +   704,
+       16 +   512 * sizeof (short) / sizeof (int) +   720,
+       16 +   512 * sizeof (short) / sizeof (int) +   736,
        -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) +   720,
+       16 +   512 * sizeof (short) / sizeof (int) +   752,
        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) +   736,
-       -1,
+       16 +   512 * sizeof (short) / sizeof (int) +   768,
+       16 +   512 * sizeof (short) / sizeof (int) +   784,
        -1,
        -1,
        -1,
@@ -415,10 +415,10 @@
        -1,
        -1,
        16 +   512 * sizeof (short) / sizeof (int) +   304,
-       16 +   512 * sizeof (short) / sizeof (int) +   752,
+       16 +   512 * sizeof (short) / sizeof (int) +   784,
        -1,
        -1,
-       16 +   512 * sizeof (short) / sizeof (int) +   768,
+       16 +   512 * sizeof (short) / sizeof (int) +   800,
        -1,
        -1,
        -1,
@@ -558,35 +558,35 @@
     0xFFFFD7C0, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFBFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFCFB, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE003F, 0x027FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFE00FF, 0x027FFFFF, 0xFFFFFFFE,
     0xFFFE00FF, 0xBFFFFFFF, 0xFFFF00B6, 0x000707FF,
-    0x07FF0000, 0xFFFFFFFE, 0x7FFFFFFF, 0xFFFFC3FF,
+    0x07FF0000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFC3FF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x9FEFFFFF, 0x9FFFFDFF,
     0xFFFF0000, 0xFFFFFFFF, 0xFFFFE7FF, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0003FFFF, 0xFFFFFFFF, 0x043FFFFF,
-    0xFFFFFFFF, 0x00003FFF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x00003FFF, 0x0FFFFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFFF, 0xF3FFFFFF, 0xFF3F7FFF, 0xFE06FFCF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFEFEFFCF,
     0xFFF99FEE, 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, 0x0000FFCF,
-    0xFFFDDFEC, 0xE3FFFDFF, 0x00803DDF, 0xFC00FFCF,
+    0xFFFDDFEC, 0xF3EFFDFF, 0x40603DDF, 0x0006FFCF,
+    0xFFFDDFEC, 0xE7FFFFFF, 0x00807DDF, 0xFC00FFCF,
     0xFC7FFFEC, 0x2FFBFFFF, 0xFF5F847F, 0x000C0000,
     0xFFFFFFFE, 0x07FFFFFF, 0x03FF7FFF, 0x00000000,
     0xFEF02596, 0x3BFFECAE, 0x33FF3F5F, 0x00000000,
     0x03000001, 0xC2A003FF, 0xFFFFFEFF, 0xFFFE1FFF,
-    0xFEFF0FDF, 0x1FFFFFFF, 0x00000040, 0x00000000,
+    0xFEFFFFDF, 0x1FFFFFFF, 0x00000040, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF03FF, 0xFFFFFFFF,
     0x3FFFFFFF, 0xFFFFFFFF, 0xFFFF003F, 0x17FFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x3D7F3DFF, 0xFFFFFFFF,
     0xFFFF3DFF, 0x7F3DFFFF, 0xFF7FFF3D, 0xFFFFFFFF,
-    0xFF3DFFFF, 0xFFFFFFFF, 0x87FFFFFF, 0x0003FE00,
+    0xFF3DFFFF, 0xFFFFFFFF, 0xE7FFFFFF, 0x0003FE00,
     0x0000FFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x001FFFFF,
     0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -603,27 +603,27 @@
     0x0FFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF, 0x9FFFFFFF,
     0x03FF03FF, 0x00000080, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x03FF0FFF, 0x000FF800,
-    0xFFFFFFFF, 0x03FFC7FF, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x03FFC7FF, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFF, 0x00FFFFFF, 0xFFFFE3FF, 0x3FFFFFFF,
     0x00000000, 0x00000000, 0xFFF70000, 0x0007FFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xE000007F,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xF000007F,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF,
     0xFFFFFFFF, 0x5FDFFFFF, 0x0FCF1FDC, 0x1FDC1FFF,
     0x00000000, 0x80000000, 0x00100001, 0x80020000,
-    0x001F0000, 0x00000000, 0x1FFF0000, 0x0001FFE2,
+    0x1FFF0000, 0x00000000, 0x1FFF0000, 0x0001FFE2,
     0x3F2FFC84, 0xF3FFFD50, 0x000043E0, 0xFFFFFFFF,
     0x000001FF, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFF7FFF, 0x7FFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0003F81F,
-    0xFFFFFFFF, 0xFFFF003F, 0xFFFFFFFF, 0x0000803F,
+    0xFFFFFFFF, 0xFFFF003F, 0xFFFFFFFF, 0x8000803F,
     0x007FFFFF, 0x7F7F7F7F, 0x7F7F7F7F, 0xFFFFFFFF,
     0x000000E0, 0x1F3EFFFE, 0xFFFFFFFE, 0xFFFFFFFF,
     0xE67FFFFF, 0xFFFFFFFE, 0xFFFFFFFF, 0xF7FFFFFF,
     0xFFFFFFE0, 0xFFFE3FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00007FFF, 0x00FFFFFF, 0x00000000, 0xFFFF0000,
+    0x00007FFF, 0x07FFFFFF, 0x00000000, 0xFFFF0000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -640,17 +640,17 @@
     0x00001FFF, 0x00000000, 0xFFFF0000, 0x3FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFF1FFF, 0x00000FFF, 0xFFFFFFFF, 0xB000FFFC,
+    0xFFFF1FFF, 0x00000FFF, 0xFFFFFFFF, 0xB000FFFF,
     0x00FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0003FFFF,
     0xFF800000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000019FF, 0x00000000, 0x00000000, 0xF8000000,
+    0x000379FF, 0x000003FF, 0x00000000, 0xFC000000,
     0xFFFFFFFF, 0x000000FF, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x03FF001F, 0x08FFFFFF,
     0xFFFFFFFF, 0xFFFF3FFF, 0x000FFFFF, 0x1FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x03FF8001, 0x00000000,
     0xFFFFFFFF, 0x007FFFFF, 0x03FF3FFF, 0x0C7FFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0x38000007, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x03FF37FF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -696,7 +696,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0xFFFFFFFF, 0x0000007F, 0x0000FFC0,
     0xFFFFFFFF, 0x07FFFFFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -712,6 +712,14 @@
     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,
+    0x00000003, 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, 0xF807E3E0,
@@ -734,8 +742,8 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0x001FFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x001FFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[46 << 4];
+    /*unsigned*/ int level3[48 << 4];
   }
 u_property_xid_start =
 {
@@ -202,6 +202,8 @@
        -1,
        -1,
        -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   304,
+        4 +   384 * sizeof (short) / sizeof (int) +   656,
        -1,
        -1,
        -1,
@@ -236,6 +238,7 @@
        -1,
        -1,
        -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   672,
        -1,
        -1,
        -1,
@@ -253,11 +256,8 @@
        -1,
        -1,
        -1,
-       -1,
-       -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,
        -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) +   688,
+        4 +   384 * sizeof (short) / sizeof (int) +   720,
         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) +   704,
-       -1,
+        4 +   384 * sizeof (short) / sizeof (int) +   736,
+        4 +   384 * sizeof (short) / sizeof (int) +   752,
        -1,
        -1,
        -1,
@@ -403,7 +403,7 @@
        -1,
        -1,
         4 +   384 * sizeof (short) / sizeof (int) +   304,
-        4 +   384 * sizeof (short) / sizeof (int) +   720,
+        4 +   384 * sizeof (short) / sizeof (int) +   752,
        -1,
        -1
   },
@@ -418,28 +418,28 @@
     0xFFFFD740, 0xFFFFFFFB, 0xFFFFFFFF, 0xFFBFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0xFFFE003F, 0x027FFFFF, 0xFFFFFFFE,
+    0xFFFFFFFF, 0xFFFE00FF, 0x027FFFFF, 0xFFFFFFFE,
     0x000000FF, 0x00000000, 0xFFFF0000, 0x000707FF,
-    0x00000000, 0xFFFFFFFE, 0x000007FF, 0xFFFEC000,
+    0x00000000, 0xFFFFFFFF, 0x000007FF, 0xFFFEC000,
     0xFFFFFFFF, 0xFFFFFFFF, 0x002FFFFF, 0x9C00C060,
     0xFFFD0000, 0x0000FFFF, 0xFFFFE000, 0xFFFFFFFF,
     0xFFFFFFFF, 0x0002003F, 0xFFFFFC00, 0x043007FF,
-    0x043FFFFF, 0x00000110, 0x00000000, 0x00000000,
+    0x043FFFFF, 0x00000110, 0x01FFFFFF, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFE060003,
+    0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xFEFE0003,
     0xFFF99FE0, 0x23C5FDFF, 0xB0004000, 0x00030003,
     0xFFF987E0, 0x036DFDFF, 0x5E000000, 0x001C0000,
     0xFFFBBFE0, 0x23EDFDFF, 0x00010000, 0x00000003,
     0xFFF99FE0, 0x23EDFDFF, 0xB0000000, 0x00020003,
     0xD63DC7E8, 0x03FFC718, 0x00010000, 0x00000000,
     0xFFFDDFE0, 0x23EFFDFF, 0x03000000, 0x00000003,
-    0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x00000003,
-    0xFFFDDFE0, 0x23FFFDFF, 0x00000000, 0xFC000003,
+    0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x00060003,
+    0xFFFDDFE0, 0x27FFFFFF, 0x00004000, 0xFC000003,
     0xFC7FFFE0, 0x2FFBFFFF, 0x0000007F, 0x00000000,
     0xFFFFFFFE, 0x0005FFFF, 0x0000007F, 0x00000000,
     0xFEF02596, 0x2005ECAE, 0x3000005F, 0x00000000,
     0x00000001, 0x00000000, 0xFFFFFEFF, 0x00001FFF,
-    0x00000F00, 0x00000000, 0x00000000, 0x00000000,
+    0x00001F00, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0x800007FF, 0x3C3F0000, 0xFFE1C062,
     0x00004003, 0xFFFFFFFF, 0xFFFF003F, 0x17FFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -463,7 +463,7 @@
     0x007FFFFF, 0xFFFFFFFF, 0x001FFFFF, 0x00000000,
     0x00000000, 0x00000080, 0x00000000, 0x00000000,
     0xFFFFFFE0, 0x000FFFFF, 0x00000FE0, 0x00000000,
-    0xFFFFFFF8, 0x0000C001, 0x00000000, 0x00000000,
+    0xFFFFFFF8, 0x0000C001, 0xFFFFFFFF, 0x0000003F,
     0xFFFFFFFF, 0x0000000F, 0xFC00E000, 0x3FFFFFFF,
     0x00000000, 0x00000000, 0x00000000, 0x0003DE00,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -473,7 +473,7 @@
     0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF,
     0xFFFFFFFF, 0x5FDFFFFF, 0x0FCF1FDC, 0x1FDC1FFF,
     0x00000000, 0x00000000, 0x00000000, 0x80020000,
-    0x001F0000, 0x00000000, 0x00000000, 0x00000000,
+    0x1FFF0000, 0x00000000, 0x00000000, 0x00000000,
     0x3F2FFC84, 0xF3FFFD50, 0x000043E0, 0xFFFFFFFF,
     0x000001FF, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFF7FFF, 0x7FFFFFFF, 0xFFFFFFFF,
@@ -483,7 +483,7 @@
     0x000000E0, 0x1F3E03FE, 0xFFFFFFFE, 0xFFFFFFFF,
     0xE07FFFFF, 0xFFFFFFFE, 0xFFFFFFFF, 0xF7FFFFFF,
     0xFFFFFFE0, 0xFFFE3FFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x00007FFF, 0x00FFFFFF, 0x00000000, 0xFFFF0000,
+    0x00007FFF, 0x07FFFFFF, 0x00000000, 0xFFFF0000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -500,17 +500,17 @@
     0x00001FFF, 0x00000000, 0xFFFF0000, 0x3FFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFF1FFF, 0x00000C00, 0xFFFFFFFF, 0x80007FFC,
+    0xFFFF1FFF, 0x00000C00, 0xFFFFFFFF, 0x80007FFF,
     0x00FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF,
     0xFF800000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF,
-    0x000019FF, 0x00000000, 0x00000000, 0xF8000000,
+    0x000379FF, 0x000003FF, 0x00000000, 0xFC000000,
     0xFFFFF7BB, 0x00000007, 0xFFFFFFFF, 0x000FFFFF,
     0xFFFFFFFC, 0x000FFFFF, 0x00000000, 0x08FC0000,
     0xFFFFFC00, 0xFFFF003F, 0x0000007F, 0x1FFFFFFF,
     0xFFFFFFF0, 0x0007FFFF, 0x00008000, 0x00000000,
     0xFFFFFFFF, 0x000001FF, 0x00000FF7, 0x047FFFFF,
     0xFFFFFFFF, 0x3E62FFFF, 0x38000005, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x007E7E7E, 0x00007F7F, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000007,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
@@ -556,7 +556,7 @@
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFF8, 0x00FFFFFF, 0x00000000, 0x00000000,
     0xFFFFFFF8, 0x0000FFFF, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 0x00000000, 0x00000000,
@@ -572,6 +572,14 @@
     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,
+    0x00000003, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0x00000000, 0x00000000, 0x00000000, 0x00000000,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF,
     0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF,
     0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF,
@@ -586,8 +594,8 @@
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
-    0xFFFFFFFF, 0x001FFFFF, 0x00000000, 0x00000000,
-    0x00000000, 0x00000000, 0x00000000, 0x00000000,
+    0xFFFFFFFF, 0x001FFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
+    0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF,
     0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000,
     0x00000000, 0x00000000, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define header_0 16
 #define header_2 9
 #define header_3 127
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 static const uc_interval_t script_common_intervals[] =
 {
   { 0x0000, 1, 0 }, { 0x0040, 0, 1 },
@@ -11,13 +11,13 @@
   { 0x00D7, 1, 1 },
   { 0x00F7, 1, 1 },
   { 0x02B9, 1, 0 }, { 0x02DF, 0, 1 },
-  { 0x02E5, 1, 0 }, { 0x02FF, 0, 1 },
+  { 0x02E5, 1, 0 }, { 0x02E9, 0, 1 },
+  { 0x02EC, 1, 0 }, { 0x02FF, 0, 1 },
   { 0x0374, 1, 1 },
   { 0x037E, 1, 1 },
   { 0x0385, 1, 1 },
   { 0x0387, 1, 1 },
   { 0x0589, 1, 1 },
-  { 0x0600, 1, 0 }, { 0x0603, 0, 1 },
   { 0x060C, 1, 1 },
   { 0x061B, 1, 1 },
   { 0x061F, 1, 1 },
@@ -26,7 +26,6 @@
   { 0x06DD, 1, 1 },
   { 0x0964, 1, 0 }, { 0x0965, 0, 1 },
   { 0x0970, 1, 1 },
-  { 0x0CF1, 1, 0 }, { 0x0CF2, 0, 1 },
   { 0x0E3F, 1, 1 },
   { 0x0FD5, 1, 0 }, { 0x0FD8, 0, 1 },
   { 0x10FB, 1, 1 },
@@ -43,33 +42,20 @@
   { 0x206A, 1, 0 }, { 0x2070, 0, 1 },
   { 0x2074, 1, 0 }, { 0x207E, 0, 1 },
   { 0x2080, 1, 0 }, { 0x208E, 0, 1 },
-  { 0x20A0, 1, 0 }, { 0x20B8, 0, 1 },
+  { 0x20A0, 1, 0 }, { 0x20B9, 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 }, { 0x23E8, 0, 1 },
+  { 0x2190, 1, 0 }, { 0x23F3, 0, 1 },
   { 0x2400, 1, 0 }, { 0x2426, 0, 1 },
   { 0x2440, 1, 0 }, { 0x244A, 0, 1 },
-  { 0x2460, 1, 0 }, { 0x26CD, 0, 1 },
-  { 0x26CF, 1, 0 }, { 0x26E1, 0, 1 },
-  { 0x26E3, 1, 1 },
-  { 0x26E8, 1, 0 }, { 0x26FF, 0, 1 },
-  { 0x2701, 1, 0 }, { 0x2704, 0, 1 },
-  { 0x2706, 1, 0 }, { 0x2709, 0, 1 },
-  { 0x270C, 1, 0 }, { 0x2727, 0, 1 },
-  { 0x2729, 1, 0 }, { 0x274B, 0, 1 },
-  { 0x274D, 1, 1 },
-  { 0x274F, 1, 0 }, { 0x2752, 0, 1 },
-  { 0x2756, 1, 0 }, { 0x275E, 0, 1 },
-  { 0x2761, 1, 0 }, { 0x2794, 0, 1 },
-  { 0x2798, 1, 0 }, { 0x27AF, 0, 1 },
-  { 0x27B1, 1, 0 }, { 0x27BE, 0, 1 },
-  { 0x27C0, 1, 0 }, { 0x27CA, 0, 1 },
+  { 0x2460, 1, 0 }, { 0x26FF, 0, 1 },
+  { 0x2701, 1, 0 }, { 0x27CA, 0, 1 },
   { 0x27CC, 1, 1 },
-  { 0x27D0, 1, 0 }, { 0x27FF, 0, 1 },
+  { 0x27CE, 1, 0 }, { 0x27FF, 0, 1 },
   { 0x2900, 1, 0 }, { 0x2B4C, 0, 1 },
   { 0x2B50, 1, 0 }, { 0x2B59, 0, 1 },
   { 0x2E00, 1, 0 }, { 0x2E31, 0, 1 },
@@ -143,23 +129,47 @@
   { 0x1D7CE, 1, 0 }, { 0x1D7FF, 0, 1 },
   { 0x1F000, 1, 0 }, { 0x1F02B, 0, 1 },
   { 0x1F030, 1, 0 }, { 0x1F093, 0, 1 },
+  { 0x1F0A0, 1, 0 }, { 0x1F0AE, 0, 1 },
+  { 0x1F0B1, 1, 0 }, { 0x1F0BE, 0, 1 },
+  { 0x1F0C1, 1, 0 }, { 0x1F0CF, 0, 1 },
+  { 0x1F0D1, 1, 0 }, { 0x1F0DF, 0, 1 },
   { 0x1F100, 1, 0 }, { 0x1F10A, 0, 1 },
   { 0x1F110, 1, 0 }, { 0x1F12E, 0, 1 },
-  { 0x1F131, 1, 1 },
-  { 0x1F13D, 1, 1 },
-  { 0x1F13F, 1, 1 },
-  { 0x1F142, 1, 1 },
-  { 0x1F146, 1, 1 },
-  { 0x1F14A, 1, 0 }, { 0x1F14E, 0, 1 },
-  { 0x1F157, 1, 1 },
-  { 0x1F15F, 1, 1 },
-  { 0x1F179, 1, 1 },
-  { 0x1F17B, 1, 0 }, { 0x1F17C, 0, 1 },
-  { 0x1F17F, 1, 1 },
-  { 0x1F18A, 1, 0 }, { 0x1F18D, 0, 1 },
-  { 0x1F190, 1, 1 },
-  { 0x1F210, 1, 0 }, { 0x1F231, 0, 1 },
+  { 0x1F130, 1, 0 }, { 0x1F169, 0, 1 },
+  { 0x1F170, 1, 0 }, { 0x1F19A, 0, 1 },
+  { 0x1F1E6, 1, 0 }, { 0x1F1FF, 0, 1 },
+  { 0x1F201, 1, 0 }, { 0x1F202, 0, 1 },
+  { 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 },
+  { 0x1F550, 1, 0 }, { 0x1F567, 0, 1 },
+  { 0x1F5FB, 1, 0 }, { 0x1F5FF, 0, 1 },
+  { 0x1F601, 1, 0 }, { 0x1F610, 0, 1 },
+  { 0x1F612, 1, 0 }, { 0x1F614, 0, 1 },
+  { 0x1F616, 1, 1 },
+  { 0x1F618, 1, 1 },
+  { 0x1F61A, 1, 1 },
+  { 0x1F61C, 1, 0 }, { 0x1F61E, 0, 1 },
+  { 0x1F620, 1, 0 }, { 0x1F625, 0, 1 },
+  { 0x1F628, 1, 0 }, { 0x1F62B, 0, 1 },
+  { 0x1F62D, 1, 1 },
+  { 0x1F630, 1, 0 }, { 0x1F633, 0, 1 },
+  { 0x1F635, 1, 0 }, { 0x1F640, 0, 1 },
+  { 0x1F645, 1, 0 }, { 0x1F64F, 0, 1 },
+  { 0x1F680, 1, 0 }, { 0x1F6C5, 0, 1 },
+  { 0x1F700, 1, 0 }, { 0x1F773, 0, 1 },
   { 0xE0001, 1, 1 },
   { 0xE0020, 1, 0 }, { 0xE007F, 0, 1 }
 };
@@ -181,15 +191,17 @@
   { 0x1E00, 1, 0 }, { 0x1EFF, 0, 1 },
   { 0x2071, 1, 1 },
   { 0x207F, 1, 1 },
-  { 0x2090, 1, 0 }, { 0x2094, 0, 1 },
+  { 0x2090, 1, 0 }, { 0x209C, 0, 1 },
   { 0x212A, 1, 0 }, { 0x212B, 0, 1 },
   { 0x2132, 1, 1 },
   { 0x214E, 1, 1 },
   { 0x2160, 1, 0 }, { 0x2188, 0, 1 },
   { 0x2C60, 1, 0 }, { 0x2C7F, 0, 1 },
   { 0xA722, 1, 0 }, { 0xA787, 0, 1 },
-  { 0xA78B, 1, 0 }, { 0xA78C, 0, 1 },
-  { 0xA7FB, 1, 0 }, { 0xA7FF, 0, 1 },
+  { 0xA78B, 1, 0 }, { 0xA78E, 0, 1 },
+  { 0xA790, 1, 0 }, { 0xA791, 0, 1 },
+  { 0xA7A0, 1, 0 }, { 0xA7A9, 0, 1 },
+  { 0xA7FA, 1, 0 }, { 0xA7FF, 0, 1 },
   { 0xFB00, 1, 0 }, { 0xFB06, 0, 1 },
   { 0xFF21, 1, 0 }, { 0xFF3A, 0, 1 },
   { 0xFF41, 1, 0 }, { 0xFF5A, 0, 1 }
@@ -233,12 +245,11 @@
 static const uc_interval_t script_cyrillic_intervals[] =
 {
   { 0x0400, 1, 0 }, { 0x0484, 0, 1 },
-  { 0x0487, 1, 0 }, { 0x0525, 0, 1 },
+  { 0x0487, 1, 0 }, { 0x0527, 0, 1 },
   { 0x1D2B, 1, 1 },
   { 0x1D78, 1, 1 },
   { 0x2DE0, 1, 0 }, { 0x2DFF, 0, 1 },
-  { 0xA640, 1, 0 }, { 0xA65F, 0, 1 },
-  { 0xA662, 1, 0 }, { 0xA673, 0, 1 },
+  { 0xA640, 1, 0 }, { 0xA673, 0, 1 },
   { 0xA67C, 1, 0 }, { 0xA697, 0, 1 }
 };
 static const uc_interval_t script_armenian_intervals[] =
@@ -263,17 +274,18 @@
 };
 static const uc_interval_t script_arabic_intervals[] =
 {
+  { 0x0600, 1, 0 }, { 0x0603, 0, 1 },
   { 0x0606, 1, 0 }, { 0x060B, 0, 1 },
   { 0x060D, 1, 0 }, { 0x061A, 0, 1 },
   { 0x061E, 1, 1 },
-  { 0x0621, 1, 0 }, { 0x063F, 0, 1 },
+  { 0x0620, 1, 0 }, { 0x063F, 0, 1 },
   { 0x0641, 1, 0 }, { 0x064A, 0, 1 },
   { 0x0656, 1, 0 }, { 0x065E, 0, 1 },
   { 0x066A, 1, 0 }, { 0x066F, 0, 1 },
   { 0x0671, 1, 0 }, { 0x06DC, 0, 1 },
   { 0x06DE, 1, 0 }, { 0x06FF, 0, 1 },
   { 0x0750, 1, 0 }, { 0x077F, 0, 1 },
-  { 0xFB50, 1, 0 }, { 0xFBB1, 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 },
@@ -294,13 +306,10 @@
 };
 static const uc_interval_t script_devanagari_intervals[] =
 {
-  { 0x0900, 1, 0 }, { 0x0939, 0, 1 },
-  { 0x093C, 1, 0 }, { 0x094E, 0, 1 },
-  { 0x0950, 1, 1 },
-  { 0x0953, 1, 0 }, { 0x0955, 0, 1 },
-  { 0x0958, 1, 0 }, { 0x0963, 0, 1 },
+  { 0x0900, 1, 0 }, { 0x0950, 0, 1 },
+  { 0x0953, 1, 0 }, { 0x0963, 0, 1 },
   { 0x0966, 1, 0 }, { 0x096F, 0, 1 },
-  { 0x0971, 1, 0 }, { 0x0972, 0, 1 },
+  { 0x0971, 1, 0 }, { 0x0977, 0, 1 },
   { 0x0979, 1, 0 }, { 0x097F, 0, 1 },
   { 0xA8E0, 1, 0 }, { 0xA8FB, 0, 1 }
 };
@@ -372,7 +381,7 @@
   { 0x0B56, 1, 0 }, { 0x0B57, 0, 1 },
   { 0x0B5C, 1, 0 }, { 0x0B5D, 0, 1 },
   { 0x0B5F, 1, 0 }, { 0x0B63, 0, 1 },
-  { 0x0B66, 1, 0 }, { 0x0B71, 0, 1 }
+  { 0x0B66, 1, 0 }, { 0x0B77, 0, 1 }
 };
 static const uc_interval_t script_tamil_intervals[] =
 {
@@ -424,18 +433,18 @@
   { 0x0CD5, 1, 0 }, { 0x0CD6, 0, 1 },
   { 0x0CDE, 1, 1 },
   { 0x0CE0, 1, 0 }, { 0x0CE3, 0, 1 },
-  { 0x0CE6, 1, 0 }, { 0x0CEF, 0, 1 }
+  { 0x0CE6, 1, 0 }, { 0x0CEF, 0, 1 },
+  { 0x0CF1, 1, 0 }, { 0x0CF2, 0, 1 }
 };
 static const uc_interval_t script_malayalam_intervals[] =
 {
   { 0x0D02, 1, 0 }, { 0x0D03, 0, 1 },
   { 0x0D05, 1, 0 }, { 0x0D0C, 0, 1 },
   { 0x0D0E, 1, 0 }, { 0x0D10, 0, 1 },
-  { 0x0D12, 1, 0 }, { 0x0D28, 0, 1 },
-  { 0x0D2A, 1, 0 }, { 0x0D39, 0, 1 },
+  { 0x0D12, 1, 0 }, { 0x0D3A, 0, 1 },
   { 0x0D3D, 1, 0 }, { 0x0D44, 0, 1 },
   { 0x0D46, 1, 0 }, { 0x0D48, 0, 1 },
-  { 0x0D4A, 1, 0 }, { 0x0D4D, 0, 1 },
+  { 0x0D4A, 1, 0 }, { 0x0D4E, 0, 1 },
   { 0x0D57, 1, 1 },
   { 0x0D60, 1, 0 }, { 0x0D63, 0, 1 },
   { 0x0D66, 1, 0 }, { 0x0D75, 0, 1 },
@@ -485,11 +494,11 @@
 {
   { 0x0F00, 1, 0 }, { 0x0F47, 0, 1 },
   { 0x0F49, 1, 0 }, { 0x0F6C, 0, 1 },
-  { 0x0F71, 1, 0 }, { 0x0F8B, 0, 1 },
-  { 0x0F90, 1, 0 }, { 0x0F97, 0, 1 },
+  { 0x0F71, 1, 0 }, { 0x0F97, 0, 1 },
   { 0x0F99, 1, 0 }, { 0x0FBC, 0, 1 },
   { 0x0FBE, 1, 0 }, { 0x0FCC, 0, 1 },
-  { 0x0FCE, 1, 0 }, { 0x0FD4, 0, 1 }
+  { 0x0FCE, 1, 0 }, { 0x0FD4, 0, 1 },
+  { 0x0FD9, 1, 0 }, { 0x0FDA, 0, 1 }
 };
 static const uc_interval_t script_myanmar_intervals[] =
 {
@@ -506,6 +515,7 @@
 static const uc_interval_t script_hangul_intervals[] =
 {
   { 0x1100, 1, 0 }, { 0x11FF, 0, 1 },
+  { 0x302E, 1, 0 }, { 0x302F, 0, 1 },
   { 0x3131, 1, 0 }, { 0x318E, 0, 1 },
   { 0x3200, 1, 0 }, { 0x321E, 0, 1 },
   { 0x3260, 1, 0 }, { 0x327E, 0, 1 },
@@ -537,7 +547,7 @@
   { 0x12D8, 1, 0 }, { 0x1310, 0, 1 },
   { 0x1312, 1, 0 }, { 0x1315, 0, 1 },
   { 0x1318, 1, 0 }, { 0x135A, 0, 1 },
-  { 0x135F, 1, 0 }, { 0x137C, 0, 1 },
+  { 0x135D, 1, 0 }, { 0x137C, 0, 1 },
   { 0x1380, 1, 0 }, { 0x1399, 0, 1 },
   { 0x2D80, 1, 0 }, { 0x2D96, 0, 1 },
   { 0x2DA0, 1, 0 }, { 0x2DA6, 0, 1 },
@@ -547,7 +557,12 @@
   { 0x2DC0, 1, 0 }, { 0x2DC6, 0, 1 },
   { 0x2DC8, 1, 0 }, { 0x2DCE, 0, 1 },
   { 0x2DD0, 1, 0 }, { 0x2DD6, 0, 1 },
-  { 0x2DD8, 1, 0 }, { 0x2DDE, 0, 1 }
+  { 0x2DD8, 1, 0 }, { 0x2DDE, 0, 1 },
+  { 0xAB01, 1, 0 }, { 0xAB06, 0, 1 },
+  { 0xAB09, 1, 0 }, { 0xAB0E, 0, 1 },
+  { 0xAB11, 1, 0 }, { 0xAB16, 0, 1 },
+  { 0xAB20, 1, 0 }, { 0xAB26, 0, 1 },
+  { 0xAB28, 1, 0 }, { 0xAB2E, 0, 1 }
 };
 static const uc_interval_t script_cherokee_intervals[] =
 {
@@ -587,6 +602,7 @@
 {
   { 0x3041, 1, 0 }, { 0x3096, 0, 1 },
   { 0x309D, 1, 0 }, { 0x309F, 0, 1 },
+  { 0x1B001, 1, 1 },
   { 0x1F200, 1, 1 }
 };
 static const uc_interval_t script_katakana_intervals[] =
@@ -597,12 +613,14 @@
   { 0x32D0, 1, 0 }, { 0x32FE, 0, 1 },
   { 0x3300, 1, 0 }, { 0x3357, 0, 1 },
   { 0xFF66, 1, 0 }, { 0xFF6F, 0, 1 },
-  { 0xFF71, 1, 0 }, { 0xFF9D, 0, 1 }
+  { 0xFF71, 1, 0 }, { 0xFF9D, 0, 1 },
+  { 0x1B000, 1, 1 }
 };
 static const uc_interval_t script_bopomofo_intervals[] =
 {
+  { 0x02EA, 1, 0 }, { 0x02EB, 0, 1 },
   { 0x3105, 1, 0 }, { 0x312D, 0, 1 },
-  { 0x31A0, 1, 0 }, { 0x31B7, 0, 1 }
+  { 0x31A0, 1, 0 }, { 0x31BA, 0, 1 }
 };
 static const uc_interval_t script_han_intervals[] =
 {
@@ -620,6 +638,7 @@
   { 0xFA70, 1, 0 }, { 0xFAD9, 0, 1 },
   { 0x20000, 1, 0 }, { 0x2A6D6, 0, 1 },
   { 0x2A700, 1, 0 }, { 0x2B734, 0, 1 },
+  { 0x2B740, 1, 0 }, { 0x2B81D, 0, 1 },
   { 0x2F800, 1, 0 }, { 0x2FA1D, 0, 1 }
 };
 static const uc_interval_t script_yi_intervals[] =
@@ -645,6 +664,7 @@
   { 0x0300, 1, 0 }, { 0x036F, 0, 1 },
   { 0x0485, 1, 0 }, { 0x0486, 0, 1 },
   { 0x064B, 1, 0 }, { 0x0655, 0, 1 },
+  { 0x065F, 1, 1 },
   { 0x0670, 1, 1 },
   { 0x0951, 1, 0 }, { 0x0952, 0, 1 },
   { 0x1CD0, 1, 0 }, { 0x1CD2, 0, 1 },
@@ -652,10 +672,10 @@
   { 0x1CE2, 1, 0 }, { 0x1CE8, 0, 1 },
   { 0x1CED, 1, 1 },
   { 0x1DC0, 1, 0 }, { 0x1DE6, 0, 1 },
-  { 0x1DFD, 1, 0 }, { 0x1DFF, 0, 1 },
+  { 0x1DFC, 1, 0 }, { 0x1DFF, 0, 1 },
   { 0x200C, 1, 0 }, { 0x200D, 0, 1 },
   { 0x20D0, 1, 0 }, { 0x20F0, 0, 1 },
-  { 0x302A, 1, 0 }, { 0x302F, 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 },
@@ -761,7 +781,8 @@
 static const uc_interval_t script_tifinagh_intervals[] =
 {
   { 0x2D30, 1, 0 }, { 0x2D65, 0, 1 },
-  { 0x2D6F, 1, 1 }
+  { 0x2D6F, 1, 0 }, { 0x2D70, 0, 1 },
+  { 0x2D7F, 1, 1 }
 };
 static const uc_interval_t script_syloti_nagri_intervals[] =
 {
@@ -893,7 +914,8 @@
 };
 static const uc_interval_t script_bamum_intervals[] =
 {
-  { 0xA6A0, 1, 0 }, { 0xA6F7, 0, 1 }
+  { 0xA6A0, 1, 0 }, { 0xA6F7, 0, 1 },
+  { 0x16800, 1, 0 }, { 0x16A38, 0, 1 }
 };
 static const uc_interval_t script_javanese_intervals[] =
 {
@@ -933,7 +955,22 @@
 {
   { 0x11080, 1, 0 }, { 0x110C1, 0, 1 }
 };
-static const uc_script_t scripts[92] =
+static const uc_interval_t script_batak_intervals[] =
+{
+  { 0x1BC0, 1, 0 }, { 0x1BF3, 0, 1 },
+  { 0x1BFC, 1, 0 }, { 0x1BFF, 0, 1 }
+};
+static const uc_interval_t script_brahmi_intervals[] =
+{
+  { 0x11000, 1, 0 }, { 0x1104D, 0, 1 },
+  { 0x11052, 1, 0 }, { 0x1106F, 0, 1 }
+};
+static const uc_interval_t script_mandaic_intervals[] =
+{
+  { 0x0840, 1, 0 }, { 0x085B, 0, 1 },
+  { 0x085E, 1, 1 }
+};
+static const uc_script_t scripts[95] =
 {
   {
     sizeof (script_common_intervals) / sizeof (uc_interval_t),
@@ -1394,6 +1431,21 @@
     sizeof (script_kaithi_intervals) / sizeof (uc_interval_t),
     script_kaithi_intervals,
     "Kaithi"
+  },
+  {
+    sizeof (script_batak_intervals) / sizeof (uc_interval_t),
+    script_batak_intervals,
+    "Batak"
+  },
+  {
+    sizeof (script_brahmi_intervals) / sizeof (uc_interval_t),
+    script_brahmi_intervals,
+    "Brahmi"
+  },
+  {
+    sizeof (script_mandaic_intervals) / sizeof (uc_interval_t),
+    script_mandaic_intervals,
+    "Mandaic"
   }
 };
 #define script_header_0 16
@@ -1406,7 +1458,7 @@
   {
     int level1[15];
     short level2[4 << 9];
-    unsigned char level3[151 << 7];
+    unsigned char level3[163 << 7];
   }
 u_script =
 {
@@ -1424,40 +1476,40 @@
      5120,  5248,  5376,  5504,  5632,  5760,  5888,  6016,
      6144,  6272,  6400,  6528,   256,   256,  6656,  6784,
      6912,  7040,  7168,  7296,  7424,  7424,  7424,  7552,
-     7680,  7424,  7424,  7424,  7424,  7808,  7936,  8064,
-     8192,  8192,  7424,  7424,  7424,  7424,  8320,    -1,
-     8448,  8576,  8704,  8832,  8960,  9088,  9216,  9344,
-     9472,  9600,  9728,  9856,  9984, 10112, 10240,  7424,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216, 10368,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216, 10496,
-    10624, 10624, 10624, 10624, 10624, 10624, 10624, 10624,
-    10624, 10752, 10880, 10880, 11008, 11136, 11264, 11392,
-    11520, 11648, 11776, 11904, 12032, 12160,    -1, 12288,
+     7680,  7424,  7424,  7424,  7424,  7424,  7808,  7936,
+     8064,  8064,  7424,  7424,  7424,  7424,  8192,    -1,
+     8320,  8448,  8576,  8704,  8832,  8960,  9088,  9216,
+     9344,  9472,  9600,  9728,  9856,  9984, 10112,  7424,
+     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,
+     9088,  9088,  9088,  9088,  9088,  9088,  9088,  9088,
+     9088,  9088,  9088,  9088,  9088,  9088,  9088,  9088,
+     9088,  9088,  9088, 10240,  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,  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,  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,  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,  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,  9088,  9088,  9088, 10368,
+    10496, 10496, 10496, 10496, 10496, 10496, 10496, 10496,
+    10496, 10624, 10752, 10752, 10880, 11008, 11136, 11264,
+    11392, 11520, 11648, 11776, 11904, 12032, 12160, 12288,
      3968,  3968,  3968,  3968,  3968,  3968,  3968,  3968,
      3968,  3968,  3968,  3968,  3968,  3968,  3968,  3968,
      3968,  3968,  3968,  3968,  3968,  3968,  3968,  3968,
@@ -1477,22 +1529,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,  9216,  9216, 12544, 12672, 12800, 12928,
+       -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,    -1, 15360,    -1, 15488,    -1,
     15616,    -1,    -1,    -1, 15744,    -1,    -1,    -1,
-       -1, 15872,    -1,    -1,    -1,    -1,    -1,    -1,
+    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,
-    16000, 16000, 16000, 16000, 16000, 16000, 16128,    -1,
-    16256,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    16128, 16128, 16128, 16128, 16128, 16128, 16256,    -1,
+    16384,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    16384, 16384, 16384, 16384, 16384, 16384, 16384, 16384,
-    16512,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    16512, 16512, 16512, 16512, 16512, 16512, 16512, 16512,
+    16640,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -1505,15 +1557,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,
+    16768, 16768, 16768, 16768, 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,
@@ -1531,64 +1575,73 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     7424, 16640, 16768, 16896, 17024,    -1, 17152,    -1,
-    17280, 17408, 17536,  7424,  7424, 17664,  7424, 17792,
+    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,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+     7424, 17152, 17280, 17408, 17536,    -1, 17664,    -1,
+    17792, 17920, 18048,  7424,  7424, 18176,  7424, 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,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    17920, 18048, 18176, 18304, 18432,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    18432, 18560, 18688, 18816, 18944,    -1, 19072, 19200,
+    19328, 19456, 19584, 19712, 19840, 19968,  7552,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216, 18560,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216,  9216,  9216,
-     9216,  9216,  9216,  9216,  9216,  9216, 18688,    -1,
+     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,
+     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,
+     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,
+     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,
+     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,
+     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,
+     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,
+     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,
+     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,
+     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,
+     9088,  9088,  9088,  9088,  9088,  9088,  9088,  9088,
+     9088,  9088,  9088,  9088,  9088, 20096,  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, 20224,  9088,
+    20352,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -1604,10 +1657,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, 20352,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     9216,  9216,  9216,  9216, 18816,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    18944,    -1, 19072, 19200,    -1,    -1,    -1,    -1,
+    20480,    -1, 20608, 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,
@@ -1734,7 +1786,7 @@
       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,  34,  34,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
      40,  40,  40,  40,  40,  40,  40,  40,
@@ -1805,7 +1857,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,
-      3,   3,   3,   3,   3,   3, 255, 255,
+      3,   3,   3,   3,   3,   3,   3,   3,
     255, 255, 255, 255, 255, 255, 255, 255,
     255,   4,   4,   4,   4,   4,   4,   4,
       4,   4,   4,   4,   4,   4,   4,   4,
@@ -1833,18 +1885,18 @@
       5,   5,   5, 255, 255, 255, 255, 255,
       5,   5,   5,   5,   5, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
-      0,   0,   0,   0, 255, 255,   6,   6,
+      6,   6,   6,   6, 255, 255,   6,   6,
       6,   6,   6,   6,   0,   6,   6,   6,
       6,   6,   6,   6,   6,   6,   6,   6,
       6,   6,   6,   0, 255, 255,   6,   0,
-    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,   6,   6,   6,   6,
       6,   6,   6,   6,   6,   6,   6,   6,
       0,   6,   6,   6,   6,   6,   6,   6,
       6,   6,   6,  40,  40,  40,  40,  40,
      40,  40,  40,  40,  40,  40,   6,   6,
-      6,   6,   6,   6,   6,   6,   6, 255,
+      6,   6,   6,   6,   6,   6,   6,  40,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   6,   6,   6,   6,   6,   6,
      40,   6,   6,   6,   6,   6,   6,   6,
@@ -1905,10 +1957,10 @@
      81,  81,  81,  81,  81,  81, 255, 255,
      81,  81,  81,  81,  81,  81,  81,  81,
      81,  81,  81,  81,  81,  81,  81, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
+     94,  94,  94,  94,  94,  94,  94,  94,
+     94,  94,  94,  94,  94,  94,  94,  94,
+     94,  94,  94,  94,  94,  94,  94,  94,
+     94,  94,  94,  94, 255, 255,  94, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
@@ -1920,14 +1972,14 @@
       9,   9,   9,   9,   9,   9,   9,   9,
       9,   9,   9,   9,   9,   9,   9,   9,
       9,   9,   9,   9,   9,   9,   9,   9,
-      9,   9, 255, 255,   9,   9,   9,   9,
+      9,   9,   9,   9,   9,   9,   9,   9,
       9,   9,   9,   9,   9,   9,   9,   9,
-      9,   9,   9,   9,   9,   9,   9, 255,
-      9,  40,  40,   9,   9,   9, 255, 255,
+      9,   9,   9,   9,   9,   9,   9,   9,
+      9,  40,  40,   9,   9,   9,   9,   9,
       9,   9,   9,   9,   9,   9,   9,   9,
       9,   9,   9,   9,   0,   0,   9,   9,
       9,   9,   9,   9,   9,   9,   9,   9,
-      0,   9,   9, 255, 255, 255, 255, 255,
+      0,   9,   9,   9,   9,   9,   9,   9,
     255,   9,   9,   9,   9,   9,   9,   9,
     255,  10,  10,  10, 255,  10,  10,  10,
      10,  10,  10,  10,  10, 255, 255,  10,
@@ -1991,7 +2043,7 @@
     255, 255, 255, 255,  13,  13, 255,  13,
      13,  13,  13,  13, 255, 255,  13,  13,
      13,  13,  13,  13,  13,  13,  13,  13,
-     13,  13, 255, 255, 255, 255, 255, 255,
+     13,  13,  13,  13,  13,  13,  13,  13,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255,  14,  14, 255,  14,  14,  14,
      14,  14,  14, 255, 255, 255,  14,  14,
@@ -2039,18 +2091,18 @@
     255, 255, 255, 255, 255, 255,  16, 255,
      16,  16,  16,  16, 255, 255,  16,  16,
      16,  16,  16,  16,  16,  16,  16,  16,
-    255,   0,   0, 255, 255, 255, 255, 255,
+    255,  16,  16, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255,  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,
      17,  17,  17,  17,  17,  17,  17,  17,
-     17, 255,  17,  17,  17,  17,  17,  17,
+     17,  17,  17,  17,  17,  17,  17,  17,
      17,  17,  17,  17,  17,  17,  17,  17,
-     17,  17, 255, 255, 255,  17,  17,  17,
+     17,  17,  17, 255, 255,  17,  17,  17,
      17,  17,  17,  17,  17, 255,  17,  17,
-     17, 255,  17,  17,  17,  17, 255, 255,
+     17, 255,  17,  17,  17,  17,  17, 255,
     255, 255, 255, 255, 255, 255, 255,  17,
     255, 255, 255, 255, 255, 255, 255, 255,
      17,  17,  17,  17, 255, 255,  17,  17,
@@ -2122,7 +2174,7 @@
     255,  21,  21,  21,  21,  21,  21,  21,
      21,  21,  21,  21,  21,  21,  21,  21,
      21,  21,  21,  21,  21,  21,  21,  21,
-     21,  21,  21,  21, 255, 255, 255, 255,
+     21,  21,  21,  21,  21,  21,  21,  21,
      21,  21,  21,  21,  21,  21,  21,  21,
     255,  21,  21,  21,  21,  21,  21,  21,
      21,  21,  21,  21,  21,  21,  21,  21,
@@ -2132,7 +2184,7 @@
      21,  21,  21,  21,  21,  21,  21,  21,
      21,  21,  21,  21,  21, 255,  21,  21,
      21,  21,  21,  21,  21,   0,   0,   0,
-      0, 255, 255, 255, 255, 255, 255, 255,
+      0,  21,  21, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
@@ -2228,7 +2280,7 @@
      25,  25,  25,  25,  25,  25,  25,  25,
      25,  25,  25,  25,  25,  25,  25,  25,
      25,  25,  25,  25,  25,  25,  25,  25,
-     25,  25,  25, 255, 255, 255, 255,  25,
+     25,  25,  25, 255, 255,  25,  25,  25,
      25,  25,  25,  25,  25,  25,  25,  25,
      25,  25,  25,  25,  25,  25,  25,  25,
      25,  25,  25,  25,  25,  25,  25,  25,
@@ -2433,14 +2485,14 @@
      66,  66,  66, 255, 255, 255,  66,  66,
      66,  66,  66,  66,  66,  66,  66,  66,
      66,  66, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
+     92,  92,  92,  92,  92,  92,  92,  92,
+     92,  92,  92,  92,  92,  92,  92,  92,
+     92,  92,  92,  92,  92,  92,  92,  92,
+     92,  92,  92,  92,  92,  92,  92,  92,
+     92,  92,  92,  92,  92,  92,  92,  92,
+     92,  92,  92,  92,  92,  92,  92,  92,
+     92,  92,  92,  92, 255, 255, 255, 255,
+    255, 255, 255, 255,  92,  92,  92,  92,
      67,  67,  67,  67,  67,  67,  67,  67,
      67,  67,  67,  67,  67,  67,  67,  67,
      67,  67,  67,  67,  67,  67,  67,  67,
@@ -2504,7 +2556,7 @@
      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,  40,  40,  40,
+    255, 255, 255, 255,  40,  40,  40,  40,
       2,   2,   2,   2,   2,   2,   2,   2,
       2,   2,   2,   2,   2,   2,   2,   2,
       2,   2,   2,   2,   2,   2, 255, 255,
@@ -2555,12 +2607,12 @@
       0,   0,   0,   0,   0,   0,   0,   1,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0, 255,
+      1,   1,   1,   1,   1,   1,   1,   1,
       1,   1,   1,   1,   1, 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, 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, 255, 255, 255, 255, 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,
@@ -2630,8 +2682,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, 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,
@@ -2649,48 +2701,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,
-      0,   0,   0,   0,   0,   0,   0,   0,
-      0,   0,   0,   0,   0,   0,   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, 255,   0, 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,   0,   0,   0,   0, 255,   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,
     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, 255,   0, 255,   0,
-      0,   0,   0, 255, 255, 255,   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, 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,   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, 255,   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,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   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,
@@ -2775,8 +2811,8 @@
      57,  57,  57,  57,  57,  57,  57,  57,
      57,  57,  57,  57,  57,  57, 255, 255,
     255, 255, 255, 255, 255, 255, 255,  57,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
+     57, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255,  57,
      25,  25,  25,  25,  25,  25,  25,  25,
      25,  25,  25,  25,  25,  25,  25,  25,
      25,  25,  25,  25,  25,  25,  25, 255,
@@ -2862,7 +2898,7 @@
       0,   0,   0,   0,   0,   0,   0,   0,
       0,   0,   0,   0,   0,   0,   0,   0,
       0,  35,  35,  35,  35,  35,  35,  35,
-     35,  35,  40,  40,  40,  40,  40,  40,
+     35,  35,  40,  40,  40,  40,  24,  24,
       0,   0,   0,   0,   0,   0,   0,   0,
      35,  35,  35,  35,   0,   0,   0,   0,
     255,  32,  32,  32,  32,  32,  32,  32,
@@ -2912,7 +2948,7 @@
      34,  34,  34,  34,  34,  34,  34,  34,
      34,  34,  34,  34,  34,  34,  34,  34,
      34,  34,  34,  34,  34,  34,  34,  34,
-    255, 255, 255, 255, 255, 255, 255, 255,
+     34,  34,  34, 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,
@@ -3061,7 +3097,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,   3,   3,   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,
@@ -3098,21 +3134,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,
-      0,   0,   0,   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, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 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,
+      0,   0,   0,   1,   1,   1,   1, 255,
+      1,   1, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+      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, 255,
+    255, 255,   1,   1,   1,   1,   1,   1,
      58,  58,  58,  58,  58,  58,  58,  58,
      58,  58,  58,  58,  58,  58,  58,  58,
      58,  58,  58,  58,  58,  58,  58,  58,
@@ -3209,6 +3245,22 @@
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
+    255,  25,  25,  25,  25,  25,  25, 255,
+    255,  25,  25,  25,  25,  25,  25, 255,
+    255,  25,  25,  25,  25,  25,  25, 255,
+    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,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
@@ -3295,10 +3347,10 @@
       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,   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, 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,
@@ -3657,6 +3709,22 @@
       6,   6,   6,   6,   6,   6,   6,   6,
       6,   6,   6,   6,   6,   6,   6,   6,
       6,   6,   6,   6,   6,   6,   6, 255,
+     93,  93,  93,  93,  93,  93,  93,  93,
+     93,  93,  93,  93,  93,  93,  93,  93,
+     93,  93,  93,  93,  93,  93,  93,  93,
+     93,  93,  93,  93,  93,  93,  93,  93,
+     93,  93,  93,  93,  93,  93,  93,  93,
+     93,  93,  93,  93,  93,  93,  93,  93,
+     93,  93,  93,  93,  93,  93,  93,  93,
+     93,  93,  93,  93,  93,  93,  93,  93,
+     93,  93,  93,  93,  93,  93,  93,  93,
+     93,  93,  93,  93,  93,  93, 255, 255,
+    255, 255,  93,  93,  93,  93,  93,  93,
+     93,  93,  93,  93,  93,  93,  93,  93,
+     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,
      91,  91,  91,  91,  91,  91,  91,  91,
      91,  91,  91,  91,  91,  91,  91,  91,
      91,  91,  91,  91,  91,  91,  91,  91,
@@ -3753,6 +3821,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,
+     83,  83,  83,  83,  83,  83,  83,  83,
+     83,  83,  83,  83,  83,  83,  83,  83,
+     83,  83,  83,  83,  83,  83,  83,  83,
+     83,  83,  83,  83,  83,  83,  83,  83,
+     83,  83,  83,  83,  83,  83,  83,  83,
+     83,  83,  83,  83,  83,  83,  83,  83,
+     83,  83,  83,  83,  83,  83,  83,  83,
+     83,  83,  83,  83,  83,  83,  83,  83,
+     83,  83,  83,  83,  83,  83,  83,  83,
+     83,  83,  83,  83,  83,  83,  83,  83,
+     83,  83,  83,  83,  83,  83,  83,  83,
+     83,  83,  83,  83,  83,  83,  83,  83,
+     83,  83,  83,  83,  83,  83,  83,  83,
+     83,  83,  83,  83,  83,  83,  83,  83,
+     83,  83,  83,  83,  83,  83,  83,  83,
+     83,  83,  83,  83,  83,  83,  83,  83,
+     83,  83,  83,  83,  83,  83,  83,  83,
+     83,  83,  83,  83,  83,  83,  83,  83,
+     83,  83,  83,  83,  83,  83,  83,  83,
+     83,  83,  83,  83,  83,  83,  83,  83,
+     83,  83,  83,  83,  83,  83,  83,  83,
+     83,  83,  83,  83,  83,  83,  83,  83,
+     83,  83,  83,  83,  83,  83,  83,  83,
+     83, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+     33,  32, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    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,
@@ -3933,14 +4049,14 @@
       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,
+      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,
+    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,
@@ -3951,43 +4067,171 @@
       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, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255,   0, 255,   0,
-    255, 255,   0, 255, 255, 255,   0, 255,
-    255, 255,   0,   0,   0,   0,   0, 255,
-    255, 255, 255, 255, 255, 255, 255,   0,
-    255, 255, 255, 255, 255, 255, 255,   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,   0, 255,   0,   0, 255, 255,   0,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255,   0,   0,   0,   0, 255, 255,
-      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,
-     32, 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, 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, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 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,
+     32,   0,   0, 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, 255, 255, 255, 255, 255,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0, 255, 255, 255, 255, 255, 255, 255,
+      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,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   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,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   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, 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, 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,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 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,
+    255,   0,   0,   0,   0,   0,   0,   0,
+      0,   0,   0,   0,   0,   0,   0,   0,
+      0, 255,   0,   0,   0, 255,   0, 255,
+      0, 255,   0, 255,   0,   0,   0, 255,
+      0,   0,   0,   0,   0,   0, 255, 255,
+      0,   0,   0,   0, 255,   0, 255, 255,
+      0,   0,   0,   0, 255,   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,
@@ -4017,14 +4261,14 @@
      35,  35,  35,  35,  35,  35,  35,  35,
      35,  35,  35,  35,  35, 255, 255, 255,
     255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
-    255, 255, 255, 255, 255, 255, 255, 255,
+     35,  35,  35,  35,  35,  35,  35,  35,
+     35,  35,  35,  35,  35,  35,  35,  35,
+     35,  35,  35,  35,  35,  35,  35,  35,
+     35,  35,  35,  35,  35,  35,  35,  35,
+     35,  35,  35,  35,  35,  35,  35,  35,
+     35,  35,  35,  35,  35,  35,  35,  35,
+     35,  35,  35,  35,  35,  35,  35,  35,
+     35,  35,  35,  35,  35,  35,  35,  35,
      35,  35,  35,  35,  35,  35,  35,  35,
      35,  35,  35,  35,  35,  35,  35,  35,
      35,  35,  35,  35,  35,  35,  35,  35,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 struct named_script { const char *name; unsigned int index; };
 %struct-type
 %language=ANSI-C
@@ -102,3 +102,6 @@
 Inscriptional_Pahlavi, 89
 Old_Turkic, 90
 Kaithi, 91
+Batak, 92
+Brahmi, 93
+Mandaic, 94
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 #define identsyntax_header_0 12
 #define identsyntax_header_1 225
 #define identsyntax_header_2 7
@@ -10,18 +10,18 @@
 struct
   {
     int level1[225];
-    short level2[19 << 5];
-    unsigned short level3[122 * 16];
+    short level2[21 << 5];
+    unsigned short level3[126 * 16];
   }
 u_java_ident =
 {
   {
         0,    32,    64,    96,   128,   160,   160,   160,
       160,   192,   224,   160,   160,   256,    -1,   288,
-      320,   352,   384,   416,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,   448,    -1,    -1,
+      320,   352,   384,   416,    -1,    -1,   448,    -1,
+       -1,    -1,    -1,   480,    -1,   512,    -1,    -1,
       160,   160,   160,   160,   160,   160,   160,   160,
-      160,   160,   480,   512,    -1,    -1,    -1,   544,
+      160,   160,   544,   576,    -1,    -1,    -1,   608,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -44,7 +44,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,
-      576
+      640
   },
   {
         0,   128,   256,   256,   256,   384,   512,   640,
@@ -77,49 +77,57 @@
       256,   256,   256,   256,   256,   256,   256,  8448,
       256,   256,   256,   256,   256,   256,   256,   256,
       256,  8576,   256,   256,  8704,  8832,  8960,  9088,
-     9216,  9344,  9472,  9600,  9728,  9856,    -1,  9984,
+     9216,  9344,  9472,  9600,  9728,  9856,  9984, 10112,
       256,   256,   256,   256,   256,   256,   256,   256,
       256,   256,   256,   256,   256,   256,   256,   256,
-      256,   256,   256,   256,   256,   256,   256, 10112,
+      256,   256,   256,   256,   256,   256,   256, 10240,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -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, 10240, 10368, 10496, 10624,
-      256,   256, 10752, 10880, 11008, 11136, 11264, 11392,
-    11520, 11648, 11776, 11904,    -1, 12032, 12160, 12288,
-      256, 12416,    -1,    -1,    -1,    -1,    -1,    -1,
-    12544,    -1, 12672,    -1, 12800,    -1, 12928,    -1,
-    13056,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1, 13184,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,   256,   256, 10368, 10496, 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,    -1, 12928,    -1, 13056,    -1,
+    13184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    13312, 13440,    -1,    -1,    -1,    -1,    -1,    -1,
        -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,   256,   256, 13312,    -1,
-    13440,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      256,   256,   256,   256,   256,   256, 13568,    -1,
+    13696,    -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,
-    13568,    -1,    -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, 13824, 13952,    -1,    -1,    -1,
-    14080, 14208, 14336,   256,   256, 14464, 14592, 14720,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      256,   256,   256,   256,   256,   256,   256,   256,
-      256,   256,   256,   256,   256, 14848,   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, 14976,    -1,
+    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,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      256,   256,   256,   256, 15104,    -1,    -1,    -1,
+      256,   256,   256,   256, 13952,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    14080,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1, 14208, 14336, 14464,    -1,    -1,    -1,
+    14592, 14720, 14848,   256,   256, 14976, 15104, 15232,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    15232,    -1, 15360, 15488,    -1,    -1,    -1,    -1,
+      256,   256,   256,   256,   256,   256,   256,   256,
+      256,   256,   256,   256,   256, 15360,   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, 15488,   256,
+    15616,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -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, 15616,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    15744,    -1, 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
@@ -139,12 +147,12 @@
     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, 0xa000, 0xaaaa, 0x0002, 0x0000,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaaaa, 0x0002, 0x0000,
     0x0000, 0x0000, 0x8000, 0xaaa2, 0x0002, 0x0000, 0x0000, 0x0000,
     0x0000, 0xaaaa, 0x5556, 0x5555, 0x5555, 0x5555, 0x5555, 0x6555,
     0x6596, 0xaaaa, 0x0000, 0x0000, 0x0000, 0xaa80, 0xaa80, 0xaaaa,
-    0xaaff, 0xaa2a, 0x5555, 0xaa95, 0x0002, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x5540, 0x5555, 0x9555, 0x5555, 0x0aa5, 0x0001, 0x0000,
+    0xaaff, 0xaa2a, 0x5555, 0xaa95, 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,
     0xaaaa, 0xeaaa, 0x0004, 0x0000, 0x0000, 0x0000, 0x5555, 0x5555,
@@ -152,9 +160,9 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x5000, 0x5555, 0xaaa1, 0xaaaa,
     0x5555, 0x0005, 0x0000, 0x0000, 0x0000, 0x5540, 0xa055, 0xaa8a,
     0x0000, 0x0000, 0x5000, 0x5545, 0x5455, 0xa554, 0xaaaa, 0xaaaa,
-    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
-    0x0055, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x51a0,
-    0x5555, 0x9555, 0xa554, 0x0000, 0x5a50, 0x5555, 0xaa82, 0x0002,
+    0x0000, 0x0000, 0x0000, 0xaa54, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0x0055, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5150,
+    0x5555, 0x5555, 0x5554, 0x0000, 0x5a50, 0x5555, 0x0002, 0x0002,
     0x0256, 0x2800, 0x0028, 0x0000, 0x0000, 0x0008, 0x0a88, 0x51a0,
     0x6955, 0x8569, 0x6aaa, 0x20aa, 0x5a50, 0x5555, 0xaa00, 0xaa2a,
     0x0256, 0x2a80, 0x0028, 0x0000, 0x0000, 0x0008, 0x8208, 0x59a0,
@@ -168,9 +176,9 @@
     0x0256, 0x0800, 0x0008, 0x0000, 0x0000, 0x0008, 0x0200, 0x52a0,
     0x5955, 0xa559, 0x96aa, 0xaaa0, 0x5a50, 0x5555, 0xaaaa, 0xaaaa,
     0x025a, 0x0800, 0x0008, 0x0000, 0x0000, 0x0008, 0x0200, 0x51a0,
-    0x5955, 0xa559, 0x96aa, 0x8aaa, 0x5a50, 0x5555, 0xaaaa, 0xaaaa,
-    0x025a, 0x0800, 0x0008, 0x0000, 0x0000, 0x0008, 0x0000, 0x52a0,
-    0x5955, 0xa559, 0x6aaa, 0xaaaa, 0x5a50, 0x5555, 0xaaaa, 0x000a,
+    0x5955, 0xa559, 0x96aa, 0x8aaa, 0x5a50, 0x5555, 0xaa82, 0xaaaa,
+    0x025a, 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,
     0x0002, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5504, 0x2a95,
@@ -179,7 +187,7 @@
     0x8800, 0xa555, 0x5555, 0xa0a5, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0xaaa8, 0xaaaa, 0xaaaa, 0xaaa5, 0x5555, 0xaaa5, 0x66aa, 0x5aa6,
     0x0000, 0x0002, 0x0000, 0x0000, 0x0000, 0xa800, 0x5556, 0x5555,
-    0x5955, 0xaa00, 0x5555, 0x5556, 0x5555, 0x5555, 0x5555, 0xa955,
+    0x5955, 0x5400, 0x5555, 0x5556, 0x5555, 0x5555, 0x5555, 0xa955,
     0x9aaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5540, 0x5555, 0x1555,
     0x5555, 0xaaa5, 0x5000, 0x5005, 0x4151, 0x0555, 0x0154, 0x0000,
@@ -190,7 +198,7 @@
     0x0000, 0xa008, 0x0000, 0x0000, 0x0000, 0x0000, 0xa008, 0x8000,
     0xa008, 0x0000, 0x8000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0xa008, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x6a80, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0x0000, 0x0000, 0x0000, 0x5680, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0x0000, 0x0000, 0xaaaa, 0xaaaa, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa800, 0xaaaa,
     0x0002, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -210,7 +218,7 @@
     0x0000, 0x0000, 0x0000, 0xa800, 0x5555, 0xaa55, 0x5555, 0xaa55,
     0x5aaa, 0x5555, 0x0000, 0x0000, 0x0000, 0xa000, 0xa800, 0xaaaa,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaa00, 0x5555, 0x5555,
-    0x0001, 0xaaa5, 0x5555, 0xaa95, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    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,
@@ -218,20 +226,20 @@
     0x0155, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5500, 0x5555,
     0x0155, 0xaa00, 0x5555, 0xaaa5, 0xaaaa, 0x556a, 0xaa55, 0xaaaa,
     0x0015, 0x0000, 0x0000, 0x0000, 0x5554, 0x0a95, 0x5555, 0xaaa5,
-    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x5000, 0x5555, 0xaa55, 0xaaaa,
     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, 0xaa90, 0xaaaa,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x5555, 0x5555, 0x5555, 0x5555, 0x9555, 0xaaaa, 0xaaaa, 0x56aa,
+    0x5555, 0x5555, 0x5555, 0x5555, 0x9555, 0xaaaa, 0xaaaa, 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, 0xabff, 0xfffa, 0xaaa2, 0x2aaa,
-    0xaaaa, 0xaaaa, 0xa800, 0xaaaa, 0x0000, 0x0000, 0x0000, 0xaaa8,
+    0xaaaa, 0xaaaa, 0x0000, 0xa800, 0x0000, 0x0000, 0x0000, 0xaaa0,
     0xaaaa, 0xaaaa, 0x5555, 0xa955, 0x56a6, 0x5555, 0xaaa9, 0xaaaa,
     0x2a8a, 0x000a, 0xa200, 0xa002, 0x88aa, 0x2008, 0x0000, 0x00a0,
     0x02aa, 0x8aa0, 0xaaaa, 0xaaaa, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -242,7 +250,7 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0xa800, 0x402a, 0xaaa5, 0xaaaa,
     0x0000, 0x0000, 0x0000, 0x0000, 0xa000, 0xaaaa, 0x0000, 0x0000,
-    0x0000, 0x0000, 0x0000, 0x0000, 0xa000, 0x2aaa, 0xaaaa, 0xaaaa,
+    0x0000, 0x0000, 0x0000, 0x0000, 0xa000, 0x2aaa, 0xaaaa, 0x6aaa,
     0x0000, 0x0000, 0x8000, 0xaaaa, 0x8000, 0x8000, 0x8000, 0x8000,
     0x8000, 0x8000, 0x8000, 0x8000, 0x5555, 0x5555, 0x5555, 0x5555,
     0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x2aaa, 0xaaaa, 0xaaaa,
@@ -253,7 +261,7 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0080,
     0x02aa, 0x0000, 0x0000, 0x0000, 0x0000, 0xa000, 0x0002, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-    0x0000, 0x8000, 0xaaaa, 0xaaaa, 0x0000, 0x0000, 0x0000, 0xaaaa,
+    0x0000, 0x8000, 0xaaaa, 0xaaaa, 0x0000, 0x0000, 0x0000, 0xaa80,
     0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa000, 0xaaaa,
     0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
@@ -262,13 +270,13 @@
     0x0000, 0xa800, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0xaaaa, 0xaaaa, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa000,
     0x0000, 0xa800, 0x0000, 0x0000, 0x5555, 0xaa05, 0xaaaa, 0xaaaa,
-    0x0000, 0x0000, 0x0000, 0x0000, 0x000a, 0x4000, 0xaaaa, 0x25aa,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4000, 0xaaaa, 0x25aa,
     0x0000, 0x0000, 0x0000, 0xaaaa, 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, 0xa828, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
-    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x002a,
+    0x0000, 0x8028, 0xaaa0, 0xaaaa, 0x0000, 0xaaa0, 0xaaaa, 0xaaaa,
+    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x000a,
     0x1010, 0x0040, 0x0000, 0x0000, 0x5540, 0xaaaa, 0xaaaa, 0xaaa8,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaa00, 0xaaaa,
     0x0005, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5500, 0x5555,
@@ -281,6 +289,8 @@
     0x0040, 0xa500, 0x5555, 0xaaa5, 0x0000, 0x0000, 0x8000, 0xaa4a,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4151, 0x5001,
     0xaa84, 0xaaaa, 0xaaaa, 0xa02a, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0x8002, 0x8002, 0x8002, 0xaaaa, 0x8000, 0x8000, 0xaaaa, 0xaaaa,
+    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 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,
@@ -331,6 +341,8 @@
     0x0000, 0x0000, 0xa000, 0xaaaa, 0x0000, 0x0000, 0xaa80, 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,
     0x0015, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5555, 0xae95,
     0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
@@ -339,6 +351,10 @@
     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,
+    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0xaaa0, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 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,
@@ -360,7 +376,7 @@
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x8000, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa800, 0xaaaa,
-    0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
+    0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
     0x0000, 0x0000, 0x0000, 0xa000, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa,
     0xaaae, 0xaaaa, 0xaaaa, 0xaaaa, 0xffff, 0xffff, 0xffff, 0xffff,
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.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[(76 << 7) / 2];
+    unsigned char level3[(78 << 7) / 2];
   }
 unigbrkprop =
 {
@@ -31,8 +31,8 @@
      2624,  2688,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,  2752,    -1,  2816,    -1,    -1,    -1,    -1,
-     2880,  2944,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,  2752,  2816,  2880,    -1,    -1,    -1,    -1,
+     2944,  3008,    -1,    -1,    -1,    -1,    -1,    -1,
        -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,19 +61,19 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,  3008,  3072,    -1,    -1,
-     3136,  3200,  3264,  3328,  3392,  3456,    -1,  3520,
-     3584,  3648,  3712,  3776,  3840,  3904,  3968,  3584,
-     3648,  3712,  3776,  3840,  3904,  3968,  3584,  3648,
-     3712,  3776,  3840,  3904,  3968,  3584,  3648,  3712,
-     3776,  3840,  3904,  3968,  3584,  3648,  3712,  3776,
-     3840,  3904,  3968,  3584,  3648,  3712,  3776,  3840,
-     3904,  3968,  3584,  3648,  3712,  3776,  3840,  3904,
-     3968,  3584,  3648,  3712,  3776,  3840,  3904,  3968,
-     3584,  3648,  3712,  3776,  3840,  3904,  3968,  3584,
-     3648,  3712,  3776,  3840,  3904,  3968,  3584,  3648,
-     3712,  3776,  3840,  3904,  3968,  3584,  3648,  3712,
-     3776,  3840,  3904,  3968,  3584,  3648,  3712,  4032,
+       -1,    -1,    -1,    -1,  3072,  3136,    -1,    -1,
+     3200,  3264,  3328,  3392,  3456,  3520,    -1,  3584,
+     3648,  3712,  3776,  3840,  3904,  3968,  4032,  3648,
+     3712,  3776,  3840,  3904,  3968,  4032,  3648,  3712,
+     3776,  3840,  3904,  3968,  4032,  3648,  3712,  3776,
+     3840,  3904,  3968,  4032,  3648,  3712,  3776,  3840,
+     3904,  3968,  4032,  3648,  3712,  3776,  3840,  3904,
+     3968,  4032,  3648,  3712,  3776,  3840,  3904,  3968,
+     4032,  3648,  3712,  3776,  3840,  3904,  3968,  4032,
+     3648,  3712,  3776,  3840,  3904,  3968,  4032,  3648,
+     3712,  3776,  3840,  3904,  3968,  4032,  3648,  3712,
+     3776,  3840,  3904,  3968,  4032,  3648,  3712,  3776,
+     3840,  3904,  3968,  4032,  3648,  3712,  3776,  4096,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -82,13 +82,13 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,  4096,    -1,
-       -1,    -1,    -1,    -1,  4160,  4224,    -1,  4288,
-       -1,    -1,    -1,  4352,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,  4160,    -1,
+       -1,    -1,    -1,    -1,  4224,  4288,    -1,  4352,
+       -1,    -1,    -1,  4416,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,  4416,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,  4480,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,  4480,    -1,    -1,    -1,    -1,    -1,    -1,
+     4544,  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,    -1,    -1,    -1,
@@ -136,7 +136,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,  4544,  4608,  4672,    -1,    -1,    -1,
+       -1,    -1,  4672,  4736,  4800,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -148,7 +148,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,
-     4736,    -1,  4800,   128,    -1,    -1,    -1,    -1,
+     4864,    -1,  4928,   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,
@@ -259,7 +259,7 @@
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x44, 0x44,
-    0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x04,
+    0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -267,7 +267,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, 0x44, 0x44, 0x44, 0x34, 0x44,
+    0x00, 0x00, 0x00, 0x44, 0x44, 0x44, 0x34, 0x40,
     0x44, 0x44, 0x04, 0x40, 0x04, 0x44, 0x44, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30,
@@ -291,15 +291,15 @@
     0x44, 0x44, 0x40, 0x44, 0x40, 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,
+    0x00, 0x00, 0x00, 0x00, 0x40, 0x44, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x44, 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, 0x04, 0x66,
-    0x46, 0x44, 0x44, 0x44, 0x64, 0x66, 0x46, 0x06,
-    0x40, 0x44, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x04, 0x66,
+    0x46, 0x44, 0x44, 0x44, 0x64, 0x66, 0x46, 0x66,
+    0x40, 0x44, 0x44, 0x44, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x40, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -377,15 +377,15 @@
     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, 0x04, 0x00, 0x00,
-    0x55, 0x55, 0x45, 0x40, 0x44, 0x44, 0x44, 0x04,
+    0x46, 0x66, 0x44, 0x44, 0x44, 0x04, 0x00, 0x00,
+    0x55, 0x55, 0x65, 0x40, 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,
-    0x44, 0x44, 0x44, 0x44, 0x44, 0x40, 0x04, 0x00,
+    0x46, 0x66, 0x44, 0x44, 0x44, 0x40, 0x04, 0x00,
     0x55, 0x55, 0x05, 0x00, 0x44, 0x44, 0x44, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -398,7 +398,7 @@
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x40, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x64,
-    0x44, 0x44, 0x04, 0x44, 0x00, 0x00, 0x00, 0x00,
+    0x44, 0x44, 0x04, 0x44, 0x00, 0x00, 0x40, 0x44,
     0x44, 0x44, 0x44, 0x44, 0x40, 0x44, 0x44, 0x44,
     0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44,
     0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x04, 0x00,
@@ -443,7 +443,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, 0x40,
+    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 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,
@@ -516,8 +516,8 @@
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 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, 0x44, 0x66, 0x46, 0x46,
+    0x44, 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, 0x66, 0x66, 0x66, 0x66, 0x44, 0x44,
@@ -541,7 +541,7 @@
     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, 0x40, 0x44,
+    0x00, 0x00, 0x00, 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,
@@ -572,6 +572,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, 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,
     0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44,
     0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -774,6 +782,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,
+    0x46, 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, 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,
     0x44, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
--- 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-lbrk for Unicode 5.2.0.  */
+/* Generated automatically by gen-lbrk for Unicode 6.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[154 << 7];
+    unsigned char level3[166 << 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-lbrk for Unicode 5.2.0.  */
+/* Generated automatically by gen-lbrk for Unicode 6.0.0.  */
 
 /* Copyright (C) 2000-2002, 2004, 2008 Free Software Foundation, Inc.
 
@@ -66,18 +66,18 @@
      9856,  9856,  9856,  9856,  9856,  9856,  9856,  9856,
     11008,  9856,  9856,  9856,  9856,  9856,  9856,  9856,
      9856, 11136,   256,   256, 11264, 11392,   256, 11520,
-    11648, 11776, 11904, 12032, 12160, 12288,    -1, 12416,
-    12544, 12672, 12800, 12928, 13056, 13184, 13312, 12544,
-    12672, 12800, 12928, 13056, 13184, 13312, 12544, 12672,
-    12800, 12928, 13056, 13184, 13312, 12544, 12672, 12800,
-    12928, 13056, 13184, 13312, 12544, 12672, 12800, 12928,
-    13056, 13184, 13312, 12544, 12672, 12800, 12928, 13056,
-    13184, 13312, 12544, 12672, 12800, 12928, 13056, 13184,
-    13312, 12544, 12672, 12800, 12928, 13056, 13184, 13312,
-    12544, 12672, 12800, 12928, 13056, 13184, 13312, 12544,
-    12672, 12800, 12928, 13056, 13184, 13312, 12544, 12672,
-    12800, 12928, 13056, 13184, 13312, 12544, 12672, 12800,
-    12928, 13056, 13184, 13312, 12544, 12672, 12800, 13440,
+    11648, 11776, 11904, 12032, 12160, 12288, 12416, 12544,
+    12672, 12800, 12928, 13056, 13184, 13312, 13440, 12672,
+    12800, 12928, 13056, 13184, 13312, 13440, 12672, 12800,
+    12928, 13056, 13184, 13312, 13440, 12672, 12800, 12928,
+    13056, 13184, 13312, 13440, 12672, 12800, 12928, 13056,
+    13184, 13312, 13440, 12672, 12800, 12928, 13056, 13184,
+    13312, 13440, 12672, 12800, 12928, 13056, 13184, 13312,
+    13440, 12672, 12800, 12928, 13056, 13184, 13312, 13440,
+    12672, 12800, 12928, 13056, 13184, 13312, 13440, 12672,
+    12800, 12928, 13056, 13184, 13312, 13440, 12672, 12800,
+    12928, 13056, 13184, 13312, 13440, 12672, 12800, 12928,
+    13056, 13184, 13312, 13440, 12672, 12800, 12928, 13568,
        -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,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,  9856,  9856,  9856,  9856, 13568, 13696,
-      256,   256, 13824, 13952, 14080, 14208, 14336, 14464,
-    14592, 14720, 14848, 14976,    -1, 15104, 15232, 15360,
-      256, 15488,    -1,    -1,    -1,    -1,    -1,    -1,
-    15616,    -1, 15744,    -1, 15872,    -1, 16000,    -1,
-    16128,    -1,    -1,    -1, 16256,    -1,    -1,    -1,
-       -1, 16384,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,  9856,  9856,  9856,  9856, 13696, 13824,
+      256,   256, 13952, 14080, 14208, 14336, 14464, 14592,
+    14720, 14848, 14976, 15104,    -1, 15232, 15360, 15488,
+      256, 15616,    -1,    -1,    -1,    -1,    -1,    -1,
+    15744,    -1, 15872,    -1, 16000,    -1, 16128,    -1,
+    16256,    -1,    -1,    -1, 16384,    -1,    -1,    -1,
+    16512, 16640,    -1,    -1,    -1,    -1,    -1,    -1,
        -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,   256,   256, 16512,    -1,
-    16640,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      256,   256,   256,   256,   256,   256, 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,
+      256,   256,   256,   256, 17024, 17152, 17280,   256,
+    17408,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -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, 16896, 17024,   256,
-    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,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -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, 17536,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -119,15 +132,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,
+    17664,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -135,21 +140,16 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -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, 17280, 17408, 17536, 17664,    -1, 17792,    -1,
-    17920, 18048, 18176,   256,   256, 18304,   256, 18432,
+      256, 17792, 17920, 18048, 18176,    -1, 18304,    -1,
+    18432, 18560, 18688,   256,   256, 18816,   256, 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,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    18560, 18688, 18816, 18944, 19072,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    19072, 19200, 19328, 19456, 19584,    -1, 19712, 19840,
+    19968, 20096, 20224, 20352, 20480, 20608,  7680,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
      9856,  9856,  9856,  9856,  9856,  9856,  9856,  9856,
@@ -215,8 +215,8 @@
      9856,  9856,  9856,  9856,  9856,  9856,  9856,  9856,
      9856,  9856,  9856,  9856,  9856,  9856,  9856,  9856,
      9856,  9856,  9856,  9856,  9856,  9856,  9856,  9856,
-     9856,  9856,  9856,  9856,  9856,  9856,  9856, 19200,
-    19328,    -1, 19456, 19584,    -1,    -1,    -1,    -1,
+     9856,  9856,  9856,  9856,  9856,  9856,  9856, 20736,
+    20864,    -1, 20992, 21120,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -398,7 +398,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_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_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -430,14 +430,14 @@
     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_XX, LBP_XX, LBP_EX, LBP_EX,
-    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_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_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU,
     LBP_NU, LBP_NU, LBP_PO, LBP_NU, LBP_NU, LBP_AL, LBP_AL, LBP_AL,
     LBP_CM, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -453,7 +453,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_EX, LBP_AL, LBP_CM, LBP_CM,
-    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_AL, LBP_CM, LBP_CM,
+    LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_AL, LBP_AL, LBP_CM,
     LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_AL, LBP_AL, LBP_CM,
     LBP_CM, LBP_AL, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_AL, LBP_AL,
     LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU, LBP_NU,
@@ -498,10 +498,10 @@
     LBP_AL, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, 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_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_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_CM, LBP_CM, LBP_CM, 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,
@@ -513,14 +513,14 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_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_AL, LBP_CM, LBP_CM,
+    LBP_AL, LBP_AL, LBP_CM, LBP_CM, LBP_CM, 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_XX,
-    LBP_AL, 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_AL, 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_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_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_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,
@@ -584,7 +584,7 @@
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_AL, LBP_AL, LBP_XX, LBP_AL,
     LBP_AL, LBP_AL, LBP_CM, LBP_CM, 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_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_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_CM, LBP_AL, LBP_XX, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_AL, LBP_AL,
@@ -639,11 +639,11 @@
     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_AL, LBP_AL, LBP_AL, LBP_AL,
-    LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_AL, 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_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,
+    LBP_CM, LBP_XX, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_AL, 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_XX, LBP_XX, LBP_XX,
     LBP_AL, LBP_AL, LBP_CM, LBP_CM, LBP_XX, LBP_XX, LBP_NU, LBP_NU,
@@ -715,7 +715,7 @@
     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_BA,
     LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_CM, LBP_BA, LBP_CM, LBP_CM,
-    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_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_CM, LBP_CM, LBP_CM,
@@ -725,7 +725,7 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_CM, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_AL, LBP_AL,
     LBP_BB, LBP_BB, LBP_BA, LBP_BB, 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_GL, LBP_GL, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
@@ -837,7 +837,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_XX, LBP_XX, LBP_XX, LBP_XX, LBP_CM,
+    LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_CM, LBP_CM, LBP_CM,
     LBP_AL, 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,
@@ -981,7 +981,7 @@
     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_NU, 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_SA, LBP_SA,
+    LBP_NU, LBP_NU, LBP_SA, LBP_XX, LBP_XX, LBP_XX, LBP_SA, LBP_SA,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -1042,14 +1042,14 @@
     LBP_CM, LBP_CM, LBP_CM, LBP_XX, LBP_XX, LBP_XX, 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_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_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_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_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -1097,7 +1097,7 @@
     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_CM, LBP_CM, LBP_CM,
+    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, LBP_AL, LBP_XX, LBP_XX,
@@ -1148,12 +1148,12 @@
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_OP, LBP_CL, LBP_AI,
     LBP_AL, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_OP, LBP_CL, 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_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     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_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_PR, LBP_PR, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_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,
@@ -1255,8 +1255,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_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_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,
@@ -1347,39 +1347,39 @@
     LBP_AL, LBP_AL, LBP_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_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AI, LBP_AI, LBP_AI, LBP_AI,
-    LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_XX, LBP_AI,
+    LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AL, 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_XX, LBP_AI, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_AI, LBP_AI, LBP_AL, LBP_AI, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     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,
-    LBP_XX, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, 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_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_XX, LBP_AL, LBP_XX, LBP_AL,
-    LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_XX, LBP_XX, LBP_AL, LBP_AI,
-    LBP_AL, LBP_AL, LBP_AL, LBP_QU, LBP_QU, LBP_QU, LBP_QU, LBP_XX,
-    LBP_XX, LBP_AL, LBP_EX, LBP_EX, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_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_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,
     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_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_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_XX,
+    LBP_AI, LBP_AI, 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_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_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_XX, LBP_AL, LBP_XX, LBP_XX, LBP_XX,
+    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,
     LBP_AL, LBP_AL, LBP_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,
@@ -1464,8 +1464,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_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_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_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_XX,
@@ -1601,7 +1601,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_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    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,
@@ -1702,7 +1702,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_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_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_AL, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_CM, LBP_CM, LBP_AL, LBP_AL,
@@ -1723,21 +1723,21 @@
     LBP_CM, LBP_CM, LBP_AL, 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_AL, LBP_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_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_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_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_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,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -1834,6 +1834,22 @@
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
     LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_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_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_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_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_XX, LBP_XX,
@@ -2000,10 +2016,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_AL, LBP_AL, LBP_AL, LBP_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_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
     LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
@@ -2336,6 +2352,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_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_BA,
+    LBP_BA, 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_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_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,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_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_AL, LBP_AL, LBP_AL, LBP_BA, LBP_BA,
     LBP_BA, LBP_BA, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
@@ -2449,6 +2481,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_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_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_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_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,
@@ -2622,14 +2686,14 @@
     LBP_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_AL, LBP_AL, LBP_AL, LBP_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_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_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,
@@ -2640,42 +2704,170 @@
     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_AL, LBP_XX,
-    LBP_XX, LBP_AI, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_AI, LBP_XX, LBP_AI,
-    LBP_XX, LBP_XX, LBP_AI, LBP_XX, LBP_XX, LBP_XX, LBP_AI, LBP_XX,
-    LBP_XX, LBP_XX, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_AI, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_AI,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_AI,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_AI, LBP_XX, LBP_AI, LBP_AI, LBP_XX, LBP_XX, LBP_AI,
-    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_XX, LBP_XX,
-    LBP_AI, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
-    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_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_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_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, 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_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_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, 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_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_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_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_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID,
     LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_ID, LBP_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_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_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_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_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_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_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_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_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_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_XX, 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_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_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_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_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_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_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_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_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_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_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_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_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX,
+    LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_XX, LBP_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_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_XX, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_AL, LBP_XX,
+    LBP_AL, LBP_XX, 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_XX, LBP_XX,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_XX, LBP_AL, 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_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_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL, LBP_AL,
+    LBP_AL, LBP_AL, LBP_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,
--- 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 for Unicode 5.2.0.  */
+/* Generated automatically by gen-uni-tables for Unicode 6.0.0.  */
 
 /* Copyright (C) 2009 Free Software Foundation, Inc.
 
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 
 extern const unsigned char gl_uninorm_decomp_chars_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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
 
 const unsigned char gl_uninorm_decomp_chars_table[] =
 {
@@ -520,6 +520,8 @@
   0x24, 0x00, 0x38, 0x24, 0x00, 0x39, 0x24, 0x00, 0x2B, 0x24, 0x22, 0x12,
   0x24, 0x00, 0x3D, 0x24, 0x00, 0x28, 0x24, 0x00, 0x29, 0x24, 0x00, 0x61,
   0x24, 0x00, 0x65, 0x24, 0x00, 0x6F, 0x24, 0x00, 0x78, 0x24, 0x02, 0x59,
+  0x24, 0x00, 0x68, 0x24, 0x00, 0x6B, 0x24, 0x00, 0x6C, 0x24, 0x00, 0x6D,
+  0x24, 0x00, 0x6E, 0x24, 0x00, 0x70, 0x24, 0x00, 0x73, 0x24, 0x00, 0x74,
   0xC0, 0x00, 0x52, 0x00, 0x00, 0x73, 0xC0, 0x00, 0x61, 0x80, 0x00, 0x2F,
   0x00, 0x00, 0x63, 0xC0, 0x00, 0x61, 0x80, 0x00, 0x2F, 0x00, 0x00, 0x73,
   0x04, 0x00, 0x43, 0xC0, 0x00, 0xB0, 0x00, 0x00, 0x43, 0xC0, 0x00, 0x63,
@@ -1924,163 +1926,172 @@
   0xC0, 0x00, 0x28, 0x80, 0x00, 0x59, 0x00, 0x00, 0x29, 0xC0, 0x00, 0x28,
   0x80, 0x00, 0x5A, 0x00, 0x00, 0x29, 0xC0, 0x30, 0x14, 0x80, 0x00, 0x53,
   0x00, 0x30, 0x15, 0x1C, 0x00, 0x43, 0x1C, 0x00, 0x52, 0x9C, 0x00, 0x43,
-  0x00, 0x00, 0x44, 0x9C, 0x00, 0x57, 0x00, 0x00, 0x5A, 0x38, 0x00, 0x42,
-  0x38, 0x00, 0x4E, 0x38, 0x00, 0x50, 0x38, 0x00, 0x53, 0x38, 0x00, 0x57,
-  0xB8, 0x00, 0x48, 0x00, 0x00, 0x56, 0xB8, 0x00, 0x4D, 0x00, 0x00, 0x56,
-  0xB8, 0x00, 0x53, 0x00, 0x00, 0x44, 0xB8, 0x00, 0x53, 0x00, 0x00, 0x53,
-  0xB8, 0x00, 0x50, 0x80, 0x00, 0x50, 0x00, 0x00, 0x56, 0xB8, 0x00, 0x44,
-  0x00, 0x00, 0x4A, 0xB8, 0x30, 0x7B, 0x00, 0x30, 0x4B, 0x38, 0x62, 0x4B,
-  0x38, 0x5B, 0x57, 0x38, 0x53, 0xCC, 0x38, 0x30, 0xC7, 0x38, 0x4E, 0x8C,
-  0x38, 0x59, 0x1A, 0x38, 0x89, 0xE3, 0x38, 0x59, 0x29, 0x38, 0x4E, 0xA4,
-  0x38, 0x66, 0x20, 0x38, 0x71, 0x21, 0x38, 0x65, 0x99, 0x38, 0x52, 0x4D,
-  0x38, 0x5F, 0x8C, 0x38, 0x51, 0x8D, 0x38, 0x65, 0xB0, 0x38, 0x52, 0x1D,
-  0x38, 0x7D, 0x42, 0x38, 0x75, 0x1F, 0x38, 0x8C, 0xA9, 0x38, 0x58, 0xF0,
-  0x38, 0x54, 0x39, 0x38, 0x6F, 0x14, 0x38, 0x62, 0x95, 0x38, 0x63, 0x55,
-  0x38, 0x4E, 0x00, 0x38, 0x4E, 0x09, 0x38, 0x90, 0x4A, 0x38, 0x5D, 0xE6,
-  0x38, 0x4E, 0x2D, 0x38, 0x53, 0xF3, 0x38, 0x63, 0x07, 0x38, 0x8D, 0x70,
-  0x38, 0x62, 0x53, 0xC0, 0x30, 0x14, 0x80, 0x67, 0x2C, 0x00, 0x30, 0x15,
-  0xC0, 0x30, 0x14, 0x80, 0x4E, 0x09, 0x00, 0x30, 0x15, 0xC0, 0x30, 0x14,
-  0x80, 0x4E, 0x8C, 0x00, 0x30, 0x15, 0xC0, 0x30, 0x14, 0x80, 0x5B, 0x89,
-  0x00, 0x30, 0x15, 0xC0, 0x30, 0x14, 0x80, 0x70, 0xB9, 0x00, 0x30, 0x15,
-  0xC0, 0x30, 0x14, 0x80, 0x62, 0x53, 0x00, 0x30, 0x15, 0xC0, 0x30, 0x14,
-  0x80, 0x76, 0xD7, 0x00, 0x30, 0x15, 0xC0, 0x30, 0x14, 0x80, 0x52, 0xDD,
-  0x00, 0x30, 0x15, 0xC0, 0x30, 0x14, 0x80, 0x65, 0x57, 0x00, 0x30, 0x15,
-  0x00, 0x4E, 0x3D, 0x00, 0x4E, 0x38, 0x00, 0x4E, 0x41, 0x02, 0x01, 0x22,
-  0x00, 0x4F, 0x60, 0x00, 0x4F, 0xAE, 0x00, 0x4F, 0xBB, 0x00, 0x50, 0x02,
-  0x00, 0x50, 0x7A, 0x00, 0x50, 0x99, 0x00, 0x50, 0xE7, 0x00, 0x50, 0xCF,
-  0x00, 0x34, 0x9E, 0x02, 0x06, 0x3A, 0x00, 0x51, 0x4D, 0x00, 0x51, 0x54,
-  0x00, 0x51, 0x64, 0x00, 0x51, 0x77, 0x02, 0x05, 0x1C, 0x00, 0x34, 0xB9,
-  0x00, 0x51, 0x67, 0x00, 0x51, 0x8D, 0x02, 0x05, 0x4B, 0x00, 0x51, 0x97,
-  0x00, 0x51, 0xA4, 0x00, 0x4E, 0xCC, 0x00, 0x51, 0xAC, 0x00, 0x51, 0xB5,
-  0x02, 0x91, 0xDF, 0x00, 0x51, 0xF5, 0x00, 0x52, 0x03, 0x00, 0x34, 0xDF,
-  0x00, 0x52, 0x3B, 0x00, 0x52, 0x46, 0x00, 0x52, 0x72, 0x00, 0x52, 0x77,
-  0x00, 0x35, 0x15, 0x00, 0x52, 0xC7, 0x00, 0x52, 0xC9, 0x00, 0x52, 0xE4,
-  0x00, 0x52, 0xFA, 0x00, 0x53, 0x05, 0x00, 0x53, 0x06, 0x00, 0x53, 0x17,
-  0x00, 0x53, 0x49, 0x00, 0x53, 0x51, 0x00, 0x53, 0x5A, 0x00, 0x53, 0x73,
-  0x00, 0x53, 0x7D, 0x00, 0x53, 0x7F, 0x00, 0x53, 0x7F, 0x00, 0x53, 0x7F,
-  0x02, 0x0A, 0x2C, 0x00, 0x70, 0x70, 0x00, 0x53, 0xCA, 0x00, 0x53, 0xDF,
-  0x02, 0x0B, 0x63, 0x00, 0x53, 0xEB, 0x00, 0x53, 0xF1, 0x00, 0x54, 0x06,
-  0x00, 0x54, 0x9E, 0x00, 0x54, 0x38, 0x00, 0x54, 0x48, 0x00, 0x54, 0x68,
-  0x00, 0x54, 0xA2, 0x00, 0x54, 0xF6, 0x00, 0x55, 0x10, 0x00, 0x55, 0x53,
-  0x00, 0x55, 0x63, 0x00, 0x55, 0x84, 0x00, 0x55, 0x84, 0x00, 0x55, 0x99,
-  0x00, 0x55, 0xAB, 0x00, 0x55, 0xB3, 0x00, 0x55, 0xC2, 0x00, 0x57, 0x16,
-  0x00, 0x56, 0x06, 0x00, 0x57, 0x17, 0x00, 0x56, 0x51, 0x00, 0x56, 0x74,
-  0x00, 0x52, 0x07, 0x00, 0x58, 0xEE, 0x00, 0x57, 0xCE, 0x00, 0x57, 0xF4,
-  0x00, 0x58, 0x0D, 0x00, 0x57, 0x8B, 0x00, 0x58, 0x32, 0x00, 0x58, 0x31,
-  0x00, 0x58, 0xAC, 0x02, 0x14, 0xE4, 0x00, 0x58, 0xF2, 0x00, 0x58, 0xF7,
-  0x00, 0x59, 0x06, 0x00, 0x59, 0x1A, 0x00, 0x59, 0x22, 0x00, 0x59, 0x62,
-  0x02, 0x16, 0xA8, 0x02, 0x16, 0xEA, 0x00, 0x59, 0xEC, 0x00, 0x5A, 0x1B,
-  0x00, 0x5A, 0x27, 0x00, 0x59, 0xD8, 0x00, 0x5A, 0x66, 0x00, 0x36, 0xEE,
-  0x00, 0x36, 0xFC, 0x00, 0x5B, 0x08, 0x00, 0x5B, 0x3E, 0x00, 0x5B, 0x3E,
-  0x02, 0x19, 0xC8, 0x00, 0x5B, 0xC3, 0x00, 0x5B, 0xD8, 0x00, 0x5B, 0xE7,
-  0x00, 0x5B, 0xF3, 0x02, 0x1B, 0x18, 0x00, 0x5B, 0xFF, 0x00, 0x5C, 0x06,
-  0x00, 0x5F, 0x53, 0x00, 0x5C, 0x22, 0x00, 0x37, 0x81, 0x00, 0x5C, 0x60,
-  0x00, 0x5C, 0x6E, 0x00, 0x5C, 0xC0, 0x00, 0x5C, 0x8D, 0x02, 0x1D, 0xE4,
-  0x00, 0x5D, 0x43, 0x02, 0x1D, 0xE6, 0x00, 0x5D, 0x6E, 0x00, 0x5D, 0x6B,
-  0x00, 0x5D, 0x7C, 0x00, 0x5D, 0xE1, 0x00, 0x5D, 0xE2, 0x00, 0x38, 0x2F,
-  0x00, 0x5D, 0xFD, 0x00, 0x5E, 0x28, 0x00, 0x5E, 0x3D, 0x00, 0x5E, 0x69,
-  0x00, 0x38, 0x62, 0x02, 0x21, 0x83, 0x00, 0x38, 0x7C, 0x00, 0x5E, 0xB0,
-  0x00, 0x5E, 0xB3, 0x00, 0x5E, 0xB6, 0x00, 0x5E, 0xCA, 0x02, 0xA3, 0x92,
-  0x00, 0x5E, 0xFE, 0x02, 0x23, 0x31, 0x02, 0x23, 0x31, 0x00, 0x82, 0x01,
-  0x00, 0x5F, 0x22, 0x00, 0x5F, 0x22, 0x00, 0x38, 0xC7, 0x02, 0x32, 0xB8,
-  0x02, 0x61, 0xDA, 0x00, 0x5F, 0x62, 0x00, 0x5F, 0x6B, 0x00, 0x38, 0xE3,
-  0x00, 0x5F, 0x9A, 0x00, 0x5F, 0xCD, 0x00, 0x5F, 0xD7, 0x00, 0x5F, 0xF9,
-  0x00, 0x60, 0x81, 0x00, 0x39, 0x3A, 0x00, 0x39, 0x1C, 0x00, 0x60, 0x94,
-  0x02, 0x26, 0xD4, 0x00, 0x60, 0xC7, 0x00, 0x61, 0x48, 0x00, 0x61, 0x4C,
-  0x00, 0x61, 0x4E, 0x00, 0x61, 0x4C, 0x00, 0x61, 0x7A, 0x00, 0x61, 0x8E,
-  0x00, 0x61, 0xB2, 0x00, 0x61, 0xA4, 0x00, 0x61, 0xAF, 0x00, 0x61, 0xDE,
-  0x00, 0x61, 0xF2, 0x00, 0x61, 0xF6, 0x00, 0x62, 0x10, 0x00, 0x62, 0x1B,
-  0x00, 0x62, 0x5D, 0x00, 0x62, 0xB1, 0x00, 0x62, 0xD4, 0x00, 0x63, 0x50,
-  0x02, 0x2B, 0x0C, 0x00, 0x63, 0x3D, 0x00, 0x62, 0xFC, 0x00, 0x63, 0x68,
-  0x00, 0x63, 0x83, 0x00, 0x63, 0xE4, 0x02, 0x2B, 0xF1, 0x00, 0x64, 0x22,
-  0x00, 0x63, 0xC5, 0x00, 0x63, 0xA9, 0x00, 0x3A, 0x2E, 0x00, 0x64, 0x69,
-  0x00, 0x64, 0x7E, 0x00, 0x64, 0x9D, 0x00, 0x64, 0x77, 0x00, 0x3A, 0x6C,
-  0x00, 0x65, 0x4F, 0x00, 0x65, 0x6C, 0x02, 0x30, 0x0A, 0x00, 0x65, 0xE3,
-  0x00, 0x66, 0xF8, 0x00, 0x66, 0x49, 0x00, 0x3B, 0x19, 0x00, 0x66, 0x91,
-  0x00, 0x3B, 0x08, 0x00, 0x3A, 0xE4, 0x00, 0x51, 0x92, 0x00, 0x51, 0x95,
-  0x00, 0x67, 0x00, 0x00, 0x66, 0x9C, 0x00, 0x80, 0xAD, 0x00, 0x43, 0xD9,
-  0x00, 0x67, 0x17, 0x00, 0x67, 0x1B, 0x00, 0x67, 0x21, 0x00, 0x67, 0x5E,
-  0x00, 0x67, 0x53, 0x02, 0x33, 0xC3, 0x00, 0x3B, 0x49, 0x00, 0x67, 0xFA,
-  0x00, 0x67, 0x85, 0x00, 0x68, 0x52, 0x00, 0x68, 0x85, 0x02, 0x34, 0x6D,
-  0x00, 0x68, 0x8E, 0x00, 0x68, 0x1F, 0x00, 0x69, 0x14, 0x00, 0x3B, 0x9D,
-  0x00, 0x69, 0x42, 0x00, 0x69, 0xA3, 0x00, 0x69, 0xEA, 0x00, 0x6A, 0xA8,
-  0x02, 0x36, 0xA3, 0x00, 0x6A, 0xDB, 0x00, 0x3C, 0x18, 0x00, 0x6B, 0x21,
-  0x02, 0x38, 0xA7, 0x00, 0x6B, 0x54, 0x00, 0x3C, 0x4E, 0x00, 0x6B, 0x72,
-  0x00, 0x6B, 0x9F, 0x00, 0x6B, 0xBA, 0x00, 0x6B, 0xBB, 0x02, 0x3A, 0x8D,
-  0x02, 0x1D, 0x0B, 0x02, 0x3A, 0xFA, 0x00, 0x6C, 0x4E, 0x02, 0x3C, 0xBC,
-  0x00, 0x6C, 0xBF, 0x00, 0x6C, 0xCD, 0x00, 0x6C, 0x67, 0x00, 0x6D, 0x16,
-  0x00, 0x6D, 0x3E, 0x00, 0x6D, 0x77, 0x00, 0x6D, 0x41, 0x00, 0x6D, 0x69,
-  0x00, 0x6D, 0x78, 0x00, 0x6D, 0x85, 0x02, 0x3D, 0x1E, 0x00, 0x6D, 0x34,
-  0x00, 0x6E, 0x2F, 0x00, 0x6E, 0x6E, 0x00, 0x3D, 0x33, 0x00, 0x6E, 0xCB,
-  0x00, 0x6E, 0xC7, 0x02, 0x3E, 0xD1, 0x00, 0x6D, 0xF9, 0x00, 0x6F, 0x6E,
-  0x02, 0x3F, 0x5E, 0x02, 0x3F, 0x8E, 0x00, 0x6F, 0xC6, 0x00, 0x70, 0x39,
-  0x00, 0x70, 0x1E, 0x00, 0x70, 0x1B, 0x00, 0x3D, 0x96, 0x00, 0x70, 0x4A,
-  0x00, 0x70, 0x7D, 0x00, 0x70, 0x77, 0x00, 0x70, 0xAD, 0x02, 0x05, 0x25,
-  0x00, 0x71, 0x45, 0x02, 0x42, 0x63, 0x00, 0x71, 0x9C, 0x02, 0x43, 0xAB,
-  0x00, 0x72, 0x28, 0x00, 0x72, 0x35, 0x00, 0x72, 0x50, 0x02, 0x46, 0x08,
-  0x00, 0x72, 0x80, 0x00, 0x72, 0x95, 0x02, 0x47, 0x35, 0x02, 0x48, 0x14,
-  0x00, 0x73, 0x7A, 0x00, 0x73, 0x8B, 0x00, 0x3E, 0xAC, 0x00, 0x73, 0xA5,
-  0x00, 0x3E, 0xB8, 0x00, 0x3E, 0xB8, 0x00, 0x74, 0x47, 0x00, 0x74, 0x5C,
-  0x00, 0x74, 0x71, 0x00, 0x74, 0x85, 0x00, 0x74, 0xCA, 0x00, 0x3F, 0x1B,
-  0x00, 0x75, 0x24, 0x02, 0x4C, 0x36, 0x00, 0x75, 0x3E, 0x02, 0x4C, 0x92,
-  0x00, 0x75, 0x70, 0x02, 0x21, 0x9F, 0x00, 0x76, 0x10, 0x02, 0x4F, 0xA1,
-  0x02, 0x4F, 0xB8, 0x02, 0x50, 0x44, 0x00, 0x3F, 0xFC, 0x00, 0x40, 0x08,
-  0x00, 0x76, 0xF4, 0x02, 0x50, 0xF3, 0x02, 0x50, 0xF2, 0x02, 0x51, 0x19,
-  0x02, 0x51, 0x33, 0x00, 0x77, 0x1E, 0x00, 0x77, 0x1F, 0x00, 0x77, 0x1F,
-  0x00, 0x77, 0x4A, 0x00, 0x40, 0x39, 0x00, 0x77, 0x8B, 0x00, 0x40, 0x46,
-  0x00, 0x40, 0x96, 0x02, 0x54, 0x1D, 0x00, 0x78, 0x4E, 0x00, 0x78, 0x8C,
-  0x00, 0x78, 0xCC, 0x00, 0x40, 0xE3, 0x02, 0x56, 0x26, 0x00, 0x79, 0x56,
-  0x02, 0x56, 0x9A, 0x02, 0x56, 0xC5, 0x00, 0x79, 0x8F, 0x00, 0x79, 0xEB,
-  0x00, 0x41, 0x2F, 0x00, 0x7A, 0x40, 0x00, 0x7A, 0x4A, 0x00, 0x7A, 0x4F,
-  0x02, 0x59, 0x7C, 0x02, 0x5A, 0xA7, 0x02, 0x5A, 0xA7, 0x00, 0x7A, 0xEE,
-  0x00, 0x42, 0x02, 0x02, 0x5B, 0xAB, 0x00, 0x7B, 0xC6, 0x00, 0x7B, 0xC9,
-  0x00, 0x42, 0x27, 0x02, 0x5C, 0x80, 0x00, 0x7C, 0xD2, 0x00, 0x42, 0xA0,
-  0x00, 0x7C, 0xE8, 0x00, 0x7C, 0xE3, 0x00, 0x7D, 0x00, 0x02, 0x5F, 0x86,
-  0x00, 0x7D, 0x63, 0x00, 0x43, 0x01, 0x00, 0x7D, 0xC7, 0x00, 0x7E, 0x02,
-  0x00, 0x7E, 0x45, 0x00, 0x43, 0x34, 0x02, 0x62, 0x28, 0x02, 0x62, 0x47,
-  0x00, 0x43, 0x59, 0x02, 0x62, 0xD9, 0x00, 0x7F, 0x7A, 0x02, 0x63, 0x3E,
-  0x00, 0x7F, 0x95, 0x00, 0x7F, 0xFA, 0x00, 0x80, 0x05, 0x02, 0x64, 0xDA,
-  0x02, 0x65, 0x23, 0x00, 0x80, 0x60, 0x02, 0x65, 0xA8, 0x00, 0x80, 0x70,
-  0x02, 0x33, 0x5F, 0x00, 0x43, 0xD5, 0x00, 0x80, 0xB2, 0x00, 0x81, 0x03,
-  0x00, 0x44, 0x0B, 0x00, 0x81, 0x3E, 0x00, 0x5A, 0xB5, 0x02, 0x67, 0xA7,
-  0x02, 0x67, 0xB5, 0x02, 0x33, 0x93, 0x02, 0x33, 0x9C, 0x00, 0x82, 0x01,
-  0x00, 0x82, 0x04, 0x00, 0x8F, 0x9E, 0x00, 0x44, 0x6B, 0x00, 0x82, 0x91,
-  0x00, 0x82, 0x8B, 0x00, 0x82, 0x9D, 0x00, 0x52, 0xB3, 0x00, 0x82, 0xB1,
-  0x00, 0x82, 0xB3, 0x00, 0x82, 0xBD, 0x00, 0x82, 0xE6, 0x02, 0x6B, 0x3C,
-  0x00, 0x82, 0xE5, 0x00, 0x83, 0x1D, 0x00, 0x83, 0x63, 0x00, 0x83, 0xAD,
-  0x00, 0x83, 0x23, 0x00, 0x83, 0xBD, 0x00, 0x83, 0xE7, 0x00, 0x84, 0x57,
-  0x00, 0x83, 0x53, 0x00, 0x83, 0xCA, 0x00, 0x83, 0xCC, 0x00, 0x83, 0xDC,
-  0x02, 0x6C, 0x36, 0x02, 0x6D, 0x6B, 0x02, 0x6C, 0xD5, 0x00, 0x45, 0x2B,
-  0x00, 0x84, 0xF1, 0x00, 0x84, 0xF3, 0x00, 0x85, 0x16, 0x02, 0x73, 0xCA,
-  0x00, 0x85, 0x64, 0x02, 0x6F, 0x2C, 0x00, 0x45, 0x5D, 0x00, 0x45, 0x61,
-  0x02, 0x6F, 0xB1, 0x02, 0x70, 0xD2, 0x00, 0x45, 0x6B, 0x00, 0x86, 0x50,
-  0x00, 0x86, 0x5C, 0x00, 0x86, 0x67, 0x00, 0x86, 0x69, 0x00, 0x86, 0xA9,
-  0x00, 0x86, 0x88, 0x00, 0x87, 0x0E, 0x00, 0x86, 0xE2, 0x00, 0x87, 0x79,
-  0x00, 0x87, 0x28, 0x00, 0x87, 0x6B, 0x00, 0x87, 0x86, 0x00, 0x45, 0xD7,
-  0x00, 0x87, 0xE1, 0x00, 0x88, 0x01, 0x00, 0x45, 0xF9, 0x00, 0x88, 0x60,
-  0x00, 0x88, 0x63, 0x02, 0x76, 0x67, 0x00, 0x88, 0xD7, 0x00, 0x88, 0xDE,
-  0x00, 0x46, 0x35, 0x00, 0x88, 0xFA, 0x00, 0x34, 0xBB, 0x02, 0x78, 0xAE,
-  0x02, 0x79, 0x66, 0x00, 0x46, 0xBE, 0x00, 0x46, 0xC7, 0x00, 0x8A, 0xA0,
-  0x00, 0x8A, 0xED, 0x00, 0x8B, 0x8A, 0x00, 0x8C, 0x55, 0x02, 0x7C, 0xA8,
-  0x00, 0x8C, 0xAB, 0x00, 0x8C, 0xC1, 0x00, 0x8D, 0x1B, 0x00, 0x8D, 0x77,
-  0x02, 0x7F, 0x2F, 0x02, 0x08, 0x04, 0x00, 0x8D, 0xCB, 0x00, 0x8D, 0xBC,
-  0x00, 0x8D, 0xF0, 0x02, 0x08, 0xDE, 0x00, 0x8E, 0xD4, 0x00, 0x8F, 0x38,
-  0x02, 0x85, 0xD2, 0x02, 0x85, 0xED, 0x00, 0x90, 0x94, 0x00, 0x90, 0xF1,
-  0x00, 0x91, 0x11, 0x02, 0x87, 0x2E, 0x00, 0x91, 0x1B, 0x00, 0x92, 0x38,
-  0x00, 0x92, 0xD7, 0x00, 0x92, 0xD8, 0x00, 0x92, 0x7C, 0x00, 0x93, 0xF9,
-  0x00, 0x94, 0x15, 0x02, 0x8B, 0xFA, 0x00, 0x95, 0x8B, 0x00, 0x49, 0x95,
-  0x00, 0x95, 0xB7, 0x02, 0x8D, 0x77, 0x00, 0x49, 0xE6, 0x00, 0x96, 0xC3,
-  0x00, 0x5D, 0xB2, 0x00, 0x97, 0x23, 0x02, 0x91, 0x45, 0x02, 0x92, 0x1A,
-  0x00, 0x4A, 0x6E, 0x00, 0x4A, 0x76, 0x00, 0x97, 0xE0, 0x02, 0x94, 0x0A,
-  0x00, 0x4A, 0xB2, 0x02, 0x94, 0x96, 0x00, 0x98, 0x0B, 0x00, 0x98, 0x0B,
-  0x00, 0x98, 0x29, 0x02, 0x95, 0xB6, 0x00, 0x98, 0xE2, 0x00, 0x4B, 0x33,
-  0x00, 0x99, 0x29, 0x00, 0x99, 0xA7, 0x00, 0x99, 0xC2, 0x00, 0x99, 0xFE,
-  0x00, 0x4B, 0xCE, 0x02, 0x9B, 0x30, 0x00, 0x9B, 0x12, 0x00, 0x9C, 0x40,
-  0x00, 0x9C, 0xFD, 0x00, 0x4C, 0xCE, 0x00, 0x4C, 0xED, 0x00, 0x9D, 0x67,
-  0x02, 0xA0, 0xCE, 0x00, 0x4C, 0xF8, 0x02, 0xA1, 0x05, 0x02, 0xA2, 0x0E,
-  0x02, 0xA2, 0x91, 0x00, 0x9E, 0xBB, 0x00, 0x4D, 0x56, 0x00, 0x9E, 0xF9,
-  0x00, 0x9E, 0xFE, 0x00, 0x9F, 0x05, 0x00, 0x9F, 0x0F, 0x00, 0x9F, 0x16,
-  0x00, 0x9F, 0x3B, 0x02, 0xA6, 0x00
+  0x00, 0x00, 0x44, 0x9C, 0x00, 0x57, 0x00, 0x00, 0x5A, 0x38, 0x00, 0x41,
+  0x38, 0x00, 0x42, 0x38, 0x00, 0x43, 0x38, 0x00, 0x44, 0x38, 0x00, 0x45,
+  0x38, 0x00, 0x46, 0x38, 0x00, 0x47, 0x38, 0x00, 0x48, 0x38, 0x00, 0x49,
+  0x38, 0x00, 0x4A, 0x38, 0x00, 0x4B, 0x38, 0x00, 0x4C, 0x38, 0x00, 0x4D,
+  0x38, 0x00, 0x4E, 0x38, 0x00, 0x4F, 0x38, 0x00, 0x50, 0x38, 0x00, 0x51,
+  0x38, 0x00, 0x52, 0x38, 0x00, 0x53, 0x38, 0x00, 0x54, 0x38, 0x00, 0x55,
+  0x38, 0x00, 0x56, 0x38, 0x00, 0x57, 0x38, 0x00, 0x58, 0x38, 0x00, 0x59,
+  0x38, 0x00, 0x5A, 0xB8, 0x00, 0x48, 0x00, 0x00, 0x56, 0xB8, 0x00, 0x4D,
+  0x00, 0x00, 0x56, 0xB8, 0x00, 0x53, 0x00, 0x00, 0x44, 0xB8, 0x00, 0x53,
+  0x00, 0x00, 0x53, 0xB8, 0x00, 0x50, 0x80, 0x00, 0x50, 0x00, 0x00, 0x56,
+  0xB8, 0x00, 0x57, 0x00, 0x00, 0x43, 0xB8, 0x00, 0x44, 0x00, 0x00, 0x4A,
+  0xB8, 0x30, 0x7B, 0x00, 0x30, 0x4B, 0xB8, 0x30, 0xB3, 0x00, 0x30, 0xB3,
+  0x38, 0x30, 0xB5, 0x38, 0x62, 0x4B, 0x38, 0x5B, 0x57, 0x38, 0x53, 0xCC,
+  0x38, 0x30, 0xC7, 0x38, 0x4E, 0x8C, 0x38, 0x59, 0x1A, 0x38, 0x89, 0xE3,
+  0x38, 0x59, 0x29, 0x38, 0x4E, 0xA4, 0x38, 0x66, 0x20, 0x38, 0x71, 0x21,
+  0x38, 0x65, 0x99, 0x38, 0x52, 0x4D, 0x38, 0x5F, 0x8C, 0x38, 0x51, 0x8D,
+  0x38, 0x65, 0xB0, 0x38, 0x52, 0x1D, 0x38, 0x7D, 0x42, 0x38, 0x75, 0x1F,
+  0x38, 0x8C, 0xA9, 0x38, 0x58, 0xF0, 0x38, 0x54, 0x39, 0x38, 0x6F, 0x14,
+  0x38, 0x62, 0x95, 0x38, 0x63, 0x55, 0x38, 0x4E, 0x00, 0x38, 0x4E, 0x09,
+  0x38, 0x90, 0x4A, 0x38, 0x5D, 0xE6, 0x38, 0x4E, 0x2D, 0x38, 0x53, 0xF3,
+  0x38, 0x63, 0x07, 0x38, 0x8D, 0x70, 0x38, 0x62, 0x53, 0x38, 0x79, 0x81,
+  0x38, 0x7A, 0x7A, 0x38, 0x54, 0x08, 0x38, 0x6E, 0x80, 0x38, 0x67, 0x09,
+  0x38, 0x67, 0x08, 0x38, 0x75, 0x33, 0x38, 0x52, 0x72, 0x38, 0x55, 0xB6,
+  0xC0, 0x30, 0x14, 0x80, 0x67, 0x2C, 0x00, 0x30, 0x15, 0xC0, 0x30, 0x14,
+  0x80, 0x4E, 0x09, 0x00, 0x30, 0x15, 0xC0, 0x30, 0x14, 0x80, 0x4E, 0x8C,
+  0x00, 0x30, 0x15, 0xC0, 0x30, 0x14, 0x80, 0x5B, 0x89, 0x00, 0x30, 0x15,
+  0xC0, 0x30, 0x14, 0x80, 0x70, 0xB9, 0x00, 0x30, 0x15, 0xC0, 0x30, 0x14,
+  0x80, 0x62, 0x53, 0x00, 0x30, 0x15, 0xC0, 0x30, 0x14, 0x80, 0x76, 0xD7,
+  0x00, 0x30, 0x15, 0xC0, 0x30, 0x14, 0x80, 0x52, 0xDD, 0x00, 0x30, 0x15,
+  0xC0, 0x30, 0x14, 0x80, 0x65, 0x57, 0x00, 0x30, 0x15, 0x1C, 0x5F, 0x97,
+  0x1C, 0x53, 0xEF, 0x00, 0x4E, 0x3D, 0x00, 0x4E, 0x38, 0x00, 0x4E, 0x41,
+  0x02, 0x01, 0x22, 0x00, 0x4F, 0x60, 0x00, 0x4F, 0xAE, 0x00, 0x4F, 0xBB,
+  0x00, 0x50, 0x02, 0x00, 0x50, 0x7A, 0x00, 0x50, 0x99, 0x00, 0x50, 0xE7,
+  0x00, 0x50, 0xCF, 0x00, 0x34, 0x9E, 0x02, 0x06, 0x3A, 0x00, 0x51, 0x4D,
+  0x00, 0x51, 0x54, 0x00, 0x51, 0x64, 0x00, 0x51, 0x77, 0x02, 0x05, 0x1C,
+  0x00, 0x34, 0xB9, 0x00, 0x51, 0x67, 0x00, 0x51, 0x8D, 0x02, 0x05, 0x4B,
+  0x00, 0x51, 0x97, 0x00, 0x51, 0xA4, 0x00, 0x4E, 0xCC, 0x00, 0x51, 0xAC,
+  0x00, 0x51, 0xB5, 0x02, 0x91, 0xDF, 0x00, 0x51, 0xF5, 0x00, 0x52, 0x03,
+  0x00, 0x34, 0xDF, 0x00, 0x52, 0x3B, 0x00, 0x52, 0x46, 0x00, 0x52, 0x72,
+  0x00, 0x52, 0x77, 0x00, 0x35, 0x15, 0x00, 0x52, 0xC7, 0x00, 0x52, 0xC9,
+  0x00, 0x52, 0xE4, 0x00, 0x52, 0xFA, 0x00, 0x53, 0x05, 0x00, 0x53, 0x06,
+  0x00, 0x53, 0x17, 0x00, 0x53, 0x49, 0x00, 0x53, 0x51, 0x00, 0x53, 0x5A,
+  0x00, 0x53, 0x73, 0x00, 0x53, 0x7D, 0x00, 0x53, 0x7F, 0x00, 0x53, 0x7F,
+  0x00, 0x53, 0x7F, 0x02, 0x0A, 0x2C, 0x00, 0x70, 0x70, 0x00, 0x53, 0xCA,
+  0x00, 0x53, 0xDF, 0x02, 0x0B, 0x63, 0x00, 0x53, 0xEB, 0x00, 0x53, 0xF1,
+  0x00, 0x54, 0x06, 0x00, 0x54, 0x9E, 0x00, 0x54, 0x38, 0x00, 0x54, 0x48,
+  0x00, 0x54, 0x68, 0x00, 0x54, 0xA2, 0x00, 0x54, 0xF6, 0x00, 0x55, 0x10,
+  0x00, 0x55, 0x53, 0x00, 0x55, 0x63, 0x00, 0x55, 0x84, 0x00, 0x55, 0x84,
+  0x00, 0x55, 0x99, 0x00, 0x55, 0xAB, 0x00, 0x55, 0xB3, 0x00, 0x55, 0xC2,
+  0x00, 0x57, 0x16, 0x00, 0x56, 0x06, 0x00, 0x57, 0x17, 0x00, 0x56, 0x51,
+  0x00, 0x56, 0x74, 0x00, 0x52, 0x07, 0x00, 0x58, 0xEE, 0x00, 0x57, 0xCE,
+  0x00, 0x57, 0xF4, 0x00, 0x58, 0x0D, 0x00, 0x57, 0x8B, 0x00, 0x58, 0x32,
+  0x00, 0x58, 0x31, 0x00, 0x58, 0xAC, 0x02, 0x14, 0xE4, 0x00, 0x58, 0xF2,
+  0x00, 0x58, 0xF7, 0x00, 0x59, 0x06, 0x00, 0x59, 0x1A, 0x00, 0x59, 0x22,
+  0x00, 0x59, 0x62, 0x02, 0x16, 0xA8, 0x02, 0x16, 0xEA, 0x00, 0x59, 0xEC,
+  0x00, 0x5A, 0x1B, 0x00, 0x5A, 0x27, 0x00, 0x59, 0xD8, 0x00, 0x5A, 0x66,
+  0x00, 0x36, 0xEE, 0x00, 0x36, 0xFC, 0x00, 0x5B, 0x08, 0x00, 0x5B, 0x3E,
+  0x00, 0x5B, 0x3E, 0x02, 0x19, 0xC8, 0x00, 0x5B, 0xC3, 0x00, 0x5B, 0xD8,
+  0x00, 0x5B, 0xE7, 0x00, 0x5B, 0xF3, 0x02, 0x1B, 0x18, 0x00, 0x5B, 0xFF,
+  0x00, 0x5C, 0x06, 0x00, 0x5F, 0x53, 0x00, 0x5C, 0x22, 0x00, 0x37, 0x81,
+  0x00, 0x5C, 0x60, 0x00, 0x5C, 0x6E, 0x00, 0x5C, 0xC0, 0x00, 0x5C, 0x8D,
+  0x02, 0x1D, 0xE4, 0x00, 0x5D, 0x43, 0x02, 0x1D, 0xE6, 0x00, 0x5D, 0x6E,
+  0x00, 0x5D, 0x6B, 0x00, 0x5D, 0x7C, 0x00, 0x5D, 0xE1, 0x00, 0x5D, 0xE2,
+  0x00, 0x38, 0x2F, 0x00, 0x5D, 0xFD, 0x00, 0x5E, 0x28, 0x00, 0x5E, 0x3D,
+  0x00, 0x5E, 0x69, 0x00, 0x38, 0x62, 0x02, 0x21, 0x83, 0x00, 0x38, 0x7C,
+  0x00, 0x5E, 0xB0, 0x00, 0x5E, 0xB3, 0x00, 0x5E, 0xB6, 0x00, 0x5E, 0xCA,
+  0x02, 0xA3, 0x92, 0x00, 0x5E, 0xFE, 0x02, 0x23, 0x31, 0x02, 0x23, 0x31,
+  0x00, 0x82, 0x01, 0x00, 0x5F, 0x22, 0x00, 0x5F, 0x22, 0x00, 0x38, 0xC7,
+  0x02, 0x32, 0xB8, 0x02, 0x61, 0xDA, 0x00, 0x5F, 0x62, 0x00, 0x5F, 0x6B,
+  0x00, 0x38, 0xE3, 0x00, 0x5F, 0x9A, 0x00, 0x5F, 0xCD, 0x00, 0x5F, 0xD7,
+  0x00, 0x5F, 0xF9, 0x00, 0x60, 0x81, 0x00, 0x39, 0x3A, 0x00, 0x39, 0x1C,
+  0x00, 0x60, 0x94, 0x02, 0x26, 0xD4, 0x00, 0x60, 0xC7, 0x00, 0x61, 0x48,
+  0x00, 0x61, 0x4C, 0x00, 0x61, 0x4E, 0x00, 0x61, 0x4C, 0x00, 0x61, 0x7A,
+  0x00, 0x61, 0x8E, 0x00, 0x61, 0xB2, 0x00, 0x61, 0xA4, 0x00, 0x61, 0xAF,
+  0x00, 0x61, 0xDE, 0x00, 0x61, 0xF2, 0x00, 0x61, 0xF6, 0x00, 0x62, 0x10,
+  0x00, 0x62, 0x1B, 0x00, 0x62, 0x5D, 0x00, 0x62, 0xB1, 0x00, 0x62, 0xD4,
+  0x00, 0x63, 0x50, 0x02, 0x2B, 0x0C, 0x00, 0x63, 0x3D, 0x00, 0x62, 0xFC,
+  0x00, 0x63, 0x68, 0x00, 0x63, 0x83, 0x00, 0x63, 0xE4, 0x02, 0x2B, 0xF1,
+  0x00, 0x64, 0x22, 0x00, 0x63, 0xC5, 0x00, 0x63, 0xA9, 0x00, 0x3A, 0x2E,
+  0x00, 0x64, 0x69, 0x00, 0x64, 0x7E, 0x00, 0x64, 0x9D, 0x00, 0x64, 0x77,
+  0x00, 0x3A, 0x6C, 0x00, 0x65, 0x4F, 0x00, 0x65, 0x6C, 0x02, 0x30, 0x0A,
+  0x00, 0x65, 0xE3, 0x00, 0x66, 0xF8, 0x00, 0x66, 0x49, 0x00, 0x3B, 0x19,
+  0x00, 0x66, 0x91, 0x00, 0x3B, 0x08, 0x00, 0x3A, 0xE4, 0x00, 0x51, 0x92,
+  0x00, 0x51, 0x95, 0x00, 0x67, 0x00, 0x00, 0x66, 0x9C, 0x00, 0x80, 0xAD,
+  0x00, 0x43, 0xD9, 0x00, 0x67, 0x17, 0x00, 0x67, 0x1B, 0x00, 0x67, 0x21,
+  0x00, 0x67, 0x5E, 0x00, 0x67, 0x53, 0x02, 0x33, 0xC3, 0x00, 0x3B, 0x49,
+  0x00, 0x67, 0xFA, 0x00, 0x67, 0x85, 0x00, 0x68, 0x52, 0x00, 0x68, 0x85,
+  0x02, 0x34, 0x6D, 0x00, 0x68, 0x8E, 0x00, 0x68, 0x1F, 0x00, 0x69, 0x14,
+  0x00, 0x3B, 0x9D, 0x00, 0x69, 0x42, 0x00, 0x69, 0xA3, 0x00, 0x69, 0xEA,
+  0x00, 0x6A, 0xA8, 0x02, 0x36, 0xA3, 0x00, 0x6A, 0xDB, 0x00, 0x3C, 0x18,
+  0x00, 0x6B, 0x21, 0x02, 0x38, 0xA7, 0x00, 0x6B, 0x54, 0x00, 0x3C, 0x4E,
+  0x00, 0x6B, 0x72, 0x00, 0x6B, 0x9F, 0x00, 0x6B, 0xBA, 0x00, 0x6B, 0xBB,
+  0x02, 0x3A, 0x8D, 0x02, 0x1D, 0x0B, 0x02, 0x3A, 0xFA, 0x00, 0x6C, 0x4E,
+  0x02, 0x3C, 0xBC, 0x00, 0x6C, 0xBF, 0x00, 0x6C, 0xCD, 0x00, 0x6C, 0x67,
+  0x00, 0x6D, 0x16, 0x00, 0x6D, 0x3E, 0x00, 0x6D, 0x77, 0x00, 0x6D, 0x41,
+  0x00, 0x6D, 0x69, 0x00, 0x6D, 0x78, 0x00, 0x6D, 0x85, 0x02, 0x3D, 0x1E,
+  0x00, 0x6D, 0x34, 0x00, 0x6E, 0x2F, 0x00, 0x6E, 0x6E, 0x00, 0x3D, 0x33,
+  0x00, 0x6E, 0xCB, 0x00, 0x6E, 0xC7, 0x02, 0x3E, 0xD1, 0x00, 0x6D, 0xF9,
+  0x00, 0x6F, 0x6E, 0x02, 0x3F, 0x5E, 0x02, 0x3F, 0x8E, 0x00, 0x6F, 0xC6,
+  0x00, 0x70, 0x39, 0x00, 0x70, 0x1E, 0x00, 0x70, 0x1B, 0x00, 0x3D, 0x96,
+  0x00, 0x70, 0x4A, 0x00, 0x70, 0x7D, 0x00, 0x70, 0x77, 0x00, 0x70, 0xAD,
+  0x02, 0x05, 0x25, 0x00, 0x71, 0x45, 0x02, 0x42, 0x63, 0x00, 0x71, 0x9C,
+  0x02, 0x43, 0xAB, 0x00, 0x72, 0x28, 0x00, 0x72, 0x35, 0x00, 0x72, 0x50,
+  0x02, 0x46, 0x08, 0x00, 0x72, 0x80, 0x00, 0x72, 0x95, 0x02, 0x47, 0x35,
+  0x02, 0x48, 0x14, 0x00, 0x73, 0x7A, 0x00, 0x73, 0x8B, 0x00, 0x3E, 0xAC,
+  0x00, 0x73, 0xA5, 0x00, 0x3E, 0xB8, 0x00, 0x3E, 0xB8, 0x00, 0x74, 0x47,
+  0x00, 0x74, 0x5C, 0x00, 0x74, 0x71, 0x00, 0x74, 0x85, 0x00, 0x74, 0xCA,
+  0x00, 0x3F, 0x1B, 0x00, 0x75, 0x24, 0x02, 0x4C, 0x36, 0x00, 0x75, 0x3E,
+  0x02, 0x4C, 0x92, 0x00, 0x75, 0x70, 0x02, 0x21, 0x9F, 0x00, 0x76, 0x10,
+  0x02, 0x4F, 0xA1, 0x02, 0x4F, 0xB8, 0x02, 0x50, 0x44, 0x00, 0x3F, 0xFC,
+  0x00, 0x40, 0x08, 0x00, 0x76, 0xF4, 0x02, 0x50, 0xF3, 0x02, 0x50, 0xF2,
+  0x02, 0x51, 0x19, 0x02, 0x51, 0x33, 0x00, 0x77, 0x1E, 0x00, 0x77, 0x1F,
+  0x00, 0x77, 0x1F, 0x00, 0x77, 0x4A, 0x00, 0x40, 0x39, 0x00, 0x77, 0x8B,
+  0x00, 0x40, 0x46, 0x00, 0x40, 0x96, 0x02, 0x54, 0x1D, 0x00, 0x78, 0x4E,
+  0x00, 0x78, 0x8C, 0x00, 0x78, 0xCC, 0x00, 0x40, 0xE3, 0x02, 0x56, 0x26,
+  0x00, 0x79, 0x56, 0x02, 0x56, 0x9A, 0x02, 0x56, 0xC5, 0x00, 0x79, 0x8F,
+  0x00, 0x79, 0xEB, 0x00, 0x41, 0x2F, 0x00, 0x7A, 0x40, 0x00, 0x7A, 0x4A,
+  0x00, 0x7A, 0x4F, 0x02, 0x59, 0x7C, 0x02, 0x5A, 0xA7, 0x02, 0x5A, 0xA7,
+  0x00, 0x7A, 0xEE, 0x00, 0x42, 0x02, 0x02, 0x5B, 0xAB, 0x00, 0x7B, 0xC6,
+  0x00, 0x7B, 0xC9, 0x00, 0x42, 0x27, 0x02, 0x5C, 0x80, 0x00, 0x7C, 0xD2,
+  0x00, 0x42, 0xA0, 0x00, 0x7C, 0xE8, 0x00, 0x7C, 0xE3, 0x00, 0x7D, 0x00,
+  0x02, 0x5F, 0x86, 0x00, 0x7D, 0x63, 0x00, 0x43, 0x01, 0x00, 0x7D, 0xC7,
+  0x00, 0x7E, 0x02, 0x00, 0x7E, 0x45, 0x00, 0x43, 0x34, 0x02, 0x62, 0x28,
+  0x02, 0x62, 0x47, 0x00, 0x43, 0x59, 0x02, 0x62, 0xD9, 0x00, 0x7F, 0x7A,
+  0x02, 0x63, 0x3E, 0x00, 0x7F, 0x95, 0x00, 0x7F, 0xFA, 0x00, 0x80, 0x05,
+  0x02, 0x64, 0xDA, 0x02, 0x65, 0x23, 0x00, 0x80, 0x60, 0x02, 0x65, 0xA8,
+  0x00, 0x80, 0x70, 0x02, 0x33, 0x5F, 0x00, 0x43, 0xD5, 0x00, 0x80, 0xB2,
+  0x00, 0x81, 0x03, 0x00, 0x44, 0x0B, 0x00, 0x81, 0x3E, 0x00, 0x5A, 0xB5,
+  0x02, 0x67, 0xA7, 0x02, 0x67, 0xB5, 0x02, 0x33, 0x93, 0x02, 0x33, 0x9C,
+  0x00, 0x82, 0x01, 0x00, 0x82, 0x04, 0x00, 0x8F, 0x9E, 0x00, 0x44, 0x6B,
+  0x00, 0x82, 0x91, 0x00, 0x82, 0x8B, 0x00, 0x82, 0x9D, 0x00, 0x52, 0xB3,
+  0x00, 0x82, 0xB1, 0x00, 0x82, 0xB3, 0x00, 0x82, 0xBD, 0x00, 0x82, 0xE6,
+  0x02, 0x6B, 0x3C, 0x00, 0x82, 0xE5, 0x00, 0x83, 0x1D, 0x00, 0x83, 0x63,
+  0x00, 0x83, 0xAD, 0x00, 0x83, 0x23, 0x00, 0x83, 0xBD, 0x00, 0x83, 0xE7,
+  0x00, 0x84, 0x57, 0x00, 0x83, 0x53, 0x00, 0x83, 0xCA, 0x00, 0x83, 0xCC,
+  0x00, 0x83, 0xDC, 0x02, 0x6C, 0x36, 0x02, 0x6D, 0x6B, 0x02, 0x6C, 0xD5,
+  0x00, 0x45, 0x2B, 0x00, 0x84, 0xF1, 0x00, 0x84, 0xF3, 0x00, 0x85, 0x16,
+  0x02, 0x73, 0xCA, 0x00, 0x85, 0x64, 0x02, 0x6F, 0x2C, 0x00, 0x45, 0x5D,
+  0x00, 0x45, 0x61, 0x02, 0x6F, 0xB1, 0x02, 0x70, 0xD2, 0x00, 0x45, 0x6B,
+  0x00, 0x86, 0x50, 0x00, 0x86, 0x5C, 0x00, 0x86, 0x67, 0x00, 0x86, 0x69,
+  0x00, 0x86, 0xA9, 0x00, 0x86, 0x88, 0x00, 0x87, 0x0E, 0x00, 0x86, 0xE2,
+  0x00, 0x87, 0x79, 0x00, 0x87, 0x28, 0x00, 0x87, 0x6B, 0x00, 0x87, 0x86,
+  0x00, 0x45, 0xD7, 0x00, 0x87, 0xE1, 0x00, 0x88, 0x01, 0x00, 0x45, 0xF9,
+  0x00, 0x88, 0x60, 0x00, 0x88, 0x63, 0x02, 0x76, 0x67, 0x00, 0x88, 0xD7,
+  0x00, 0x88, 0xDE, 0x00, 0x46, 0x35, 0x00, 0x88, 0xFA, 0x00, 0x34, 0xBB,
+  0x02, 0x78, 0xAE, 0x02, 0x79, 0x66, 0x00, 0x46, 0xBE, 0x00, 0x46, 0xC7,
+  0x00, 0x8A, 0xA0, 0x00, 0x8A, 0xED, 0x00, 0x8B, 0x8A, 0x00, 0x8C, 0x55,
+  0x02, 0x7C, 0xA8, 0x00, 0x8C, 0xAB, 0x00, 0x8C, 0xC1, 0x00, 0x8D, 0x1B,
+  0x00, 0x8D, 0x77, 0x02, 0x7F, 0x2F, 0x02, 0x08, 0x04, 0x00, 0x8D, 0xCB,
+  0x00, 0x8D, 0xBC, 0x00, 0x8D, 0xF0, 0x02, 0x08, 0xDE, 0x00, 0x8E, 0xD4,
+  0x00, 0x8F, 0x38, 0x02, 0x85, 0xD2, 0x02, 0x85, 0xED, 0x00, 0x90, 0x94,
+  0x00, 0x90, 0xF1, 0x00, 0x91, 0x11, 0x02, 0x87, 0x2E, 0x00, 0x91, 0x1B,
+  0x00, 0x92, 0x38, 0x00, 0x92, 0xD7, 0x00, 0x92, 0xD8, 0x00, 0x92, 0x7C,
+  0x00, 0x93, 0xF9, 0x00, 0x94, 0x15, 0x02, 0x8B, 0xFA, 0x00, 0x95, 0x8B,
+  0x00, 0x49, 0x95, 0x00, 0x95, 0xB7, 0x02, 0x8D, 0x77, 0x00, 0x49, 0xE6,
+  0x00, 0x96, 0xC3, 0x00, 0x5D, 0xB2, 0x00, 0x97, 0x23, 0x02, 0x91, 0x45,
+  0x02, 0x92, 0x1A, 0x00, 0x4A, 0x6E, 0x00, 0x4A, 0x76, 0x00, 0x97, 0xE0,
+  0x02, 0x94, 0x0A, 0x00, 0x4A, 0xB2, 0x02, 0x94, 0x96, 0x00, 0x98, 0x0B,
+  0x00, 0x98, 0x0B, 0x00, 0x98, 0x29, 0x02, 0x95, 0xB6, 0x00, 0x98, 0xE2,
+  0x00, 0x4B, 0x33, 0x00, 0x99, 0x29, 0x00, 0x99, 0xA7, 0x00, 0x99, 0xC2,
+  0x00, 0x99, 0xFE, 0x00, 0x4B, 0xCE, 0x02, 0x9B, 0x30, 0x00, 0x9B, 0x12,
+  0x00, 0x9C, 0x40, 0x00, 0x9C, 0xFD, 0x00, 0x4C, 0xCE, 0x00, 0x4C, 0xED,
+  0x00, 0x9D, 0x67, 0x02, 0xA0, 0xCE, 0x00, 0x4C, 0xF8, 0x02, 0xA1, 0x05,
+  0x02, 0xA2, 0x0E, 0x02, 0xA2, 0x91, 0x00, 0x9E, 0xBB, 0x00, 0x4D, 0x56,
+  0x00, 0x9E, 0xF9, 0x00, 0x9E, 0xFE, 0x00, 0x9F, 0x05, 0x00, 0x9F, 0x0F,
+  0x00, 0x9F, 0x16, 0x00, 0x9F, 0x3B, 0x02, 0xA6, 0x00
 };
 
 const decomp_index_table_t gl_uninorm_decomp_index_table =
@@ -2520,121 +2531,120 @@
     34804, 34805, 34806, 34807, 34808, 34809, 34810, 34811,
     34812, 34813, 34814, 34815, 34816, 34817, 34818, 34819,
     34820, 34821, 34822, 34823, 34824, 34825, 34826,    -1,
-    34827, 34828, 34829, 34830, 34831,    -1,    -1,    -1,
+    34827, 34828, 34829, 34830, 34831, 34832, 34833, 34834,
+    34835, 34836, 34837, 34838, 34839,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    34832,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    34840,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    34834, 34837, 34840, 34841,    -1, 34843, 34846, 34849,
-       -1, 34850, 34852, 34853, 34854, 34855, 34856, 34857,
-    34858, 34859, 34860, 34861,    -1, 34862, 34863,    -1,
-       -1, 34865, 34866, 34867, 34868, 34869,    -1,    -1,
-    34870, 34872, 34875,    -1, 34877,    -1,  2110,    -1,
-    34879,    -1,  2112,  2113, 34882, 34883,    -1, 34884,
-    34885, 34886,    -1, 34887, 34888, 34889, 34890, 34891,
-    34892, 34893,    -1, 34894, 34897, 34898, 34899, 34900,
-    34901,    -1,    -1,    -1,    -1, 34902, 34903, 34904,
-    34905, 34906,    -1,    -1,    -1,    -1,    -1,    -1,
-    34907, 34910, 34913, 34917, 34920, 34923, 34926, 34929,
-    34932, 34935, 34938, 34941, 34944, 34947, 34950, 34953,
-    34955, 34956, 34958, 34961, 34963, 34964, 34966, 34969,
-    34973, 34975, 34976, 34978, 34981, 34982, 34983, 34984,
-    34985, 34986, 34988, 34991, 34993, 34994, 34996, 34999,
-    35003, 35005, 35006, 35008, 35011, 35012, 35013, 35014,
+    34842, 34845, 34848, 34849,    -1, 34851, 34854, 34857,
+       -1, 34858, 34860, 34861, 34862, 34863, 34864, 34865,
+    34866, 34867, 34868, 34869,    -1, 34870, 34871,    -1,
+       -1, 34873, 34874, 34875, 34876, 34877,    -1,    -1,
+    34878, 34880, 34883,    -1, 34885,    -1,  2118,    -1,
+    34887,    -1,  2120,  2121, 34890, 34891,    -1, 34892,
+    34893, 34894,    -1, 34895, 34896, 34897, 34898, 34899,
+    34900, 34901,    -1, 34902, 34905, 34906, 34907, 34908,
+    34909,    -1,    -1,    -1,    -1, 34910, 34911, 34912,
+    34913, 34914,    -1,    -1,    -1,    -1,    -1,    -1,
+    34915, 34918, 34921, 34925, 34928, 34931, 34934, 34937,
+    34940, 34943, 34946, 34949, 34952, 34955, 34958, 34961,
+    34963, 34964, 34966, 34969, 34971, 34972, 34974, 34977,
+    34981, 34983, 34984, 34986, 34989, 34990, 34991, 34992,
+    34993, 34994, 34996, 34999, 35001, 35002, 35004, 35007,
+    35011, 35013, 35014, 35016, 35019, 35020, 35021, 35022,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1, 35015,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1, 35023,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,  2250,  2252,    -1,    -1,    -1,    -1,
+       -1,    -1,  2258,  2260,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,  2254,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,  2262,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,  2256,  2258,  2260,
+       -1,    -1,    -1,    -1,    -1,  2264,  2266,  2268,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,  2262,    -1,    -1,    -1,
-       -1,  2264,    -1,    -1,  2266,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,  2270,    -1,    -1,    -1,
+       -1,  2272,    -1,    -1,  2274,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,  2268,    -1,  2270,    -1,
-       -1,    -1,    -1,    -1, 35040, 35042,    -1, 35045,
-    35047,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,  2276,    -1,  2278,    -1,
+       -1,    -1,    -1,    -1, 35048, 35050,    -1, 35053,
+    35055,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,  2282,    -1,    -1,  2284,    -1,    -1,  2286,
-       -1,  2288,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,  2290,    -1,    -1,  2292,    -1,    -1,  2294,
+       -1,  2296,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     2290,    -1,  2292,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,  2294,  2296,  2298,
-     2300,  2302,    -1,    -1,  2304,  2306,    -1,    -1,
-     2308,  2310,    -1,    -1,    -1,    -1,    -1,    -1,
-     2312,  2314,    -1,    -1,  2316,  2318,    -1,    -1,
-     2320,  2322,    -1,    -1,    -1,    -1,    -1,    -1,
+     2298,    -1,  2300,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,  2302,  2304,  2306,
+     2308,  2310,    -1,    -1,  2312,  2314,    -1,    -1,
+     2316,  2318,    -1,    -1,    -1,    -1,    -1,    -1,
+     2320,  2322,    -1,    -1,  2324,  2326,    -1,    -1,
+     2328,  2330,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,  2324,  2326,  2328,  2330,
+       -1,    -1,    -1,    -1,  2332,  2334,  2336,  2338,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     2332,  2334,  2336,  2338,    -1,    -1,    -1,    -1,
-       -1,    -1,  2340,  2342,  2344,  2346,    -1,    -1,
+     2340,  2342,  2344,  2346,    -1,    -1,    -1,    -1,
+       -1,    -1,  2348,  2350,  2352,  2354,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,  2348,  2349,    -1,    -1,    -1,    -1,    -1,
+       -1,  2356,  2357,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    35118, 35119, 35120, 35121, 35122, 35123, 35124, 35125,
-    35126, 35127, 35129, 35131, 35133, 35135, 35137, 35139,
-    35141, 35143, 35145, 35147, 35149, 35152, 35155, 35158,
-    35161, 35164, 35167, 35170, 35173, 35176, 35180, 35184,
-    35188, 35192, 35196, 35200, 35204, 35208, 35212, 35216,
-    35220, 35222, 35224, 35226, 35228, 35230, 35232, 35234,
-    35236, 35238, 35241, 35244, 35247, 35250, 35253, 35256,
-    35259, 35262, 35265, 35268, 35271, 35274, 35277, 35280,
-    35283, 35286, 35289, 35292, 35295, 35298, 35301, 35304,
-    35307, 35310, 35313, 35316, 35319, 35322, 35325, 35328,
-    35331, 35334, 35337, 35340, 35343, 35346, 35349, 35350,
-    35351, 35352, 35353, 35354, 35355, 35356, 35357, 35358,
+    35126, 35127, 35128, 35129, 35130, 35131, 35132, 35133,
+    35134, 35135, 35137, 35139, 35141, 35143, 35145, 35147,
+    35149, 35151, 35153, 35155, 35157, 35160, 35163, 35166,
+    35169, 35172, 35175, 35178, 35181, 35184, 35188, 35192,
+    35196, 35200, 35204, 35208, 35212, 35216, 35220, 35224,
+    35228, 35230, 35232, 35234, 35236, 35238, 35240, 35242,
+    35244, 35246, 35249, 35252, 35255, 35258, 35261, 35264,
+    35267, 35270, 35273, 35276, 35279, 35282, 35285, 35288,
+    35291, 35294, 35297, 35300, 35303, 35306, 35309, 35312,
+    35315, 35318, 35321, 35324, 35327, 35330, 35333, 35336,
+    35339, 35342, 35345, 35348, 35351, 35354, 35357, 35358,
     35359, 35360, 35361, 35362, 35363, 35364, 35365, 35366,
     35367, 35368, 35369, 35370, 35371, 35372, 35373, 35374,
     35375, 35376, 35377, 35378, 35379, 35380, 35381, 35382,
     35383, 35384, 35385, 35386, 35387, 35388, 35389, 35390,
     35391, 35392, 35393, 35394, 35395, 35396, 35397, 35398,
-    35399, 35400, 35401,    -1,    -1,    -1,    -1,    -1,
+    35399, 35400, 35401, 35402, 35403, 35404, 35405, 35406,
+    35407, 35408, 35409,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1, 35402,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1, 35410,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1, 35406, 35409, 35411,    -1,
+       -1,    -1,    -1,    -1, 35414, 35417, 35419,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,  2646,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,  2654,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1, 35416, 35417,    -1,    -1,
+       -1,    -1,    -1,    -1, 35424, 35425,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1, 35418,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1, 35426,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1, 35419,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1, 35427,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1, 35420,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1, 35428,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    35421, 35422, 35423, 35424, 35425, 35426, 35427, 35428,
     35429, 35430, 35431, 35432, 35433, 35434, 35435, 35436,
     35437, 35438, 35439, 35440, 35441, 35442, 35443, 35444,
     35445, 35446, 35447, 35448, 35449, 35450, 35451, 35452,
@@ -2660,44 +2670,44 @@
     35605, 35606, 35607, 35608, 35609, 35610, 35611, 35612,
     35613, 35614, 35615, 35616, 35617, 35618, 35619, 35620,
     35621, 35622, 35623, 35624, 35625, 35626, 35627, 35628,
-    35629, 35630, 35631, 35632, 35633, 35634,    -1,    -1,
+    35629, 35630, 35631, 35632, 35633, 35634, 35635, 35636,
+    35637, 35638, 35639, 35640, 35641, 35642,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    35635,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    35643,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1, 35636,    -1,
-    35637, 35638, 35639,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1, 35644,    -1,
+    35645, 35646, 35647,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,  2872,    -1,  2874,    -1,
-     2876,    -1,  2878,    -1,  2880,    -1,  2882,    -1,
+       -1,    -1,    -1,    -1,  2880,    -1,  2882,    -1,
      2884,    -1,  2886,    -1,  2888,    -1,  2890,    -1,
-     2892,    -1,  2894,    -1,    -1,  2896,    -1,  2898,
-       -1,  2900,    -1,    -1,    -1,    -1,    -1,    -1,
-     2902,  2904,    -1,  2906,  2908,    -1,  2910,  2912,
-       -1,  2914,  2916,    -1,  2918,  2920,    -1,    -1,
+     2892,    -1,  2894,    -1,  2896,    -1,  2898,    -1,
+     2900,    -1,  2902,    -1,    -1,  2904,    -1,  2906,
+       -1,  2908,    -1,    -1,    -1,    -1,    -1,    -1,
+     2910,  2912,    -1,  2914,  2916,    -1,  2918,  2920,
+       -1,  2922,  2924,    -1,  2926,  2928,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,  2922,    -1,    -1,    -1,
-       -1,    -1,    -1, 35692, 35694,    -1,  2928, 35698,
+       -1,    -1,    -1,    -1,  2930,    -1,    -1,    -1,
+       -1,    -1,    -1, 35700, 35702,    -1,  2936, 35706,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,  2932,    -1,  2934,    -1,
-     2936,    -1,  2938,    -1,  2940,    -1,  2942,    -1,
+       -1,    -1,    -1,    -1,  2940,    -1,  2942,    -1,
      2944,    -1,  2946,    -1,  2948,    -1,  2950,    -1,
-     2952,    -1,  2954,    -1,    -1,  2956,    -1,  2958,
-       -1,  2960,    -1,    -1,    -1,    -1,    -1,    -1,
-     2962,  2964,    -1,  2966,  2968,    -1,  2970,  2972,
-       -1,  2974,  2976,    -1,  2978,  2980,    -1,    -1,
+     2952,    -1,  2954,    -1,  2956,    -1,  2958,    -1,
+     2960,    -1,  2962,    -1,    -1,  2964,    -1,  2966,
+       -1,  2968,    -1,    -1,    -1,    -1,    -1,    -1,
+     2970,  2972,    -1,  2974,  2976,    -1,  2978,  2980,
+       -1,  2982,  2984,    -1,  2986,  2988,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,  2982,    -1,    -1,  2984,
-     2986,  2988,  2990,    -1,    -1,    -1,  2992, 35762,
+       -1,    -1,    -1,    -1,  2990,    -1,    -1,  2992,
+     2994,  2996,  2998,    -1,    -1,    -1,  3000, 35770,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1, 35764, 35765, 35766, 35767, 35768, 35769, 35770,
-    35771, 35772, 35773, 35774, 35775, 35776, 35777, 35778,
+       -1, 35772, 35773, 35774, 35775, 35776, 35777, 35778,
     35779, 35780, 35781, 35782, 35783, 35784, 35785, 35786,
     35787, 35788, 35789, 35790, 35791, 35792, 35793, 35794,
     35795, 35796, 35797, 35798, 35799, 35800, 35801, 35802,
@@ -2707,78 +2717,78 @@
     35827, 35828, 35829, 35830, 35831, 35832, 35833, 35834,
     35835, 35836, 35837, 35838, 35839, 35840, 35841, 35842,
     35843, 35844, 35845, 35846, 35847, 35848, 35849, 35850,
-    35851, 35852, 35853, 35854, 35855, 35856, 35857,    -1,
-       -1,    -1, 35858, 35859, 35860, 35861, 35862, 35863,
-    35864, 35865, 35866, 35867, 35868, 35869, 35870, 35871,
-    35872, 35875, 35878, 35881, 35884, 35887, 35890, 35893,
-    35896, 35899, 35902, 35905, 35908, 35911, 35914, 35918,
-    35922, 35926, 35930, 35934, 35938, 35942, 35946, 35950,
-    35954, 35958, 35962, 35966, 35970, 35974, 35981,    -1,
-    35987, 35990, 35993, 35996, 35999, 36002, 36005, 36008,
-    36011, 36014, 36017, 36020, 36023, 36026, 36029, 36032,
-    36035, 36038, 36041, 36044, 36047, 36050, 36053, 36056,
-    36059, 36062, 36065, 36068, 36071, 36074, 36077, 36080,
-    36083, 36086, 36089, 36092, 36095, 36096, 36097, 36098,
+    35851, 35852, 35853, 35854, 35855, 35856, 35857, 35858,
+    35859, 35860, 35861, 35862, 35863, 35864, 35865,    -1,
+       -1,    -1, 35866, 35867, 35868, 35869, 35870, 35871,
+    35872, 35873, 35874, 35875, 35876, 35877, 35878, 35879,
+    35880, 35883, 35886, 35889, 35892, 35895, 35898, 35901,
+    35904, 35907, 35910, 35913, 35916, 35919, 35922, 35926,
+    35930, 35934, 35938, 35942, 35946, 35950, 35954, 35958,
+    35962, 35966, 35970, 35974, 35978, 35982, 35989,    -1,
+    35995, 35998, 36001, 36004, 36007, 36010, 36013, 36016,
+    36019, 36022, 36025, 36028, 36031, 36034, 36037, 36040,
+    36043, 36046, 36049, 36052, 36055, 36058, 36061, 36064,
+    36067, 36070, 36073, 36076, 36079, 36082, 36085, 36088,
+    36091, 36094, 36097, 36100, 36103, 36104, 36105, 36106,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    36099, 36102, 36104, 36106, 36108, 36110, 36112, 36114,
-    36116, 36118, 36120, 36122, 36124, 36126, 36128, 36130,
-    36132, 36133, 36134, 36135, 36136, 36137, 36138, 36139,
-    36140, 36141, 36142, 36143, 36144, 36145, 36146, 36148,
-    36150, 36152, 36154, 36156, 36158, 36160, 36162, 36164,
-    36166, 36168, 36170, 36172, 36174, 36179, 36183,    -1,
-    36185, 36186, 36187, 36188, 36189, 36190, 36191, 36192,
+    36107, 36110, 36112, 36114, 36116, 36118, 36120, 36122,
+    36124, 36126, 36128, 36130, 36132, 36134, 36136, 36138,
+    36140, 36141, 36142, 36143, 36144, 36145, 36146, 36147,
+    36148, 36149, 36150, 36151, 36152, 36153, 36154, 36156,
+    36158, 36160, 36162, 36164, 36166, 36168, 36170, 36172,
+    36174, 36176, 36178, 36180, 36182, 36187, 36191,    -1,
     36193, 36194, 36195, 36196, 36197, 36198, 36199, 36200,
     36201, 36202, 36203, 36204, 36205, 36206, 36207, 36208,
     36209, 36210, 36211, 36212, 36213, 36214, 36215, 36216,
     36217, 36218, 36219, 36220, 36221, 36222, 36223, 36224,
     36225, 36226, 36227, 36228, 36229, 36230, 36231, 36232,
-    36233, 36234, 36236, 36238, 36240, 36242, 36244, 36246,
-    36248, 36250, 36252, 36254, 36256, 36258, 36260, 36262,
-    36264, 36266, 36268, 36270, 36272, 36274, 36276, 36278,
-    36280, 36282, 36285, 36288, 36291, 36293, 36296, 36298,
-    36301, 36302, 36303, 36304, 36305, 36306, 36307, 36308,
+    36233, 36234, 36235, 36236, 36237, 36238, 36239, 36240,
+    36241, 36242, 36244, 36246, 36248, 36250, 36252, 36254,
+    36256, 36258, 36260, 36262, 36264, 36266, 36268, 36270,
+    36272, 36274, 36276, 36278, 36280, 36282, 36284, 36286,
+    36288, 36290, 36293, 36296, 36299, 36301, 36304, 36306,
     36309, 36310, 36311, 36312, 36313, 36314, 36315, 36316,
     36317, 36318, 36319, 36320, 36321, 36322, 36323, 36324,
     36325, 36326, 36327, 36328, 36329, 36330, 36331, 36332,
     36333, 36334, 36335, 36336, 36337, 36338, 36339, 36340,
-    36341, 36342, 36343, 36344, 36345, 36346, 36347,    -1,
-    36348, 36352, 36356, 36360, 36363, 36367, 36370, 36373,
-    36378, 36382, 36385, 36388, 36391, 36395, 36399, 36402,
-    36405, 36407, 36410, 36414, 36418, 36420, 36425, 36431,
-    36436, 36439, 36444, 36449, 36453, 36456, 36459, 36462,
-    36466, 36471, 36475, 36478, 36481, 36484, 36486, 36488,
-    36490, 36492, 36495, 36498, 36503, 36506, 36510, 36515,
-    36518, 36520, 36522, 36527, 36531, 36536, 36539, 36544,
-    36546, 36549, 36552, 36555, 36558, 36561, 36565, 36568,
-    36570, 36573, 36576, 36579, 36583, 36586, 36589, 36592,
-    36597, 36601, 36603, 36608, 36610, 36614, 36618, 36621,
-    36624, 36627, 36631, 36633, 36636, 36640, 36642, 36647,
-    36650, 36652, 36654, 36656, 36658, 36660, 36662, 36664,
-    36666, 36668, 36670, 36673, 36676, 36679, 36682, 36685,
-    36688, 36691, 36694, 36697, 36700, 36703, 36706, 36709,
-    36712, 36715, 36718, 36720, 36722, 36725, 36727, 36729,
-    36731, 36734, 36737, 36739, 36741, 36743, 36745, 36747,
-    36751, 36753, 36755, 36757, 36759, 36761, 36763, 36765,
-    36767, 36770, 36774, 36776, 36778, 36780, 36782, 36784,
-    36786, 36788, 36791, 36794, 36797, 36800, 36802, 36804,
-    36806, 36808, 36810, 36812, 36814, 36816, 36818, 36820,
-    36823, 36826, 36828, 36831, 36834, 36837, 36839, 36842,
-    36845, 36849, 36851, 36854, 36857, 36860, 36863, 36868,
-    36874, 36876, 36878, 36880, 36882, 36884, 36886, 36888,
-    36890, 36892, 36894, 36896, 36898, 36900, 36902, 36904,
-    36906, 36908, 36910, 36914, 36916, 36918, 36920, 36924,
-    36927, 36929, 36931, 36933, 36935, 36937, 36939, 36941,
-    36943, 36945, 36947, 36950, 36952, 36954, 36957, 36960,
-    36962, 36966, 36969, 36971, 36973, 36975, 36977, 36980,
-    36983, 36985, 36987, 36989, 36991, 36993, 36995, 36997,
-    36999, 37001, 37004, 37007, 37010, 37013, 37016, 37019,
-    37022, 37025, 37028, 37031, 37034, 37037, 37040, 37043,
-    37046, 37049, 37052, 37055, 37058, 37061, 37064, 37067,
+    36341, 36342, 36343, 36344, 36345, 36346, 36347, 36348,
+    36349, 36350, 36351, 36352, 36353, 36354, 36355,    -1,
+    36356, 36360, 36364, 36368, 36371, 36375, 36378, 36381,
+    36386, 36390, 36393, 36396, 36399, 36403, 36407, 36410,
+    36413, 36415, 36418, 36422, 36426, 36428, 36433, 36439,
+    36444, 36447, 36452, 36457, 36461, 36464, 36467, 36470,
+    36474, 36479, 36483, 36486, 36489, 36492, 36494, 36496,
+    36498, 36500, 36503, 36506, 36511, 36514, 36518, 36523,
+    36526, 36528, 36530, 36535, 36539, 36544, 36547, 36552,
+    36554, 36557, 36560, 36563, 36566, 36569, 36573, 36576,
+    36578, 36581, 36584, 36587, 36591, 36594, 36597, 36600,
+    36605, 36609, 36611, 36616, 36618, 36622, 36626, 36629,
+    36632, 36635, 36639, 36641, 36644, 36648, 36650, 36655,
+    36658, 36660, 36662, 36664, 36666, 36668, 36670, 36672,
+    36674, 36676, 36678, 36681, 36684, 36687, 36690, 36693,
+    36696, 36699, 36702, 36705, 36708, 36711, 36714, 36717,
+    36720, 36723, 36726, 36728, 36730, 36733, 36735, 36737,
+    36739, 36742, 36745, 36747, 36749, 36751, 36753, 36755,
+    36759, 36761, 36763, 36765, 36767, 36769, 36771, 36773,
+    36775, 36778, 36782, 36784, 36786, 36788, 36790, 36792,
+    36794, 36796, 36799, 36802, 36805, 36808, 36810, 36812,
+    36814, 36816, 36818, 36820, 36822, 36824, 36826, 36828,
+    36831, 36834, 36836, 36839, 36842, 36845, 36847, 36850,
+    36853, 36857, 36859, 36862, 36865, 36868, 36871, 36876,
+    36882, 36884, 36886, 36888, 36890, 36892, 36894, 36896,
+    36898, 36900, 36902, 36904, 36906, 36908, 36910, 36912,
+    36914, 36916, 36918, 36922, 36924, 36926, 36928, 36932,
+    36935, 36937, 36939, 36941, 36943, 36945, 36947, 36949,
+    36951, 36953, 36955, 36958, 36960, 36962, 36965, 36968,
+    36970, 36974, 36977, 36979, 36981, 36983, 36985, 36988,
+    36991, 36993, 36995, 36997, 36999, 37001, 37003, 37005,
+    37007, 37009, 37012, 37015, 37018, 37021, 37024, 37027,
+    37030, 37033, 37036, 37039, 37042, 37045, 37048, 37051,
+    37054, 37057, 37060, 37063, 37066, 37069, 37072, 37075,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    37070,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    37078,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     4303,  4304,  4305,  4306,  4307,  4308,  4309,  4310,
      4311,  4312,  4313,  4314,  4315,  4316,  4317,  4318,
      4319,  4320,  4321,  4322,  4323,  4324,  4325,  4326,
      4327,  4328,  4329,  4330,  4331,  4332,  4333,  4334,
@@ -2811,20 +2821,20 @@
      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,    -1,    -1,
-     4573,    -1,  4574,    -1,    -1,  4575,  4576,  4577,
-     4578,  4579,  4580,  4581,  4582,  4583,  4584,    -1,
-     4585,    -1,  4586,    -1,    -1,  4587,  4588,    -1,
-       -1,    -1,  4589,  4590,  4591,  4592,    -1,    -1,
-     4593,  4594,  4595,  4596,  4597,  4598,  4599,  4600,
+     4567,  4568,  4569,  4570,  4571,  4572,  4573,  4574,
+     4575,  4576,  4577,  4578,  4579,  4580,    -1,    -1,
+     4581,    -1,  4582,    -1,    -1,  4583,  4584,  4585,
+     4586,  4587,  4588,  4589,  4590,  4591,  4592,    -1,
+     4593,    -1,  4594,    -1,    -1,  4595,  4596,    -1,
+       -1,    -1,  4597,  4598,  4599,  4600,    -1,    -1,
      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,    -1,    -1,
-     4655,  4656,  4657,  4658,  4659,  4660,  4661,  4662,
+     4649,  4650,  4651,  4652,  4653,  4654,  4655,  4656,
+     4657,  4658,  4659,  4660,  4661,  4662,    -1,    -1,
      4663,  4664,  4665,  4666,  4667,  4668,  4669,  4670,
      4671,  4672,  4673,  4674,  4675,  4676,  4677,  4678,
      4679,  4680,  4681,  4682,  4683,  4684,  4685,  4686,
@@ -2837,18 +2847,18 @@
      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,    -1,    -1,    -1,    -1,    -1,    -1,
-    37529, 37531, 37533, 37535, 37538, 37541, 37543,    -1,
+     4759,  4760,  4761,  4762,  4763,  4764,  4765,  4766,
+     4767,  4768,    -1,    -1,    -1,    -1,    -1,    -1,
+    37537, 37539, 37541, 37543, 37546, 37549, 37551,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1, 37545, 37547, 37549, 37551, 37553,
-       -1,    -1,    -1,    -1,    -1,  4787,    -1,  4789,
-    37559, 37560, 37561, 37562, 37563, 37564, 37565, 37566,
-    37567, 37568,  4801,  4803,  4805,  4807,  4809,  4811,
-     4813,  4815,  4817,  4819,  4821,  4823,  4825,    -1,
-     4827,  4829,  4831,  4833,  4835,    -1,  4837,    -1,
-     4839,  4841,    -1,  4843,  4845,    -1,  4847,  4849,
-     4851,  4853,  4855,  4857,  4859,  4861,  4863, 37633,
-    37635, 37636, 37637, 37638, 37639, 37640, 37641, 37642,
+       -1,    -1,    -1, 37553, 37555, 37557, 37559, 37561,
+       -1,    -1,    -1,    -1,    -1,  4795,    -1,  4797,
+    37567, 37568, 37569, 37570, 37571, 37572, 37573, 37574,
+    37575, 37576,  4809,  4811,  4813,  4815,  4817,  4819,
+     4821,  4823,  4825,  4827,  4829,  4831,  4833,    -1,
+     4835,  4837,  4839,  4841,  4843,    -1,  4845,    -1,
+     4847,  4849,    -1,  4851,  4853,    -1,  4855,  4857,
+     4859,  4861,  4863,  4865,  4867,  4869,  4871, 37641,
     37643, 37644, 37645, 37646, 37647, 37648, 37649, 37650,
     37651, 37652, 37653, 37654, 37655, 37656, 37657, 37658,
     37659, 37660, 37661, 37662, 37663, 37664, 37665, 37666,
@@ -2860,97 +2870,97 @@
     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,    -1,    -1,    -1,    -1,    -1,    -1,
+    37731, 37732, 37733, 37734, 37735, 37736, 37737, 37738,
+    37739, 37740,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1, 37733, 37734, 37735, 37736, 37737,
-    37738, 37739, 37740, 37741, 37742, 37743, 37744, 37745,
+       -1,    -1,    -1, 37741, 37742, 37743, 37744, 37745,
     37746, 37747, 37748, 37749, 37750, 37751, 37752, 37753,
-    37754, 37755, 37756, 37758, 37760, 37762, 37764, 37766,
-    37768, 37770, 37772, 37774, 37776, 37778, 37780, 37782,
-    37784, 37786, 37788, 37790, 37792, 37793, 37794, 37795,
-    37796, 37798, 37800, 37802, 37804, 37806, 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, 37987,
-    37990, 37993, 37996, 37999, 38002, 38004, 38006, 38008,
-    38010, 38012, 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, 38289, 38292, 38295, 38297, 38299,
-    38301, 38303, 38305, 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,    -1,    -1,
+    37754, 37755, 37756, 37757, 37758, 37759, 37760, 37761,
+    37762, 37763, 37764, 37766, 37768, 37770, 37772, 37774,
+    37776, 37778, 37780, 37782, 37784, 37786, 37788, 37790,
+    37792, 37794, 37796, 37798, 37800, 37801, 37802, 37803,
+    37804, 37806, 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, 37995,
+    37998, 38001, 38004, 38007, 38010, 38012, 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, 38297, 38300, 38303, 38305, 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,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    38441, 38444, 38447, 38450, 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,
-       -1,    -1, 38633, 38636, 38639, 38642, 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,
+    38449, 38452, 38455, 38458, 38461, 38464, 38467, 38470,
+    38473, 38476, 38479, 38482, 38485, 38488, 38491, 38494,
+    38497, 38500, 38503, 38506, 38509, 38512, 38515, 38518,
+    38521, 38524, 38527, 38530, 38533, 38536, 38539, 38542,
+    38545, 38548, 38551, 38554, 38557, 38560, 38563, 38566,
+    38569, 38572, 38575, 38578, 38581, 38584, 38587, 38590,
+    38593, 38596, 38599, 38602, 38605, 38608, 38611, 38614,
+    38617, 38620, 38623, 38626, 38629, 38632, 38635, 38638,
+       -1,    -1, 38641, 38644, 38647, 38650, 38653, 38656,
+    38659, 38662, 38665, 38668, 38671, 38674, 38677, 38680,
+    38683, 38686, 38689, 38692, 38695, 38698, 38701, 38704,
+    38707, 38710, 38713, 38716, 38719, 38722, 38725, 38728,
+    38731, 38734, 38737, 38740, 38743, 38746, 38749, 38752,
+    38755, 38758, 38761, 38764, 38767, 38770, 38773, 38776,
+    38779, 38782, 38785, 38788, 38791, 38794, 38797, 38800,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    38795, 38798, 38801, 38805, 38809, 38813, 38817, 38821,
-    38825, 38829, 38832, 38850, 38858,    -1,    -1,    -1,
+    38803, 38806, 38809, 38813, 38817, 38821, 38825, 38829,
+    38833, 38837, 38840, 38858, 38866,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    38862, 38863, 38864, 38865, 38866, 38867, 38868, 38869,
-    38870, 38871,    -1,    -1,    -1,    -1,    -1,    -1,
+    38870, 38871, 38872, 38873, 38874, 38875, 38876, 38877,
+    38878, 38879,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    38872, 38873, 38874, 38875, 38876, 38877, 38878, 38879,
     38880, 38881, 38882, 38883, 38884, 38885, 38886, 38887,
-    38888, 38889, 38890, 38891, 38892,    -1,    -1, 38893,
-    38894, 38895, 38896, 38897, 38898, 38899, 38900, 38901,
-    38902, 38903, 38904,    -1, 38905, 38906, 38907, 38908,
-    38909, 38910, 38911, 38912, 38913, 38914, 38915, 38916,
-    38917, 38918, 38919, 38920, 38921, 38922, 38923,    -1,
-    38924, 38925, 38926, 38927,    -1,    -1,    -1,    -1,
-    38928, 38930, 38932,    -1, 38934,    -1, 38936, 38938,
-    38940, 38942, 38944, 38946, 38948, 38950, 38952, 38954,
-    38956, 38957, 38958, 38959, 38960, 38961, 38962, 38963,
+    38888, 38889, 38890, 38891, 38892, 38893, 38894, 38895,
+    38896, 38897, 38898, 38899, 38900,    -1,    -1, 38901,
+    38902, 38903, 38904, 38905, 38906, 38907, 38908, 38909,
+    38910, 38911, 38912,    -1, 38913, 38914, 38915, 38916,
+    38917, 38918, 38919, 38920, 38921, 38922, 38923, 38924,
+    38925, 38926, 38927, 38928, 38929, 38930, 38931,    -1,
+    38932, 38933, 38934, 38935,    -1,    -1,    -1,    -1,
+    38936, 38938, 38940,    -1, 38942,    -1, 38944, 38946,
+    38948, 38950, 38952, 38954, 38956, 38958, 38960, 38962,
     38964, 38965, 38966, 38967, 38968, 38969, 38970, 38971,
     38972, 38973, 38974, 38975, 38976, 38977, 38978, 38979,
     38980, 38981, 38982, 38983, 38984, 38985, 38986, 38987,
@@ -2964,10 +2974,10 @@
     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, 39075, 39077,
-    39079, 39081, 39083, 39085, 39087,    -1,    -1,    -1,
-       -1, 39089, 39090, 39091, 39092, 39093, 39094, 39095,
-    39096, 39097, 39098, 39099, 39100, 39101, 39102, 39103,
+    39068, 39069, 39070, 39071, 39072, 39073, 39074, 39075,
+    39076, 39077, 39078, 39079, 39080, 39081, 39083, 39085,
+    39087, 39089, 39091, 39093, 39095,    -1,    -1,    -1,
+       -1, 39097, 39098, 39099, 39100, 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,
@@ -2989,40 +2999,40 @@
     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,    -1,
-       -1,    -1, 39279, 39280, 39281, 39282, 39283, 39284,
-       -1,    -1, 39285, 39286, 39287, 39288, 39289, 39290,
-       -1,    -1, 39291, 39292, 39293, 39294, 39295, 39296,
-       -1,    -1, 39297, 39298, 39299,    -1,    -1,    -1,
-    39300, 39301, 39302, 39303, 39304, 39305, 39306,    -1,
-    39307, 39308, 39309, 39310, 39311, 39312, 39313,    -1,
+    39272, 39273, 39274, 39275, 39276, 39277, 39278, 39279,
+    39280, 39281, 39282, 39283, 39284, 39285, 39286,    -1,
+       -1,    -1, 39287, 39288, 39289, 39290, 39291, 39292,
+       -1,    -1, 39293, 39294, 39295, 39296, 39297, 39298,
+       -1,    -1, 39299, 39300, 39301, 39302, 39303, 39304,
+       -1,    -1, 39305, 39306, 39307,    -1,    -1,    -1,
+    39308, 39309, 39310, 39311, 39312, 39313, 39314,    -1,
+    39315, 39316, 39317, 39318, 39319, 39320, 39321,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,  6546,    -1,  6548,    -1,    -1,    -1,
+       -1,    -1,  6554,    -1,  6556,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,  6550,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,  6558,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,  6552,  6554,
-     6556,  6558,  6560,  6562,  6564,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,  6560,  6562,
+     6564,  6566,  6568,  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,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,  6566,  6568,  6570,  6572,  6574,
-     6576,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,  6574,  6576,  6578,  6580,  6582,
+     6584,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    39346, 39347, 39348, 39349, 39350, 39351, 39352, 39353,
     39354, 39355, 39356, 39357, 39358, 39359, 39360, 39361,
     39362, 39363, 39364, 39365, 39366, 39367, 39368, 39369,
     39370, 39371, 39372, 39373, 39374, 39375, 39376, 39377,
@@ -3032,8 +3042,8 @@
     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,    -1, 39431, 39432,
-    39433, 39434, 39435, 39436, 39437, 39438, 39439, 39440,
+    39426, 39427, 39428, 39429, 39430, 39431, 39432, 39433,
+    39434, 39435, 39436, 39437, 39438,    -1, 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,
@@ -3041,31 +3051,31 @@
     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,    -1, 39502, 39503,
-       -1,    -1, 39504,    -1,    -1, 39505, 39506,    -1,
-       -1, 39507, 39508, 39509, 39510,    -1, 39511, 39512,
-    39513, 39514, 39515, 39516, 39517, 39518, 39519, 39520,
-    39521, 39522,    -1, 39523,    -1, 39524, 39525, 39526,
-    39527, 39528, 39529, 39530,    -1, 39531, 39532, 39533,
-    39534, 39535, 39536, 39537, 39538, 39539, 39540, 39541,
+    39497, 39498, 39499, 39500, 39501, 39502, 39503, 39504,
+    39505, 39506, 39507, 39508, 39509,    -1, 39510, 39511,
+       -1,    -1, 39512,    -1,    -1, 39513, 39514,    -1,
+       -1, 39515, 39516, 39517, 39518,    -1, 39519, 39520,
+    39521, 39522, 39523, 39524, 39525, 39526, 39527, 39528,
+    39529, 39530,    -1, 39531,    -1, 39532, 39533, 39534,
+    39535, 39536, 39537, 39538,    -1, 39539, 39540, 39541,
     39542, 39543, 39544, 39545, 39546, 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,    -1, 39596,
-    39597, 39598, 39599,    -1,    -1, 39600, 39601, 39602,
-    39603, 39604, 39605, 39606, 39607,    -1, 39608, 39609,
-    39610, 39611, 39612, 39613, 39614,    -1, 39615, 39616,
-    39617, 39618, 39619, 39620, 39621, 39622, 39623, 39624,
+    39590, 39591, 39592, 39593, 39594, 39595, 39596, 39597,
+    39598, 39599, 39600, 39601, 39602, 39603,    -1, 39604,
+    39605, 39606, 39607,    -1,    -1, 39608, 39609, 39610,
+    39611, 39612, 39613, 39614, 39615,    -1, 39616, 39617,
+    39618, 39619, 39620, 39621, 39622,    -1, 39623, 39624,
     39625, 39626, 39627, 39628, 39629, 39630, 39631, 39632,
     39633, 39634, 39635, 39636, 39637, 39638, 39639, 39640,
-    39641, 39642,    -1, 39643, 39644, 39645, 39646,    -1,
-    39647, 39648, 39649, 39650, 39651,    -1, 39652,    -1,
-       -1,    -1, 39653, 39654, 39655, 39656, 39657, 39658,
-    39659,    -1, 39660, 39661, 39662, 39663, 39664, 39665,
-    39666, 39667, 39668, 39669, 39670, 39671, 39672, 39673,
+    39641, 39642, 39643, 39644, 39645, 39646, 39647, 39648,
+    39649, 39650,    -1, 39651, 39652, 39653, 39654,    -1,
+    39655, 39656, 39657, 39658, 39659,    -1, 39660,    -1,
+       -1,    -1, 39661, 39662, 39663, 39664, 39665, 39666,
+    39667,    -1, 39668, 39669, 39670, 39671, 39672, 39673,
     39674, 39675, 39676, 39677, 39678, 39679, 39680, 39681,
     39682, 39683, 39684, 39685, 39686, 39687, 39688, 39689,
     39690, 39691, 39692, 39693, 39694, 39695, 39696, 39697,
@@ -3106,8 +3116,8 @@
     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,    -1,    -1,
-    40000, 40001, 40002, 40003, 40004, 40005, 40006, 40007,
+    39994, 39995, 39996, 39997, 39998, 39999, 40000, 40001,
+    40002, 40003, 40004, 40005, 40006, 40007,    -1,    -1,
     40008, 40009, 40010, 40011, 40012, 40013, 40014, 40015,
     40016, 40017, 40018, 40019, 40020, 40021, 40022, 40023,
     40024, 40025, 40026, 40027, 40028, 40029, 40030, 40031,
@@ -3143,108 +3153,109 @@
     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,    -1,    -1, 40292, 40293,
-    40294, 40295, 40296, 40297, 40298, 40299, 40300, 40301,
+    40288, 40289, 40290, 40291, 40292, 40293, 40294, 40295,
+    40296, 40297, 40298, 40299,    -1,    -1, 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, 40328, 40329, 40330, 40331, 40332, 40333,
     40334, 40335, 40336, 40337, 40338, 40339, 40340, 40341,
-    40342, 40344, 40346, 40348, 40350, 40352, 40354, 40356,
-    40358, 40360, 40362,    -1,    -1,    -1,    -1,    -1,
-    40364, 40367, 40370, 40373, 40376, 40379, 40382, 40385,
-    40388, 40391, 40394, 40397, 40400, 40403, 40406, 40409,
-    40412, 40415, 40418, 40421, 40424, 40427, 40430, 40433,
-    40436, 40439, 40442, 40445, 40446, 40447, 40449,    -1,
-       -1, 40451,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1, 40452,    -1, 40453,
-       -1,    -1, 40454,    -1,    -1,    -1, 40455,    -1,
-       -1,    -1, 40456, 40458, 40460, 40462, 40464,    -1,
+    40342, 40343, 40344, 40345, 40346, 40347, 40348, 40349,
+    40350, 40352, 40354, 40356, 40358, 40360, 40362, 40364,
+    40366, 40368, 40370,    -1,    -1,    -1,    -1,    -1,
+    40372, 40375, 40378, 40381, 40384, 40387, 40390, 40393,
+    40396, 40399, 40402, 40405, 40408, 40411, 40414, 40417,
+    40420, 40423, 40426, 40429, 40432, 40435, 40438, 40441,
+    40444, 40447, 40450, 40453, 40454, 40455, 40457,    -1,
+    40459, 40460, 40461, 40462, 40463, 40464, 40465, 40466,
+    40467, 40468, 40469, 40470, 40471, 40472, 40473, 40474,
+    40475, 40476, 40477, 40478, 40479, 40480, 40481, 40482,
+    40483, 40484, 40485, 40487, 40489, 40491, 40493, 40496,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    40467,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    40498,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    40469,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    40500, 40502, 40504,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    40471, 40472, 40473, 40474, 40475, 40476, 40477, 40478,
-    40479, 40480, 40481, 40482, 40483, 40484, 40485, 40486,
-    40487, 40488, 40489, 40490, 40491, 40492, 40493, 40494,
-    40495, 40496, 40497, 40498, 40499, 40500, 40501, 40502,
-    40503, 40504,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    40505, 40508, 40511, 40514, 40517, 40520, 40523, 40526,
-    40529,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    40505, 40506, 40507, 40508, 40509, 40510, 40511, 40512,
+    40513, 40514, 40515, 40516, 40517, 40518, 40519, 40520,
+    40521, 40522, 40523, 40524, 40525, 40526, 40527, 40528,
+    40529, 40530, 40531, 40532, 40533, 40534, 40535, 40536,
+    40537, 40538, 40539, 40540, 40541, 40542, 40543, 40544,
+    40545, 40546, 40547,    -1,    -1,    -1,    -1,    -1,
+    40548, 40551, 40554, 40557, 40560, 40563, 40566, 40569,
+    40572,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    40575, 40576,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-     7764,  7765,  7766,  7767,  7768,  7769,  7770,  7771,
-     7772,  7773,  7774,  7775,  7776,  7777,  7778,  7779,
-     7780,  7781,  7782,  7783,  7784,  7785,  7786,  7787,
-     7788,  7789,  7790,  7791,  7792,  7793,  7794,  7795,
-     7796,  7797,  7798,  7799,  7800,  7801,  7802,  7803,
-     7804,  7805,  7806,  7807,  7808,  7809,  7810,  7811,
-     7812,  7813,  7814,  7815,  7816,  7817,  7818,  7819,
-     7820,  7821,  7822,  7823,  7824,  7825,  7826,  7827,
-     7828,  7829,  7830,  7831,  7832,  7833,  7834,  7835,
-     7836,  7837,  7838,  7839,  7840,  7841,  7842,  7843,
-     7844,  7845,  7846,  7847,  7848,  7849,  7850,  7851,
-     7852,  7853,  7854,  7855,  7856,  7857,  7858,  7859,
-     7860,  7861,  7862,  7863,  7864,  7865,  7866,  7867,
-     7868,  7869,  7870,  7871,  7872,  7873,  7874,  7875,
-     7876,  7877,  7878,  7879,  7880,  7881,  7882,  7883,
-     7884,  7885,  7886,  7887,  7888,  7889,  7890,  7891,
-     7892,  7893,  7894,  7895,  7896,  7897,  7898,  7899,
-     7900,  7901,  7902,  7903,  7904,  7905,  7906,  7907,
-     7908,  7909,  7910,  7911,  7912,  7913,  7914,  7915,
-     7916,  7917,  7918,  7919,  7920,  7921,  7922,  7923,
-     7924,  7925,  7926,  7927,  7928,  7929,  7930,  7931,
-     7932,  7933,  7934,  7935,  7936,  7937,  7938,  7939,
-     7940,  7941,  7942,  7943,  7944,  7945,  7946,  7947,
-     7948,  7949,  7950,  7951,  7952,  7953,  7954,  7955,
-     7956,  7957,  7958,  7959,  7960,  7961,  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,    -1,    -1
+     7809,  7810,  7811,  7812,  7813,  7814,  7815,  7816,
+     7817,  7818,  7819,  7820,  7821,  7822,  7823,  7824,
+     7825,  7826,  7827,  7828,  7829,  7830,  7831,  7832,
+     7833,  7834,  7835,  7836,  7837,  7838,  7839,  7840,
+     7841,  7842,  7843,  7844,  7845,  7846,  7847,  7848,
+     7849,  7850,  7851,  7852,  7853,  7854,  7855,  7856,
+     7857,  7858,  7859,  7860,  7861,  7862,  7863,  7864,
+     7865,  7866,  7867,  7868,  7869,  7870,  7871,  7872,
+     7873,  7874,  7875,  7876,  7877,  7878,  7879,  7880,
+     7881,  7882,  7883,  7884,  7885,  7886,  7887,  7888,
+     7889,  7890,  7891,  7892,  7893,  7894,  7895,  7896,
+     7897,  7898,  7899,  7900,  7901,  7902,  7903,  7904,
+     7905,  7906,  7907,  7908,  7909,  7910,  7911,  7912,
+     7913,  7914,  7915,  7916,  7917,  7918,  7919,  7920,
+     7921,  7922,  7923,  7924,  7925,  7926,  7927,  7928,
+     7929,  7930,  7931,  7932,  7933,  7934,  7935,  7936,
+     7937,  7938,  7939,  7940,  7941,  7942,  7943,  7944,
+     7945,  7946,  7947,  7948,  7949,  7950,  7951,  7952,
+     7953,  7954,  7955,  7956,  7957,  7958,  7959,  7960,
+     7961,  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,    -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 for Unicode 5.2.0.  */
+/* Generated automatically by gen-uni-tables for Unicode 6.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[118 << 7];
+    unsigned char level3[122 << 7];
   }
 wbrkprop_t;
 static const wbrkprop_t uniwbrkprop =
@@ -79,7 +79,7 @@
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
       256,   256,   256,   256,   256,   256,   256,   256,
       256,  8704,   256,   256,  8832,  8960,  9088,  9216,
-     9344,  9472,  9600,  9728,  9856,  9984,    -1, 10112,
+     9344,  9472,  9600,  9728,  9856,  9984, 10112, 10240,
       256,   256,   256,   256,   256,   256,   256,   256,
       256,   256,   256,   256,   256,   256,   256,   256,
       256,   256,   256,   256,   256,   256,   256,   256,
@@ -90,7 +90,7 @@
       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, 10240,
+      256,   256,   256,   256,   256,   256,   256, 10368,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -99,22 +99,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,    -1,    -1, 10368, 10496,
-      256,   256, 10624, 10752, 10880, 11008, 11136, 11264,
-    11392, 11520, 11648, 11776,    -1, 11904, 12032, 12160,
-      256, 12288,    -1,    -1,    -1,    -1,    -1,    -1,
-    12416,    -1, 12544,    -1, 12672,    -1, 12800,    -1,
-    12928,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1, 13056,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1, 10496, 10624,
+      256,   256, 10752, 10880, 11008, 11136, 11264, 11392,
+    11520, 11648, 11776, 11904,    -1, 12032, 12160, 12288,
+      256, 12416,    -1,    -1,    -1,    -1,    -1,    -1,
+    12544,    -1, 12672,    -1, 12800,    -1, 12928,    -1,
+    13056,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    13184, 13312,    -1,    -1,    -1,    -1,    -1,    -1,
        -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,   256,   256, 13184,    -1,
-    13312,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      256,   256,   256,   256,   256,   256, 13440,    -1,
+    13568,    -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,
-    13440,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    13696,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+       -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, 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,    -1,    -1,    -1,
@@ -132,6 +145,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,
+    13952,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -139,6 +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, 14080, 14208, 14336,    -1,    -1,    -1,
+    14464, 14592, 14720,   256,   256, 14848, 14976, 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,
@@ -149,23 +165,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, 13568, 13696, 13824,    -1,    -1,    -1,
-    13952, 14080, 14208,   256,   256, 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,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    14720,    -1, 14848, 14976,    -1,    -1,    -1,    -1,
+    15232,    -1, 15360, 15488,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
@@ -464,7 +464,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_ALETTER, 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_ALETTER, WBP_ALETTER, WBP_ALETTER,
@@ -527,7 +527,7 @@
     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_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
@@ -542,7 +542,7 @@
     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_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
     WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,
     WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC, WBP_NUMERIC,
     WBP_NUMERIC, WBP_NUMERIC, WBP_OTHER, WBP_NUMERIC,
@@ -574,7 +574,7 @@
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_OTHER, WBP_ALETTER, WBP_EXTEND, WBP_EXTEND,
     WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
-    WBP_EXTEND, WBP_FORMAT, WBP_EXTEND, WBP_EXTEND,
+    WBP_EXTEND, WBP_FORMAT, WBP_OTHER, WBP_EXTEND,
     WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
     WBP_EXTEND, WBP_ALETTER, WBP_ALETTER, WBP_EXTEND,
     WBP_EXTEND, WBP_OTHER, WBP_EXTEND, WBP_EXTEND,
@@ -663,52 +663,52 @@
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_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, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_ALETTER, WBP_ALETTER, WBP_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_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_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_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_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, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_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_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_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
     WBP_ALETTER, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
-    WBP_EXTEND, WBP_EXTEND, 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, WBP_ALETTER, WBP_EXTEND, WBP_EXTEND,
     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_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_OTHER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_OTHER, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
@@ -931,7 +931,7 @@
     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_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,
@@ -945,16 +945,16 @@
     WBP_ALETTER, WBP_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_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_ALETTER, WBP_EXTEND, WBP_EXTEND,
     WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
     WBP_EXTEND, WBP_OTHER, WBP_EXTEND, WBP_EXTEND,
     WBP_EXTEND, WBP_OTHER, WBP_EXTEND, WBP_EXTEND,
-    WBP_EXTEND, WBP_EXTEND, WBP_OTHER, WBP_OTHER,
+    WBP_EXTEND, WBP_EXTEND, WBP_ALETTER, 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,
@@ -1098,7 +1098,7 @@
     WBP_EXTEND, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
     WBP_EXTEND, WBP_OTHER, WBP_EXTEND, WBP_EXTEND,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    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_OTHER, WBP_EXTEND, WBP_EXTEND, WBP_EXTEND,
@@ -1278,7 +1278,7 @@
     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_EXTEND,
+    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_OTHER, WBP_OTHER, WBP_OTHER,
@@ -1597,7 +1597,7 @@
     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_NUMERIC, WBP_OTHER,
+    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,
@@ -1719,19 +1719,19 @@
     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_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_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_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
@@ -1830,7 +1830,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_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
@@ -1932,6 +1932,8 @@
     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_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
@@ -1945,8 +1947,6 @@
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_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,
@@ -2150,7 +2150,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_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
@@ -2325,7 +2325,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_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    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,
@@ -2463,7 +2463,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_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_EXTEND,
@@ -2538,34 +2538,34 @@
     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_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
-    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_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_OTHER, WBP_OTHER,
+    WBP_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_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_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_EXTEND, WBP_ALETTER,
     WBP_ALETTER, WBP_ALETTER, WBP_EXTEND, WBP_ALETTER,
@@ -2759,6 +2759,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_OTHER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_OTHER,
+    WBP_OTHER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_OTHER,
+    WBP_OTHER, 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_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_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
@@ -3507,6 +3539,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_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_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_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_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, 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_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_ALETTER, WBP_ALETTER, WBP_ALETTER, WBP_ALETTER,
+    WBP_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_OTHER,
@@ -3623,6 +3687,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_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_KATAKANA, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
+    WBP_OTHER, WBP_OTHER, WBP_OTHER, WBP_OTHER,
     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
@@ -62,20 +62,20 @@
   0xb6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x05c0-0x05ff */
   /* 0x0600-0x07ff */
   0x0f, 0x00, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, /* 0x0600-0x063f */
-  0x00, 0xf8, 0xff, 0x7f, 0x00, 0x00, 0x01, 0x00, /* 0x0640-0x067f */
+  0x00, 0xf8, 0xff, 0xff, 0x00, 0x00, 0x01, 0x00, /* 0x0640-0x067f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0680-0x06bf */
-  0x00, 0x00, 0xc0, 0xff, 0x9f, 0x3d, 0x00, 0x00, /* 0x06c0-0x06ff */
+  0x00, 0x00, 0xc0, 0xbf, 0x9f, 0x3d, 0x00, 0x00, /* 0x06c0-0x06ff */
   0x00, 0x80, 0x02, 0x00, 0x00, 0x00, 0xff, 0xff, /* 0x0700-0x073f */
   0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0740-0x077f */
   0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0x01, 0x00, /* 0x0780-0x07bf */
   0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x0f, 0x00, /* 0x07c0-0x07ff */
   /* 0x0800-0x09ff */
   0x00, 0x00, 0xc0, 0xfb, 0xef, 0x3e, 0x00, 0x00, /* 0x0800-0x083f */
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0840-0x087f */
+  0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, /* 0x0840-0x087f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0880-0x08bf */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x08c0-0x08ff */
-  0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, /* 0x0900-0x093f */
-  0xfe, 0x21, 0x3e, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x0940-0x097f */
+  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 */
   0x1e, 0x20, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, /* 0x09c0-0x09ff */
   /* 0x0a00-0x0bff */
@@ -103,7 +103,7 @@
   0x00, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0ec0-0x0eff */
   0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0xa0, 0x02, /* 0x0f00-0x0f3f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x7f, /* 0x0f40-0x0f7f */
-  0xdf, 0x00, 0xff, 0xfe, 0xff, 0xff, 0xff, 0x1f, /* 0x0f80-0x0fbf */
+  0xdf, 0xe0, 0xff, 0xfe, 0xff, 0xff, 0xff, 0x1f, /* 0x0f80-0x0fbf */
   0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x0fc0-0x0fff */
   /* 0x1000-0x11ff */
   0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfd, 0x66, /* 0x1000-0x103f */
@@ -120,7 +120,7 @@
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1280-0x12bf */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x12c0-0x12ff */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1300-0x133f */
-  0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, /* 0x1340-0x137f */
+  0x00, 0x00, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, /* 0x1340-0x137f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1380-0x13bf */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x13c0-0x13ff */
   /* 0x1600-0x17ff */
@@ -149,7 +149,7 @@
   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, 0x03, 0x00, 0x00, /* 0x1b80-0x1bbf */
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x1bc0-0x1bff */
+  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 */
@@ -158,7 +158,7 @@
   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, 0xe0, /* 0x1dc0-0x1dff */
+  0xff, 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, 0xf0, /* 0x1dc0-0x1dff */
   /* 0x2000-0x21ff */
   0x00, 0xf8, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x00, /* 0x2000-0x203f */
   0x00, 0x00, 0x00, 0x00, 0x1f, 0xfc, 0x00, 0x00, /* 0x2040-0x207f */
@@ -174,7 +174,7 @@
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2c80-0x2cbf */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x03, 0x00, /* 0x2cc0-0x2cff */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2d00-0x2d3f */
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2d40-0x2d7f */
+  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, /* 0x2d40-0x2d7f */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x2d80-0x2dbf */
   0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, /* 0x2dc0-0x2dff */
   /* 0x3000-0x31ff */
@@ -250,8 +250,8 @@
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10b80-0x10bbf */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x10bc0-0x10bff */
   /* 0x11000-0x111ff */
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11000-0x1103f */
-  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11040-0x1107f */
+  0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, /* 0x11000-0x1103f */
+  0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11040-0x1107f */
   0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x26, /* 0x11080-0x110bf */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x110c0-0x110ff */
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 0x11100-0x1113f */
@@ -355,8 +355,8 @@
           || (uc >= 0xfe30 && uc < 0xfe70) /* CJK Compatibility Forms */
           || (uc >= 0xff00 && uc < 0xff61) /* Fullwidth Forms */
           || (uc >= 0xffe0 && uc < 0xffe7) /* Fullwidth Signs */
-          || (uc >= 0x20000 && uc <= 0x2fffd) /* Supplementary Ideographic Plane */
-          || (uc >= 0x30000 && uc <= 0x3fffd) /* Tertiary Ideographic Plane */
+          || (uc >= 0x20000 && uc <= 0x2ffff) /* Supplementary Ideographic Plane */
+          || (uc >= 0x30000 && uc <= 0x3ffff) /* Tertiary Ideographic Plane */
      )   )
     return 2;
   /* In ancient CJK encodings, Cyrillic and most other characters are
--- a/modules/unictype/category-Me
+++ b/modules/unictype/category-Me
@@ -9,7 +9,7 @@
 unictype/base
 
 configure.ac:
-gl_LIBUNISTRING_MODULE([0.9], [unictype/category-Me])
+gl_LIBUNISTRING_MODULE([0.9.4], [unictype/category-Me])
 
 Makefile.am:
 if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_ME
--- a/modules/unictype/category-Sk
+++ b/modules/unictype/category-Sk
@@ -9,7 +9,7 @@
 unictype/base
 
 configure.ac:
-gl_LIBUNISTRING_MODULE([0.9], [unictype/category-Sk])
+gl_LIBUNISTRING_MODULE([0.9.4], [unictype/category-Sk])
 
 Makefile.am:
 if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_SK
--- a/modules/unictype/category-Sm
+++ b/modules/unictype/category-Sm
@@ -9,7 +9,7 @@
 unictype/base
 
 configure.ac:
-gl_LIBUNISTRING_MODULE([0.9], [unictype/category-Sm])
+gl_LIBUNISTRING_MODULE([0.9.4], [unictype/category-Sm])
 
 Makefile.am:
 if LIBUNISTRING_COMPILE_UNICTYPE_CATEGORY_SM
--- a/modules/unictype/property-bidi-arabic-right-to-left
+++ b/modules/unictype/property-bidi-arabic-right-to-left
@@ -12,7 +12,7 @@
 
 configure.ac:
 AC_REQUIRE([AC_C_INLINE])
-gl_LIBUNISTRING_MODULE([0.9], [unictype/property-bidi-arabic-right-to-left])
+gl_LIBUNISTRING_MODULE([0.9.4], [unictype/property-bidi-arabic-right-to-left])
 
 Makefile.am:
 if LIBUNISTRING_COMPILE_UNICTYPE_PROPERTY_BIDI_ARABIC_RIGHT_TO_LEFT
--- a/modules/unictype/property-bidi-boundary-neutral
+++ b/modules/unictype/property-bidi-boundary-neutral
@@ -12,7 +12,7 @@
 
 configure.ac:
 AC_REQUIRE([AC_C_INLINE])
-gl_LIBUNISTRING_MODULE([0.9], [unictype/property-bidi-boundary-neutral])
+gl_LIBUNISTRING_MODULE([0.9.4], [unictype/property-bidi-boundary-neutral])
 
 Makefile.am:
 if LIBUNISTRING_COMPILE_UNICTYPE_PROPERTY_BIDI_BOUNDARY_NEUTRAL
--- a/modules/unictype/property-format-control
+++ b/modules/unictype/property-format-control
@@ -11,7 +11,7 @@
 
 configure.ac:
 AC_REQUIRE([AC_C_INLINE])
-gl_LIBUNISTRING_MODULE([0.9], [unictype/property-format-control])
+gl_LIBUNISTRING_MODULE([0.9.4], [unictype/property-format-control])
 
 Makefile.am:
 if LIBUNISTRING_COMPILE_UNICTYPE_PROPERTY_FORMAT_CONTROL
--- a/modules/unictype/property-math
+++ b/modules/unictype/property-math
@@ -11,7 +11,7 @@
 
 configure.ac:
 AC_REQUIRE([AC_C_INLINE])
-gl_LIBUNISTRING_MODULE([0.9], [unictype/property-math])
+gl_LIBUNISTRING_MODULE([0.9.4], [unictype/property-math])
 
 Makefile.am:
 if LIBUNISTRING_COMPILE_UNICTYPE_PROPERTY_MATH
--- a/modules/unictype/property-other-id-continue
+++ b/modules/unictype/property-other-id-continue
@@ -11,7 +11,7 @@
 
 configure.ac:
 AC_REQUIRE([AC_C_INLINE])
-gl_LIBUNISTRING_MODULE([0.9], [unictype/property-other-id-continue])
+gl_LIBUNISTRING_MODULE([0.9.4], [unictype/property-other-id-continue])
 
 Makefile.am:
 if LIBUNISTRING_COMPILE_UNICTYPE_PROPERTY_OTHER_ID_CONTINUE
--- a/modules/unictype/property-other-math
+++ b/modules/unictype/property-other-math
@@ -11,7 +11,7 @@
 
 configure.ac:
 AC_REQUIRE([AC_C_INLINE])
-gl_LIBUNISTRING_MODULE([0.9], [unictype/property-other-math])
+gl_LIBUNISTRING_MODULE([0.9.4], [unictype/property-other-math])
 
 Makefile.am:
 if LIBUNISTRING_COMPILE_UNICTYPE_PROPERTY_OTHER_MATH
--- a/tests/unicase/test-cased.c
+++ b/tests/unicase/test-cased.c
@@ -40,7 +40,7 @@
     { 0x038E, 0x03A1 },
     { 0x03A3, 0x03F5 },
     { 0x03F7, 0x0481 },
-    { 0x048A, 0x0525 },
+    { 0x048A, 0x0527 },
     { 0x0531, 0x0556 },
     { 0x0561, 0x0587 },
     { 0x10A0, 0x10C5 },
@@ -87,11 +87,13 @@
     { 0x2C60, 0x2CE4 },
     { 0x2CEB, 0x2CEE },
     { 0x2D00, 0x2D25 },
-    { 0xA640, 0xA65F },
-    { 0xA662, 0xA66D },
+    { 0xA640, 0xA66D },
     { 0xA680, 0xA697 },
     { 0xA722, 0xA787 },
-    { 0xA78B, 0xA78C },
+    { 0xA78B, 0xA78E },
+    { 0xA790, 0xA791 },
+    { 0xA7A0, 0xA7A9 },
+    { 0xA7FA, 0xA7FA },
     { 0xFB00, 0xFB06 },
     { 0xFB13, 0xFB17 },
     { 0xFF21, 0xFF3A },
--- a/tests/unicase/test-ignorable.c
+++ b/tests/unicase/test-ignorable.c
@@ -45,9 +45,10 @@
     { 0x0600, 0x0603 },
     { 0x0610, 0x061A },
     { 0x0640, 0x0640 },
-    { 0x064B, 0x065E },
+    { 0x064B, 0x065F },
     { 0x0670, 0x0670 },
-    { 0x06D6, 0x06E8 },
+    { 0x06D6, 0x06DD },
+    { 0x06DF, 0x06E8 },
     { 0x06EA, 0x06ED },
     { 0x070F, 0x070F },
     { 0x0711, 0x0711 },
@@ -56,11 +57,13 @@
     { 0x07EB, 0x07F5 },
     { 0x07FA, 0x07FA },
     { 0x0816, 0x082D },
+    { 0x0859, 0x085B },
     { 0x0900, 0x0902 },
+    { 0x093A, 0x093A },
     { 0x093C, 0x093C },
     { 0x0941, 0x0948 },
     { 0x094D, 0x094D },
-    { 0x0951, 0x0955 },
+    { 0x0951, 0x0957 },
     { 0x0962, 0x0963 },
     { 0x0971, 0x0971 },
     { 0x0981, 0x0981 },
@@ -123,7 +126,7 @@
     { 0x0F71, 0x0F7E },
     { 0x0F80, 0x0F84 },
     { 0x0F86, 0x0F87 },
-    { 0x0F90, 0x0F97 },
+    { 0x0F8D, 0x0F97 },
     { 0x0F99, 0x0FBC },
     { 0x0FC6, 0x0FC6 },
     { 0x102D, 0x1030 },
@@ -138,7 +141,7 @@
     { 0x108D, 0x108D },
     { 0x109D, 0x109D },
     { 0x10FC, 0x10FC },
-    { 0x135F, 0x135F },
+    { 0x135D, 0x135F },
     { 0x1712, 0x1714 },
     { 0x1732, 0x1734 },
     { 0x1752, 0x1753 },
@@ -174,6 +177,10 @@
     { 0x1B80, 0x1B81 },
     { 0x1BA2, 0x1BA5 },
     { 0x1BA8, 0x1BA9 },
+    { 0x1BE6, 0x1BE6 },
+    { 0x1BE8, 0x1BE9 },
+    { 0x1BED, 0x1BED },
+    { 0x1BEF, 0x1BF1 },
     { 0x1C2C, 0x1C33 },
     { 0x1C36, 0x1C37 },
     { 0x1C78, 0x1C7D },
@@ -182,7 +189,7 @@
     { 0x1CE2, 0x1CE8 },
     { 0x1CED, 0x1CED },
     { 0x1DC0, 0x1DE6 },
-    { 0x1DFD, 0x1DFF },
+    { 0x1DFC, 0x1DFF },
     { 0x1FBD, 0x1FBD },
     { 0x1FBF, 0x1FC1 },
     { 0x1FCD, 0x1FCF },
@@ -198,9 +205,11 @@
     { 0x206A, 0x206F },
     { 0x2071, 0x2071 },
     { 0x207F, 0x207F },
+    { 0x2095, 0x209C },
     { 0x20D0, 0x20F0 },
     { 0x2CEF, 0x2CF1 },
     { 0x2D6F, 0x2D6F },
+    { 0x2D7F, 0x2D7F },
     { 0x2DE0, 0x2DFF },
     { 0x2E2F, 0x2E2F },
     { 0x3005, 0x3005 },
@@ -247,6 +256,7 @@
     { 0xABE8, 0xABE8 },
     { 0xABED, 0xABED },
     { 0xFB1E, 0xFB1E },
+    { 0xFBB2, 0xFBC1 },
     { 0xFE00, 0xFE0F },
     { 0xFE13, 0xFE13 },
     { 0xFE20, 0xFE26 },
@@ -268,6 +278,8 @@
     { 0x10A0C, 0x10A0F },
     { 0x10A38, 0x10A3A },
     { 0x10A3F, 0x10A3F },
+    { 0x11001, 0x11001 },
+    { 0x11038, 0x11046 },
     { 0x11080, 0x11081 },
     { 0x110B3, 0x110B6 },
     { 0x110B9, 0x110BA },
--- 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-case.c for Unicode 5.2.0.  */
+/* Generated automatically by gen-case.c for Unicode 6.0.0.  */
 
 #include "test-mapping-part1.h"
 
@@ -444,6 +444,7 @@
     { 0x0520, 0x0521 },
     { 0x0522, 0x0523 },
     { 0x0524, 0x0525 },
+    { 0x0526, 0x0527 },
     { 0x0531, 0x0561 },
     { 0x0532, 0x0562 },
     { 0x0533, 0x0563 },
@@ -917,6 +918,7 @@
     { 0xA65A, 0xA65B },
     { 0xA65C, 0xA65D },
     { 0xA65E, 0xA65F },
+    { 0xA660, 0xA661 },
     { 0xA662, 0xA663 },
     { 0xA664, 0xA665 },
     { 0xA666, 0xA667 },
@@ -982,6 +984,13 @@
     { 0xA784, 0xA785 },
     { 0xA786, 0xA787 },
     { 0xA78B, 0xA78C },
+    { 0xA78D, 0x0265 },
+    { 0xA790, 0xA791 },
+    { 0xA7A0, 0xA7A1 },
+    { 0xA7A2, 0xA7A3 },
+    { 0xA7A4, 0xA7A5 },
+    { 0xA7A6, 0xA7A7 },
+    { 0xA7A8, 0xA7A9 },
     { 0xFF21, 0xFF41 },
     { 0xFF22, 0xFF42 },
     { 0xFF23, 0xFF43 },
--- 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-case.c for Unicode 5.2.0.  */
+/* Generated automatically by gen-case.c for Unicode 6.0.0.  */
 
 #include "test-mapping-part1.h"
 
@@ -237,6 +237,7 @@
     { 0x025B, 0x0190 },
     { 0x0260, 0x0193 },
     { 0x0263, 0x0194 },
+    { 0x0265, 0xA78D },
     { 0x0268, 0x0197 },
     { 0x0269, 0x0196 },
     { 0x026B, 0x2C62 },
@@ -460,6 +461,7 @@
     { 0x0521, 0x0520 },
     { 0x0523, 0x0522 },
     { 0x0525, 0x0524 },
+    { 0x0527, 0x0526 },
     { 0x0561, 0x0531 },
     { 0x0562, 0x0532 },
     { 0x0563, 0x0533 },
@@ -926,6 +928,7 @@
     { 0xA65B, 0xA65A },
     { 0xA65D, 0xA65C },
     { 0xA65F, 0xA65E },
+    { 0xA661, 0xA660 },
     { 0xA663, 0xA662 },
     { 0xA665, 0xA664 },
     { 0xA667, 0xA666 },
@@ -990,6 +993,12 @@
     { 0xA785, 0xA784 },
     { 0xA787, 0xA786 },
     { 0xA78C, 0xA78B },
+    { 0xA791, 0xA790 },
+    { 0xA7A1, 0xA7A0 },
+    { 0xA7A3, 0xA7A2 },
+    { 0xA7A5, 0xA7A4 },
+    { 0xA7A7, 0xA7A6 },
+    { 0xA7A9, 0xA7A8 },
     { 0xFF41, 0xFF21 },
     { 0xFF42, 0xFF22 },
     { 0xFF43, 0xFF23 },
--- 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-case.c for Unicode 5.2.0.  */
+/* Generated automatically by gen-case.c for Unicode 6.0.0.  */
 
 #include "test-mapping-part1.h"
 
@@ -237,6 +237,7 @@
     { 0x025B, 0x0190 },
     { 0x0260, 0x0193 },
     { 0x0263, 0x0194 },
+    { 0x0265, 0xA78D },
     { 0x0268, 0x0197 },
     { 0x0269, 0x0196 },
     { 0x026B, 0x2C62 },
@@ -460,6 +461,7 @@
     { 0x0521, 0x0520 },
     { 0x0523, 0x0522 },
     { 0x0525, 0x0524 },
+    { 0x0527, 0x0526 },
     { 0x0561, 0x0531 },
     { 0x0562, 0x0532 },
     { 0x0563, 0x0533 },
@@ -926,6 +928,7 @@
     { 0xA65B, 0xA65A },
     { 0xA65D, 0xA65C },
     { 0xA65F, 0xA65E },
+    { 0xA661, 0xA660 },
     { 0xA663, 0xA662 },
     { 0xA665, 0xA664 },
     { 0xA667, 0xA666 },
@@ -990,6 +993,12 @@
     { 0xA785, 0xA784 },
     { 0xA787, 0xA786 },
     { 0xA78C, 0xA78B },
+    { 0xA791, 0xA790 },
+    { 0xA7A1, 0xA7A0 },
+    { 0xA7A3, 0xA7A2 },
+    { 0xA7A5, 0xA7A4 },
+    { 0xA7A7, 0xA7A6 },
+    { 0xA7A9, 0xA7A8 },
     { 0xFF41, 0xFF21 },
     { 0xFF42, 0xFF22 },
     { 0xFF43, 0xFF23 },
--- a/tests/unictype/test-categ_C.c
+++ b/tests/unictype/test-categ_C.c
@@ -25,7 +25,7 @@
     { 0x038B, 0x038B },
     { 0x038D, 0x038D },
     { 0x03A2, 0x03A2 },
-    { 0x0526, 0x0530 },
+    { 0x0528, 0x0530 },
     { 0x0557, 0x0558 },
     { 0x0560, 0x0560 },
     { 0x0588, 0x0588 },
@@ -34,19 +34,16 @@
     { 0x05EB, 0x05EF },
     { 0x05F5, 0x0605 },
     { 0x061C, 0x061D },
-    { 0x0620, 0x0620 },
-    { 0x065F, 0x065F },
     { 0x06DD, 0x06DD },
     { 0x070E, 0x070F },
     { 0x074B, 0x074C },
     { 0x07B2, 0x07BF },
     { 0x07FB, 0x07FF },
     { 0x082E, 0x082F },
-    { 0x083F, 0x08FF },
-    { 0x093A, 0x093B },
-    { 0x094F, 0x094F },
-    { 0x0956, 0x0957 },
-    { 0x0973, 0x0978 },
+    { 0x083F, 0x083F },
+    { 0x085C, 0x085D },
+    { 0x085F, 0x08FF },
+    { 0x0978, 0x0978 },
     { 0x0980, 0x0980 },
     { 0x0984, 0x0984 },
     { 0x098D, 0x098E },
@@ -105,7 +102,7 @@
     { 0x0B58, 0x0B5B },
     { 0x0B5E, 0x0B5E },
     { 0x0B64, 0x0B65 },
-    { 0x0B72, 0x0B81 },
+    { 0x0B78, 0x0B81 },
     { 0x0B84, 0x0B84 },
     { 0x0B8B, 0x0B8D },
     { 0x0B91, 0x0B91 },
@@ -153,11 +150,10 @@
     { 0x0D04, 0x0D04 },
     { 0x0D0D, 0x0D0D },
     { 0x0D11, 0x0D11 },
-    { 0x0D29, 0x0D29 },
-    { 0x0D3A, 0x0D3C },
+    { 0x0D3B, 0x0D3C },
     { 0x0D45, 0x0D45 },
     { 0x0D49, 0x0D49 },
-    { 0x0D4E, 0x0D56 },
+    { 0x0D4F, 0x0D56 },
     { 0x0D58, 0x0D5F },
     { 0x0D64, 0x0D65 },
     { 0x0D76, 0x0D78 },
@@ -195,11 +191,10 @@
     { 0x0EDE, 0x0EFF },
     { 0x0F48, 0x0F48 },
     { 0x0F6D, 0x0F70 },
-    { 0x0F8C, 0x0F8F },
     { 0x0F98, 0x0F98 },
     { 0x0FBD, 0x0FBD },
     { 0x0FCD, 0x0FCD },
-    { 0x0FD9, 0x0FFF },
+    { 0x0FDB, 0x0FFF },
     { 0x10C6, 0x10CF },
     { 0x10FD, 0x10FF },
     { 0x1249, 0x1249 },
@@ -217,7 +212,7 @@
     { 0x12D7, 0x12D7 },
     { 0x1311, 0x1311 },
     { 0x1316, 0x1317 },
-    { 0x135B, 0x135E },
+    { 0x135B, 0x135C },
     { 0x137D, 0x137F },
     { 0x139A, 0x139F },
     { 0x13F5, 0x13FF },
@@ -257,12 +252,13 @@
     { 0x1B4C, 0x1B4F },
     { 0x1B7D, 0x1B7F },
     { 0x1BAB, 0x1BAD },
-    { 0x1BBA, 0x1BFF },
+    { 0x1BBA, 0x1BBF },
+    { 0x1BF4, 0x1BFB },
     { 0x1C38, 0x1C3A },
     { 0x1C4A, 0x1C4C },
     { 0x1C80, 0x1CCF },
     { 0x1CF3, 0x1CFF },
-    { 0x1DE7, 0x1DFC },
+    { 0x1DE7, 0x1DFB },
     { 0x1F16, 0x1F17 },
     { 0x1F1E, 0x1F1F },
     { 0x1F46, 0x1F47 },
@@ -284,29 +280,16 @@
     { 0x2060, 0x206F },
     { 0x2072, 0x2073 },
     { 0x208F, 0x208F },
-    { 0x2095, 0x209F },
-    { 0x20B9, 0x20CF },
+    { 0x209D, 0x209F },
+    { 0x20BA, 0x20CF },
     { 0x20F1, 0x20FF },
     { 0x218A, 0x218F },
-    { 0x23E9, 0x23FF },
+    { 0x23F4, 0x23FF },
     { 0x2427, 0x243F },
     { 0x244B, 0x245F },
-    { 0x26CE, 0x26CE },
-    { 0x26E2, 0x26E2 },
-    { 0x26E4, 0x26E7 },
     { 0x2700, 0x2700 },
-    { 0x2705, 0x2705 },
-    { 0x270A, 0x270B },
-    { 0x2728, 0x2728 },
-    { 0x274C, 0x274C },
-    { 0x274E, 0x274E },
-    { 0x2753, 0x2755 },
-    { 0x275F, 0x2760 },
-    { 0x2795, 0x2797 },
-    { 0x27B0, 0x27B0 },
-    { 0x27BF, 0x27BF },
     { 0x27CB, 0x27CB },
-    { 0x27CD, 0x27CF },
+    { 0x27CD, 0x27CD },
     { 0x2B4D, 0x2B4F },
     { 0x2B5A, 0x2BFF },
     { 0x2C2F, 0x2C2F },
@@ -314,7 +297,7 @@
     { 0x2CF2, 0x2CF8 },
     { 0x2D26, 0x2D2F },
     { 0x2D66, 0x2D6E },
-    { 0x2D70, 0x2D7F },
+    { 0x2D71, 0x2D7E },
     { 0x2D97, 0x2D9F },
     { 0x2DA7, 0x2DA7 },
     { 0x2DAF, 0x2DAF },
@@ -334,7 +317,7 @@
     { 0x3100, 0x3104 },
     { 0x312E, 0x3130 },
     { 0x318F, 0x318F },
-    { 0x31B8, 0x31BF },
+    { 0x31BB, 0x31BF },
     { 0x31E4, 0x31EF },
     { 0x321F, 0x321F },
     { 0x32FF, 0x32FF },
@@ -343,11 +326,12 @@
     { 0xA48D, 0xA48F },
     { 0xA4C7, 0xA4CF },
     { 0xA62C, 0xA63F },
-    { 0xA660, 0xA661 },
     { 0xA674, 0xA67B },
     { 0xA698, 0xA69F },
     { 0xA6F8, 0xA6FF },
-    { 0xA78D, 0xA7FA },
+    { 0xA78F, 0xA78F },
+    { 0xA792, 0xA79F },
+    { 0xA7AA, 0xA7F9 },
     { 0xA82C, 0xA82F },
     { 0xA83A, 0xA83F },
     { 0xA878, 0xA87F },
@@ -364,7 +348,12 @@
     { 0xAA5A, 0xAA5B },
     { 0xAA7C, 0xAA7F },
     { 0xAAC3, 0xAADA },
-    { 0xAAE0, 0xABBF },
+    { 0xAAE0, 0xAB00 },
+    { 0xAB07, 0xAB08 },
+    { 0xAB0F, 0xAB10 },
+    { 0xAB17, 0xAB1F },
+    { 0xAB27, 0xAB27 },
+    { 0xAB2F, 0xABBF },
     { 0xABEE, 0xABEF },
     { 0xABFA, 0xABFF },
     { 0xD7A4, 0xD7AF },
@@ -380,7 +369,7 @@
     { 0xFB3F, 0xFB3F },
     { 0xFB42, 0xFB42 },
     { 0xFB45, 0xFB45 },
-    { 0xFBB2, 0xFBD2 },
+    { 0xFBC2, 0xFBD2 },
     { 0xFD40, 0xFD4F },
     { 0xFD90, 0xFD91 },
     { 0xFDC8, 0xFDEF },
@@ -446,13 +435,17 @@
     { 0x10B73, 0x10B77 },
     { 0x10B80, 0x10BFF },
     { 0x10C49, 0x10E5F },
-    { 0x10E7F, 0x1107F },
+    { 0x10E7F, 0x10FFF },
+    { 0x1104E, 0x11051 },
+    { 0x11070, 0x1107F },
     { 0x110BD, 0x110BD },
     { 0x110C2, 0x11FFF },
     { 0x1236F, 0x123FF },
     { 0x12463, 0x1246F },
     { 0x12474, 0x12FFF },
-    { 0x1342F, 0x1CFFF },
+    { 0x1342F, 0x167FF },
+    { 0x16A39, 0x1AFFF },
+    { 0x1B002, 0x1CFFF },
     { 0x1D0F6, 0x1D0FF },
     { 0x1D127, 0x1D128 },
     { 0x1D173, 0x1D17A },
@@ -482,27 +475,50 @@
     { 0x1D7CC, 0x1D7CD },
     { 0x1D800, 0x1EFFF },
     { 0x1F02C, 0x1F02F },
-    { 0x1F094, 0x1F0FF },
+    { 0x1F094, 0x1F09F },
+    { 0x1F0AF, 0x1F0B0 },
+    { 0x1F0BF, 0x1F0C0 },
+    { 0x1F0D0, 0x1F0D0 },
+    { 0x1F0E0, 0x1F0FF },
     { 0x1F10B, 0x1F10F },
-    { 0x1F12F, 0x1F130 },
-    { 0x1F132, 0x1F13C },
-    { 0x1F13E, 0x1F13E },
-    { 0x1F140, 0x1F141 },
-    { 0x1F143, 0x1F145 },
-    { 0x1F147, 0x1F149 },
-    { 0x1F14F, 0x1F156 },
-    { 0x1F158, 0x1F15E },
-    { 0x1F160, 0x1F178 },
-    { 0x1F17A, 0x1F17A },
-    { 0x1F17D, 0x1F17E },
-    { 0x1F180, 0x1F189 },
-    { 0x1F18E, 0x1F18F },
-    { 0x1F191, 0x1F1FF },
-    { 0x1F201, 0x1F20F },
-    { 0x1F232, 0x1F23F },
-    { 0x1F249, 0x1FFFF },
+    { 0x1F12F, 0x1F12F },
+    { 0x1F16A, 0x1F16F },
+    { 0x1F19B, 0x1F1E5 },
+    { 0x1F203, 0x1F20F },
+    { 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, 0x1F54F },
+    { 0x1F568, 0x1F5FA },
+    { 0x1F600, 0x1F600 },
+    { 0x1F611, 0x1F611 },
+    { 0x1F615, 0x1F615 },
+    { 0x1F617, 0x1F617 },
+    { 0x1F619, 0x1F619 },
+    { 0x1F61B, 0x1F61B },
+    { 0x1F61F, 0x1F61F },
+    { 0x1F626, 0x1F627 },
+    { 0x1F62C, 0x1F62C },
+    { 0x1F62E, 0x1F62F },
+    { 0x1F634, 0x1F634 },
+    { 0x1F641, 0x1F644 },
+    { 0x1F650, 0x1F67F },
+    { 0x1F6C6, 0x1F6FF },
+    { 0x1F774, 0x1FFFF },
     { 0x2A6D7, 0x2A6FF },
-    { 0x2B735, 0x2F7FF },
+    { 0x2B735, 0x2B73F },
+    { 0x2B81E, 0x2F7FF },
     { 0x2FA1E, 0xE00FF },
     { 0xE01F0, 0x10FFFF }
 
--- a/tests/unictype/test-categ_Cn.c
+++ b/tests/unictype/test-categ_Cn.c
@@ -22,7 +22,7 @@
     { 0x038B, 0x038B },
     { 0x038D, 0x038D },
     { 0x03A2, 0x03A2 },
-    { 0x0526, 0x0530 },
+    { 0x0528, 0x0530 },
     { 0x0557, 0x0558 },
     { 0x0560, 0x0560 },
     { 0x0588, 0x0588 },
@@ -32,18 +32,15 @@
     { 0x05F5, 0x05FF },
     { 0x0604, 0x0605 },
     { 0x061C, 0x061D },
-    { 0x0620, 0x0620 },
-    { 0x065F, 0x065F },
     { 0x070E, 0x070E },
     { 0x074B, 0x074C },
     { 0x07B2, 0x07BF },
     { 0x07FB, 0x07FF },
     { 0x082E, 0x082F },
-    { 0x083F, 0x08FF },
-    { 0x093A, 0x093B },
-    { 0x094F, 0x094F },
-    { 0x0956, 0x0957 },
-    { 0x0973, 0x0978 },
+    { 0x083F, 0x083F },
+    { 0x085C, 0x085D },
+    { 0x085F, 0x08FF },
+    { 0x0978, 0x0978 },
     { 0x0980, 0x0980 },
     { 0x0984, 0x0984 },
     { 0x098D, 0x098E },
@@ -102,7 +99,7 @@
     { 0x0B58, 0x0B5B },
     { 0x0B5E, 0x0B5E },
     { 0x0B64, 0x0B65 },
-    { 0x0B72, 0x0B81 },
+    { 0x0B78, 0x0B81 },
     { 0x0B84, 0x0B84 },
     { 0x0B8B, 0x0B8D },
     { 0x0B91, 0x0B91 },
@@ -150,11 +147,10 @@
     { 0x0D04, 0x0D04 },
     { 0x0D0D, 0x0D0D },
     { 0x0D11, 0x0D11 },
-    { 0x0D29, 0x0D29 },
-    { 0x0D3A, 0x0D3C },
+    { 0x0D3B, 0x0D3C },
     { 0x0D45, 0x0D45 },
     { 0x0D49, 0x0D49 },
-    { 0x0D4E, 0x0D56 },
+    { 0x0D4F, 0x0D56 },
     { 0x0D58, 0x0D5F },
     { 0x0D64, 0x0D65 },
     { 0x0D76, 0x0D78 },
@@ -192,11 +188,10 @@
     { 0x0EDE, 0x0EFF },
     { 0x0F48, 0x0F48 },
     { 0x0F6D, 0x0F70 },
-    { 0x0F8C, 0x0F8F },
     { 0x0F98, 0x0F98 },
     { 0x0FBD, 0x0FBD },
     { 0x0FCD, 0x0FCD },
-    { 0x0FD9, 0x0FFF },
+    { 0x0FDB, 0x0FFF },
     { 0x10C6, 0x10CF },
     { 0x10FD, 0x10FF },
     { 0x1249, 0x1249 },
@@ -214,7 +209,7 @@
     { 0x12D7, 0x12D7 },
     { 0x1311, 0x1311 },
     { 0x1316, 0x1317 },
-    { 0x135B, 0x135E },
+    { 0x135B, 0x135C },
     { 0x137D, 0x137F },
     { 0x139A, 0x139F },
     { 0x13F5, 0x13FF },
@@ -253,12 +248,13 @@
     { 0x1B4C, 0x1B4F },
     { 0x1B7D, 0x1B7F },
     { 0x1BAB, 0x1BAD },
-    { 0x1BBA, 0x1BFF },
+    { 0x1BBA, 0x1BBF },
+    { 0x1BF4, 0x1BFB },
     { 0x1C38, 0x1C3A },
     { 0x1C4A, 0x1C4C },
     { 0x1C80, 0x1CCF },
     { 0x1CF3, 0x1CFF },
-    { 0x1DE7, 0x1DFC },
+    { 0x1DE7, 0x1DFB },
     { 0x1F16, 0x1F17 },
     { 0x1F1E, 0x1F1F },
     { 0x1F46, 0x1F47 },
@@ -278,29 +274,16 @@
     { 0x2065, 0x2069 },
     { 0x2072, 0x2073 },
     { 0x208F, 0x208F },
-    { 0x2095, 0x209F },
-    { 0x20B9, 0x20CF },
+    { 0x209D, 0x209F },
+    { 0x20BA, 0x20CF },
     { 0x20F1, 0x20FF },
     { 0x218A, 0x218F },
-    { 0x23E9, 0x23FF },
+    { 0x23F4, 0x23FF },
     { 0x2427, 0x243F },
     { 0x244B, 0x245F },
-    { 0x26CE, 0x26CE },
-    { 0x26E2, 0x26E2 },
-    { 0x26E4, 0x26E7 },
     { 0x2700, 0x2700 },
-    { 0x2705, 0x2705 },
-    { 0x270A, 0x270B },
-    { 0x2728, 0x2728 },
-    { 0x274C, 0x274C },
-    { 0x274E, 0x274E },
-    { 0x2753, 0x2755 },
-    { 0x275F, 0x2760 },
-    { 0x2795, 0x2797 },
-    { 0x27B0, 0x27B0 },
-    { 0x27BF, 0x27BF },
     { 0x27CB, 0x27CB },
-    { 0x27CD, 0x27CF },
+    { 0x27CD, 0x27CD },
     { 0x2B4D, 0x2B4F },
     { 0x2B5A, 0x2BFF },
     { 0x2C2F, 0x2C2F },
@@ -308,7 +291,7 @@
     { 0x2CF2, 0x2CF8 },
     { 0x2D26, 0x2D2F },
     { 0x2D66, 0x2D6E },
-    { 0x2D70, 0x2D7F },
+    { 0x2D71, 0x2D7E },
     { 0x2D97, 0x2D9F },
     { 0x2DA7, 0x2DA7 },
     { 0x2DAF, 0x2DAF },
@@ -328,7 +311,7 @@
     { 0x3100, 0x3104 },
     { 0x312E, 0x3130 },
     { 0x318F, 0x318F },
-    { 0x31B8, 0x31BF },
+    { 0x31BB, 0x31BF },
     { 0x31E4, 0x31EF },
     { 0x321F, 0x321F },
     { 0x32FF, 0x32FF },
@@ -337,11 +320,12 @@
     { 0xA48D, 0xA48F },
     { 0xA4C7, 0xA4CF },
     { 0xA62C, 0xA63F },
-    { 0xA660, 0xA661 },
     { 0xA674, 0xA67B },
     { 0xA698, 0xA69F },
     { 0xA6F8, 0xA6FF },
-    { 0xA78D, 0xA7FA },
+    { 0xA78F, 0xA78F },
+    { 0xA792, 0xA79F },
+    { 0xA7AA, 0xA7F9 },
     { 0xA82C, 0xA82F },
     { 0xA83A, 0xA83F },
     { 0xA878, 0xA87F },
@@ -358,7 +342,12 @@
     { 0xAA5A, 0xAA5B },
     { 0xAA7C, 0xAA7F },
     { 0xAAC3, 0xAADA },
-    { 0xAAE0, 0xABBF },
+    { 0xAAE0, 0xAB00 },
+    { 0xAB07, 0xAB08 },
+    { 0xAB0F, 0xAB10 },
+    { 0xAB17, 0xAB1F },
+    { 0xAB27, 0xAB27 },
+    { 0xAB2F, 0xABBF },
     { 0xABEE, 0xABEF },
     { 0xABFA, 0xABFF },
     { 0xD7A4, 0xD7AF },
@@ -374,7 +363,7 @@
     { 0xFB3F, 0xFB3F },
     { 0xFB42, 0xFB42 },
     { 0xFB45, 0xFB45 },
-    { 0xFBB2, 0xFBD2 },
+    { 0xFBC2, 0xFBD2 },
     { 0xFD40, 0xFD4F },
     { 0xFD90, 0xFD91 },
     { 0xFDC8, 0xFDEF },
@@ -441,12 +430,16 @@
     { 0x10B73, 0x10B77 },
     { 0x10B80, 0x10BFF },
     { 0x10C49, 0x10E5F },
-    { 0x10E7F, 0x1107F },
+    { 0x10E7F, 0x10FFF },
+    { 0x1104E, 0x11051 },
+    { 0x11070, 0x1107F },
     { 0x110C2, 0x11FFF },
     { 0x1236F, 0x123FF },
     { 0x12463, 0x1246F },
     { 0x12474, 0x12FFF },
-    { 0x1342F, 0x1CFFF },
+    { 0x1342F, 0x167FF },
+    { 0x16A39, 0x1AFFF },
+    { 0x1B002, 0x1CFFF },
     { 0x1D0F6, 0x1D0FF },
     { 0x1D127, 0x1D128 },
     { 0x1D1DE, 0x1D1FF },
@@ -475,27 +468,50 @@
     { 0x1D7CC, 0x1D7CD },
     { 0x1D800, 0x1EFFF },
     { 0x1F02C, 0x1F02F },
-    { 0x1F094, 0x1F0FF },
+    { 0x1F094, 0x1F09F },
+    { 0x1F0AF, 0x1F0B0 },
+    { 0x1F0BF, 0x1F0C0 },
+    { 0x1F0D0, 0x1F0D0 },
+    { 0x1F0E0, 0x1F0FF },
     { 0x1F10B, 0x1F10F },
-    { 0x1F12F, 0x1F130 },
-    { 0x1F132, 0x1F13C },
-    { 0x1F13E, 0x1F13E },
-    { 0x1F140, 0x1F141 },
-    { 0x1F143, 0x1F145 },
-    { 0x1F147, 0x1F149 },
-    { 0x1F14F, 0x1F156 },
-    { 0x1F158, 0x1F15E },
-    { 0x1F160, 0x1F178 },
-    { 0x1F17A, 0x1F17A },
-    { 0x1F17D, 0x1F17E },
-    { 0x1F180, 0x1F189 },
-    { 0x1F18E, 0x1F18F },
-    { 0x1F191, 0x1F1FF },
-    { 0x1F201, 0x1F20F },
-    { 0x1F232, 0x1F23F },
-    { 0x1F249, 0x1FFFF },
+    { 0x1F12F, 0x1F12F },
+    { 0x1F16A, 0x1F16F },
+    { 0x1F19B, 0x1F1E5 },
+    { 0x1F203, 0x1F20F },
+    { 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, 0x1F54F },
+    { 0x1F568, 0x1F5FA },
+    { 0x1F600, 0x1F600 },
+    { 0x1F611, 0x1F611 },
+    { 0x1F615, 0x1F615 },
+    { 0x1F617, 0x1F617 },
+    { 0x1F619, 0x1F619 },
+    { 0x1F61B, 0x1F61B },
+    { 0x1F61F, 0x1F61F },
+    { 0x1F626, 0x1F627 },
+    { 0x1F62C, 0x1F62C },
+    { 0x1F62E, 0x1F62F },
+    { 0x1F634, 0x1F634 },
+    { 0x1F641, 0x1F644 },
+    { 0x1F650, 0x1F67F },
+    { 0x1F6C6, 0x1F6FF },
+    { 0x1F774, 0x1FFFF },
     { 0x2A6D7, 0x2A6FF },
-    { 0x2B735, 0x2F7FF },
+    { 0x2B735, 0x2B73F },
+    { 0x2B81E, 0x2F7FF },
     { 0x2FA1E, 0xE0000 },
     { 0xE0002, 0xE001F },
     { 0xE0080, 0xE00FF },
--- a/tests/unictype/test-categ_L.c
+++ b/tests/unictype/test-categ_L.c
@@ -38,13 +38,13 @@
     { 0x038E, 0x03A1 },
     { 0x03A3, 0x03F5 },
     { 0x03F7, 0x0481 },
-    { 0x048A, 0x0525 },
+    { 0x048A, 0x0527 },
     { 0x0531, 0x0556 },
     { 0x0559, 0x0559 },
     { 0x0561, 0x0587 },
     { 0x05D0, 0x05EA },
     { 0x05F0, 0x05F2 },
-    { 0x0621, 0x064A },
+    { 0x0620, 0x064A },
     { 0x066E, 0x066F },
     { 0x0671, 0x06D3 },
     { 0x06D5, 0x06D5 },
@@ -63,11 +63,12 @@
     { 0x081A, 0x081A },
     { 0x0824, 0x0824 },
     { 0x0828, 0x0828 },
+    { 0x0840, 0x0858 },
     { 0x0904, 0x0939 },
     { 0x093D, 0x093D },
     { 0x0950, 0x0950 },
     { 0x0958, 0x0961 },
-    { 0x0971, 0x0972 },
+    { 0x0971, 0x0977 },
     { 0x0979, 0x097F },
     { 0x0985, 0x098C },
     { 0x098F, 0x0990 },
@@ -136,11 +137,12 @@
     { 0x0CBD, 0x0CBD },
     { 0x0CDE, 0x0CDE },
     { 0x0CE0, 0x0CE1 },
+    { 0x0CF1, 0x0CF2 },
     { 0x0D05, 0x0D0C },
     { 0x0D0E, 0x0D10 },
-    { 0x0D12, 0x0D28 },
-    { 0x0D2A, 0x0D39 },
+    { 0x0D12, 0x0D3A },
     { 0x0D3D, 0x0D3D },
+    { 0x0D4E, 0x0D4E },
     { 0x0D60, 0x0D61 },
     { 0x0D7A, 0x0D7F },
     { 0x0D85, 0x0D96 },
@@ -171,7 +173,7 @@
     { 0x0F00, 0x0F00 },
     { 0x0F40, 0x0F47 },
     { 0x0F49, 0x0F6C },
-    { 0x0F88, 0x0F8B },
+    { 0x0F88, 0x0F8C },
     { 0x1000, 0x102A },
     { 0x103F, 0x103F },
     { 0x1050, 0x1055 },
@@ -231,6 +233,7 @@
     { 0x1B45, 0x1B4B },
     { 0x1B83, 0x1BA0 },
     { 0x1BAE, 0x1BAF },
+    { 0x1BC0, 0x1BE5 },
     { 0x1C00, 0x1C23 },
     { 0x1C4D, 0x1C4F },
     { 0x1C5A, 0x1C7D },
@@ -258,7 +261,7 @@
     { 0x1FF6, 0x1FFC },
     { 0x2071, 0x2071 },
     { 0x207F, 0x207F },
-    { 0x2090, 0x2094 },
+    { 0x2090, 0x209C },
     { 0x2102, 0x2102 },
     { 0x2107, 0x2107 },
     { 0x210A, 0x2113 },
@@ -299,7 +302,7 @@
     { 0x30FC, 0x30FF },
     { 0x3105, 0x312D },
     { 0x3131, 0x318E },
-    { 0x31A0, 0x31B7 },
+    { 0x31A0, 0x31BA },
     { 0x31F0, 0x31FF },
     { 0x3400, 0x4DB5 },
     { 0x4E00, 0x9FCB },
@@ -308,14 +311,15 @@
     { 0xA500, 0xA60C },
     { 0xA610, 0xA61F },
     { 0xA62A, 0xA62B },
-    { 0xA640, 0xA65F },
-    { 0xA662, 0xA66E },
+    { 0xA640, 0xA66E },
     { 0xA67F, 0xA697 },
     { 0xA6A0, 0xA6E5 },
     { 0xA717, 0xA71F },
     { 0xA722, 0xA788 },
-    { 0xA78B, 0xA78C },
-    { 0xA7FB, 0xA801 },
+    { 0xA78B, 0xA78E },
+    { 0xA790, 0xA791 },
+    { 0xA7A0, 0xA7A9 },
+    { 0xA7FA, 0xA801 },
     { 0xA803, 0xA805 },
     { 0xA807, 0xA80A },
     { 0xA80C, 0xA822 },
@@ -340,6 +344,11 @@
     { 0xAAC0, 0xAAC0 },
     { 0xAAC2, 0xAAC2 },
     { 0xAADB, 0xAADD },
+    { 0xAB01, 0xAB06 },
+    { 0xAB09, 0xAB0E },
+    { 0xAB11, 0xAB16 },
+    { 0xAB20, 0xAB26 },
+    { 0xAB28, 0xAB2E },
     { 0xABC0, 0xABE2 },
     { 0xAC00, 0xD7A3 },
     { 0xD7B0, 0xD7C6 },
@@ -403,9 +412,12 @@
     { 0x10B40, 0x10B55 },
     { 0x10B60, 0x10B72 },
     { 0x10C00, 0x10C48 },
+    { 0x11003, 0x11037 },
     { 0x11083, 0x110AF },
     { 0x12000, 0x1236E },
     { 0x13000, 0x1342E },
+    { 0x16800, 0x16A38 },
+    { 0x1B000, 0x1B001 },
     { 0x1D400, 0x1D454 },
     { 0x1D456, 0x1D49C },
     { 0x1D49E, 0x1D49F },
@@ -438,6 +450,7 @@
     { 0x1D7C4, 0x1D7CB },
     { 0x20000, 0x2A6D6 },
     { 0x2A700, 0x2B734 },
+    { 0x2B740, 0x2B81D },
     { 0x2F800, 0x2FA1D }
 
 #define PREDICATE(c) uc_is_general_category (c, UC_CATEGORY_L)
--- a/tests/unictype/test-categ_Ll.c
+++ b/tests/unictype/test-categ_Ll.c
@@ -283,6 +283,7 @@
     { 0x0521, 0x0521 },
     { 0x0523, 0x0523 },
     { 0x0525, 0x0525 },
+    { 0x0527, 0x0527 },
     { 0x0561, 0x0587 },
     { 0x1D00, 0x1D2B },
     { 0x1D62, 0x1D77 },
@@ -519,6 +520,7 @@
     { 0xA65B, 0xA65B },
     { 0xA65D, 0xA65D },
     { 0xA65F, 0xA65F },
+    { 0xA661, 0xA661 },
     { 0xA663, 0xA663 },
     { 0xA665, 0xA665 },
     { 0xA667, 0xA667 },
@@ -584,6 +586,14 @@
     { 0xA785, 0xA785 },
     { 0xA787, 0xA787 },
     { 0xA78C, 0xA78C },
+    { 0xA78E, 0xA78E },
+    { 0xA791, 0xA791 },
+    { 0xA7A1, 0xA7A1 },
+    { 0xA7A3, 0xA7A3 },
+    { 0xA7A5, 0xA7A5 },
+    { 0xA7A7, 0xA7A7 },
+    { 0xA7A9, 0xA7A9 },
+    { 0xA7FA, 0xA7FA },
     { 0xFB00, 0xFB06 },
     { 0xFB13, 0xFB17 },
     { 0xFF41, 0xFF5A },
--- a/tests/unictype/test-categ_Lm.c
+++ b/tests/unictype/test-categ_Lm.c
@@ -45,7 +45,7 @@
     { 0x1D9B, 0x1DBF },
     { 0x2071, 0x2071 },
     { 0x207F, 0x207F },
-    { 0x2090, 0x2094 },
+    { 0x2090, 0x209C },
     { 0x2C7D, 0x2C7D },
     { 0x2D6F, 0x2D6F },
     { 0x2E2F, 0x2E2F },
--- a/tests/unictype/test-categ_Lo.c
+++ b/tests/unictype/test-categ_Lo.c
@@ -22,7 +22,7 @@
     { 0x0294, 0x0294 },
     { 0x05D0, 0x05EA },
     { 0x05F0, 0x05F2 },
-    { 0x0621, 0x063F },
+    { 0x0620, 0x063F },
     { 0x0641, 0x064A },
     { 0x066E, 0x066F },
     { 0x0671, 0x06D3 },
@@ -36,11 +36,12 @@
     { 0x07B1, 0x07B1 },
     { 0x07CA, 0x07EA },
     { 0x0800, 0x0815 },
+    { 0x0840, 0x0858 },
     { 0x0904, 0x0939 },
     { 0x093D, 0x093D },
     { 0x0950, 0x0950 },
     { 0x0958, 0x0961 },
-    { 0x0972, 0x0972 },
+    { 0x0972, 0x0977 },
     { 0x0979, 0x097F },
     { 0x0985, 0x098C },
     { 0x098F, 0x0990 },
@@ -109,11 +110,12 @@
     { 0x0CBD, 0x0CBD },
     { 0x0CDE, 0x0CDE },
     { 0x0CE0, 0x0CE1 },
+    { 0x0CF1, 0x0CF2 },
     { 0x0D05, 0x0D0C },
     { 0x0D0E, 0x0D10 },
-    { 0x0D12, 0x0D28 },
-    { 0x0D2A, 0x0D39 },
+    { 0x0D12, 0x0D3A },
     { 0x0D3D, 0x0D3D },
+    { 0x0D4E, 0x0D4E },
     { 0x0D60, 0x0D61 },
     { 0x0D7A, 0x0D7F },
     { 0x0D85, 0x0D96 },
@@ -143,7 +145,7 @@
     { 0x0F00, 0x0F00 },
     { 0x0F40, 0x0F47 },
     { 0x0F49, 0x0F6C },
-    { 0x0F88, 0x0F8B },
+    { 0x0F88, 0x0F8C },
     { 0x1000, 0x102A },
     { 0x103F, 0x103F },
     { 0x1050, 0x1055 },
@@ -200,6 +202,7 @@
     { 0x1B45, 0x1B4B },
     { 0x1B83, 0x1BA0 },
     { 0x1BAE, 0x1BAF },
+    { 0x1BC0, 0x1BE5 },
     { 0x1C00, 0x1C23 },
     { 0x1C4D, 0x1C4F },
     { 0x1C5A, 0x1C77 },
@@ -224,7 +227,7 @@
     { 0x30FF, 0x30FF },
     { 0x3105, 0x312D },
     { 0x3131, 0x318E },
-    { 0x31A0, 0x31B7 },
+    { 0x31A0, 0x31BA },
     { 0x31F0, 0x31FF },
     { 0x3400, 0x4DB5 },
     { 0x4E00, 0x9FCB },
@@ -261,6 +264,11 @@
     { 0xAAC0, 0xAAC0 },
     { 0xAAC2, 0xAAC2 },
     { 0xAADB, 0xAADC },
+    { 0xAB01, 0xAB06 },
+    { 0xAB09, 0xAB0E },
+    { 0xAB11, 0xAB16 },
+    { 0xAB20, 0xAB26 },
+    { 0xAB28, 0xAB2E },
     { 0xABC0, 0xABE2 },
     { 0xAC00, 0xD7A3 },
     { 0xD7B0, 0xD7C6 },
@@ -322,11 +330,15 @@
     { 0x10B40, 0x10B55 },
     { 0x10B60, 0x10B72 },
     { 0x10C00, 0x10C48 },
+    { 0x11003, 0x11037 },
     { 0x11083, 0x110AF },
     { 0x12000, 0x1236E },
     { 0x13000, 0x1342E },
+    { 0x16800, 0x16A38 },
+    { 0x1B000, 0x1B001 },
     { 0x20000, 0x2A6D6 },
     { 0x2A700, 0x2B734 },
+    { 0x2B740, 0x2B81D },
     { 0x2F800, 0x2FA1D }
 
 #define PREDICATE(c) uc_is_general_category (c, UC_CATEGORY_Lo)
--- a/tests/unictype/test-categ_Lu.c
+++ b/tests/unictype/test-categ_Lu.c
@@ -282,6 +282,7 @@
     { 0x0520, 0x0520 },
     { 0x0522, 0x0522 },
     { 0x0524, 0x0524 },
+    { 0x0526, 0x0526 },
     { 0x0531, 0x0556 },
     { 0x10A0, 0x10C5 },
     { 0x1E00, 0x1E00 },
@@ -514,6 +515,7 @@
     { 0xA65A, 0xA65A },
     { 0xA65C, 0xA65C },
     { 0xA65E, 0xA65E },
+    { 0xA660, 0xA660 },
     { 0xA662, 0xA662 },
     { 0xA664, 0xA664 },
     { 0xA666, 0xA666 },
@@ -578,6 +580,13 @@
     { 0xA784, 0xA784 },
     { 0xA786, 0xA786 },
     { 0xA78B, 0xA78B },
+    { 0xA78D, 0xA78D },
+    { 0xA790, 0xA790 },
+    { 0xA7A0, 0xA7A0 },
+    { 0xA7A2, 0xA7A2 },
+    { 0xA7A4, 0xA7A4 },
+    { 0xA7A6, 0xA7A6 },
+    { 0xA7A8, 0xA7A8 },
     { 0xFF21, 0xFF3A },
     { 0x10400, 0x10427 },
     { 0x1D400, 0x1D419 },
--- a/tests/unictype/test-categ_M.c
+++ b/tests/unictype/test-categ_M.c
@@ -25,10 +25,10 @@
     { 0x05C4, 0x05C5 },
     { 0x05C7, 0x05C7 },
     { 0x0610, 0x061A },
-    { 0x064B, 0x065E },
+    { 0x064B, 0x065F },
     { 0x0670, 0x0670 },
     { 0x06D6, 0x06DC },
-    { 0x06DE, 0x06E4 },
+    { 0x06DF, 0x06E4 },
     { 0x06E7, 0x06E8 },
     { 0x06EA, 0x06ED },
     { 0x0711, 0x0711 },
@@ -39,10 +39,11 @@
     { 0x081B, 0x0823 },
     { 0x0825, 0x0827 },
     { 0x0829, 0x082D },
+    { 0x0859, 0x085B },
     { 0x0900, 0x0903 },
-    { 0x093C, 0x093C },
-    { 0x093E, 0x094E },
-    { 0x0951, 0x0955 },
+    { 0x093A, 0x093C },
+    { 0x093E, 0x094F },
+    { 0x0951, 0x0957 },
     { 0x0962, 0x0963 },
     { 0x0981, 0x0983 },
     { 0x09BC, 0x09BC },
@@ -116,7 +117,7 @@
     { 0x0F3E, 0x0F3F },
     { 0x0F71, 0x0F84 },
     { 0x0F86, 0x0F87 },
-    { 0x0F90, 0x0F97 },
+    { 0x0F8D, 0x0F97 },
     { 0x0F99, 0x0FBC },
     { 0x0FC6, 0x0FC6 },
     { 0x102B, 0x103E },
@@ -128,7 +129,7 @@
     { 0x1082, 0x108D },
     { 0x108F, 0x108F },
     { 0x109A, 0x109D },
-    { 0x135F, 0x135F },
+    { 0x135D, 0x135F },
     { 0x1712, 0x1714 },
     { 0x1732, 0x1734 },
     { 0x1752, 0x1753 },
@@ -150,15 +151,17 @@
     { 0x1B6B, 0x1B73 },
     { 0x1B80, 0x1B82 },
     { 0x1BA1, 0x1BAA },
+    { 0x1BE6, 0x1BF3 },
     { 0x1C24, 0x1C37 },
     { 0x1CD0, 0x1CD2 },
     { 0x1CD4, 0x1CE8 },
     { 0x1CED, 0x1CED },
     { 0x1CF2, 0x1CF2 },
     { 0x1DC0, 0x1DE6 },
-    { 0x1DFD, 0x1DFF },
+    { 0x1DFC, 0x1DFF },
     { 0x20D0, 0x20F0 },
     { 0x2CEF, 0x2CF1 },
+    { 0x2D7F, 0x2D7F },
     { 0x2DE0, 0x2DFF },
     { 0x302A, 0x302F },
     { 0x3099, 0x309A },
@@ -196,6 +199,8 @@
     { 0x10A0C, 0x10A0F },
     { 0x10A38, 0x10A3A },
     { 0x10A3F, 0x10A3F },
+    { 0x11000, 0x11002 },
+    { 0x11038, 0x11046 },
     { 0x11080, 0x11082 },
     { 0x110B0, 0x110BA },
     { 0x1D165, 0x1D169 },
--- a/tests/unictype/test-categ_Mc.c
+++ b/tests/unictype/test-categ_Mc.c
@@ -18,9 +18,10 @@
 #include "test-predicate-part1.h"
 
     { 0x0903, 0x0903 },
+    { 0x093B, 0x093B },
     { 0x093E, 0x0940 },
     { 0x0949, 0x094C },
-    { 0x094E, 0x094E },
+    { 0x094E, 0x094F },
     { 0x0982, 0x0983 },
     { 0x09BE, 0x09C0 },
     { 0x09C7, 0x09C8 },
@@ -97,6 +98,10 @@
     { 0x1BA1, 0x1BA1 },
     { 0x1BA6, 0x1BA7 },
     { 0x1BAA, 0x1BAA },
+    { 0x1BE7, 0x1BE7 },
+    { 0x1BEA, 0x1BEC },
+    { 0x1BEE, 0x1BEE },
+    { 0x1BF2, 0x1BF3 },
     { 0x1C24, 0x1C2B },
     { 0x1C34, 0x1C35 },
     { 0x1CE1, 0x1CE1 },
@@ -118,6 +123,8 @@
     { 0xABE6, 0xABE7 },
     { 0xABE9, 0xABEA },
     { 0xABEC, 0xABEC },
+    { 0x11000, 0x11000 },
+    { 0x11002, 0x11002 },
     { 0x11082, 0x11082 },
     { 0x110B0, 0x110B2 },
     { 0x110B7, 0x110B8 },
--- a/tests/unictype/test-categ_Me.c
+++ b/tests/unictype/test-categ_Me.c
@@ -18,7 +18,6 @@
 #include "test-predicate-part1.h"
 
     { 0x0488, 0x0489 },
-    { 0x06DE, 0x06DE },
     { 0x20DD, 0x20E0 },
     { 0x20E2, 0x20E4 },
     { 0xA670, 0xA672 }
--- a/tests/unictype/test-categ_Mn.c
+++ b/tests/unictype/test-categ_Mn.c
@@ -25,7 +25,7 @@
     { 0x05C4, 0x05C5 },
     { 0x05C7, 0x05C7 },
     { 0x0610, 0x061A },
-    { 0x064B, 0x065E },
+    { 0x064B, 0x065F },
     { 0x0670, 0x0670 },
     { 0x06D6, 0x06DC },
     { 0x06DF, 0x06E4 },
@@ -39,11 +39,13 @@
     { 0x081B, 0x0823 },
     { 0x0825, 0x0827 },
     { 0x0829, 0x082D },
+    { 0x0859, 0x085B },
     { 0x0900, 0x0902 },
+    { 0x093A, 0x093A },
     { 0x093C, 0x093C },
     { 0x0941, 0x0948 },
     { 0x094D, 0x094D },
-    { 0x0951, 0x0955 },
+    { 0x0951, 0x0957 },
     { 0x0962, 0x0963 },
     { 0x0981, 0x0981 },
     { 0x09BC, 0x09BC },
@@ -104,7 +106,7 @@
     { 0x0F71, 0x0F7E },
     { 0x0F80, 0x0F84 },
     { 0x0F86, 0x0F87 },
-    { 0x0F90, 0x0F97 },
+    { 0x0F8D, 0x0F97 },
     { 0x0F99, 0x0FBC },
     { 0x0FC6, 0x0FC6 },
     { 0x102D, 0x1030 },
@@ -118,7 +120,7 @@
     { 0x1085, 0x1086 },
     { 0x108D, 0x108D },
     { 0x109D, 0x109D },
-    { 0x135F, 0x135F },
+    { 0x135D, 0x135F },
     { 0x1712, 0x1714 },
     { 0x1732, 0x1734 },
     { 0x1752, 0x1753 },
@@ -150,6 +152,10 @@
     { 0x1B80, 0x1B81 },
     { 0x1BA2, 0x1BA5 },
     { 0x1BA8, 0x1BA9 },
+    { 0x1BE6, 0x1BE6 },
+    { 0x1BE8, 0x1BE9 },
+    { 0x1BED, 0x1BED },
+    { 0x1BEF, 0x1BF1 },
     { 0x1C2C, 0x1C33 },
     { 0x1C36, 0x1C37 },
     { 0x1CD0, 0x1CD2 },
@@ -157,11 +163,12 @@
     { 0x1CE2, 0x1CE8 },
     { 0x1CED, 0x1CED },
     { 0x1DC0, 0x1DE6 },
-    { 0x1DFD, 0x1DFF },
+    { 0x1DFC, 0x1DFF },
     { 0x20D0, 0x20DC },
     { 0x20E1, 0x20E1 },
     { 0x20E5, 0x20F0 },
     { 0x2CEF, 0x2CF1 },
+    { 0x2D7F, 0x2D7F },
     { 0x2DE0, 0x2DFF },
     { 0x302A, 0x302F },
     { 0x3099, 0x309A },
@@ -202,6 +209,8 @@
     { 0x10A0C, 0x10A0F },
     { 0x10A38, 0x10A3A },
     { 0x10A3F, 0x10A3F },
+    { 0x11001, 0x11001 },
+    { 0x11038, 0x11046 },
     { 0x11080, 0x11081 },
     { 0x110B3, 0x110B6 },
     { 0x110B9, 0x110BA },
--- a/tests/unictype/test-categ_N.c
+++ b/tests/unictype/test-categ_N.c
@@ -30,6 +30,7 @@
     { 0x0A66, 0x0A6F },
     { 0x0AE6, 0x0AEF },
     { 0x0B66, 0x0B6F },
+    { 0x0B72, 0x0B77 },
     { 0x0BE6, 0x0BF2 },
     { 0x0C66, 0x0C6F },
     { 0x0C78, 0x0C7E },
@@ -94,6 +95,7 @@
     { 0x10B58, 0x10B5F },
     { 0x10B78, 0x10B7F },
     { 0x10E60, 0x10E7E },
+    { 0x11052, 0x1106F },
     { 0x12400, 0x12462 },
     { 0x1D360, 0x1D371 },
     { 0x1D7CE, 0x1D7FF },
--- a/tests/unictype/test-categ_Nd.c
+++ b/tests/unictype/test-categ_Nd.c
@@ -38,7 +38,7 @@
     { 0x17E0, 0x17E9 },
     { 0x1810, 0x1819 },
     { 0x1946, 0x194F },
-    { 0x19D0, 0x19DA },
+    { 0x19D0, 0x19D9 },
     { 0x1A80, 0x1A89 },
     { 0x1A90, 0x1A99 },
     { 0x1B50, 0x1B59 },
@@ -53,6 +53,7 @@
     { 0xABF0, 0xABF9 },
     { 0xFF10, 0xFF19 },
     { 0x104A0, 0x104A9 },
+    { 0x11066, 0x1106F },
     { 0x1D7CE, 0x1D7FF }
 
 #define PREDICATE(c) uc_is_general_category (c, UC_CATEGORY_Nd)
--- a/tests/unictype/test-categ_No.c
+++ b/tests/unictype/test-categ_No.c
@@ -21,12 +21,14 @@
     { 0x00B9, 0x00B9 },
     { 0x00BC, 0x00BE },
     { 0x09F4, 0x09F9 },
+    { 0x0B72, 0x0B77 },
     { 0x0BF0, 0x0BF2 },
     { 0x0C78, 0x0C7E },
     { 0x0D70, 0x0D75 },
     { 0x0F2A, 0x0F33 },
     { 0x1369, 0x137C },
     { 0x17F0, 0x17F9 },
+    { 0x19DA, 0x19DA },
     { 0x2070, 0x2070 },
     { 0x2074, 0x2079 },
     { 0x2080, 0x2089 },
@@ -53,6 +55,7 @@
     { 0x10B58, 0x10B5F },
     { 0x10B78, 0x10B7F },
     { 0x10E60, 0x10E7E },
+    { 0x11052, 0x11065 },
     { 0x1D360, 0x1D371 },
     { 0x1F100, 0x1F10A }
 
--- a/tests/unictype/test-categ_P.c
+++ b/tests/unictype/test-categ_P.c
@@ -49,6 +49,7 @@
     { 0x0700, 0x070D },
     { 0x07F7, 0x07F9 },
     { 0x0830, 0x083E },
+    { 0x085E, 0x085E },
     { 0x0964, 0x0965 },
     { 0x0970, 0x0970 },
     { 0x0DF4, 0x0DF4 },
@@ -58,6 +59,7 @@
     { 0x0F3A, 0x0F3D },
     { 0x0F85, 0x0F85 },
     { 0x0FD0, 0x0FD4 },
+    { 0x0FD9, 0x0FDA },
     { 0x104A, 0x104F },
     { 0x10FB, 0x10FB },
     { 0x1361, 0x1368 },
@@ -70,11 +72,11 @@
     { 0x17D8, 0x17DA },
     { 0x1800, 0x180A },
     { 0x1944, 0x1945 },
-    { 0x19DE, 0x19DF },
     { 0x1A1E, 0x1A1F },
     { 0x1AA0, 0x1AA6 },
     { 0x1AA8, 0x1AAD },
     { 0x1B5A, 0x1B60 },
+    { 0x1BFC, 0x1BFF },
     { 0x1C3B, 0x1C3F },
     { 0x1C7E, 0x1C7F },
     { 0x1CD3, 0x1CD3 },
@@ -93,6 +95,7 @@
     { 0x29FC, 0x29FD },
     { 0x2CF9, 0x2CFC },
     { 0x2CFE, 0x2CFF },
+    { 0x2D70, 0x2D70 },
     { 0x2E00, 0x2E2E },
     { 0x2E30, 0x2E31 },
     { 0x3001, 0x3003 },
@@ -143,6 +146,7 @@
     { 0x10A50, 0x10A58 },
     { 0x10A7F, 0x10A7F },
     { 0x10B39, 0x10B3F },
+    { 0x11047, 0x1104D },
     { 0x110BB, 0x110BC },
     { 0x110BE, 0x110C1 },
     { 0x12470, 0x12473 }
--- a/tests/unictype/test-categ_Po.c
+++ b/tests/unictype/test-categ_Po.c
@@ -45,6 +45,7 @@
     { 0x0700, 0x070D },
     { 0x07F7, 0x07F9 },
     { 0x0830, 0x083E },
+    { 0x085E, 0x085E },
     { 0x0964, 0x0965 },
     { 0x0970, 0x0970 },
     { 0x0DF4, 0x0DF4 },
@@ -53,6 +54,7 @@
     { 0x0F04, 0x0F12 },
     { 0x0F85, 0x0F85 },
     { 0x0FD0, 0x0FD4 },
+    { 0x0FD9, 0x0FDA },
     { 0x104A, 0x104F },
     { 0x10FB, 0x10FB },
     { 0x1361, 0x1368 },
@@ -64,11 +66,11 @@
     { 0x1800, 0x1805 },
     { 0x1807, 0x180A },
     { 0x1944, 0x1945 },
-    { 0x19DE, 0x19DF },
     { 0x1A1E, 0x1A1F },
     { 0x1AA0, 0x1AA6 },
     { 0x1AA8, 0x1AAD },
     { 0x1B5A, 0x1B60 },
+    { 0x1BFC, 0x1BFF },
     { 0x1C3B, 0x1C3F },
     { 0x1C7E, 0x1C7F },
     { 0x1CD3, 0x1CD3 },
@@ -82,6 +84,7 @@
     { 0x2055, 0x205E },
     { 0x2CF9, 0x2CFC },
     { 0x2CFE, 0x2CFF },
+    { 0x2D70, 0x2D70 },
     { 0x2E00, 0x2E01 },
     { 0x2E06, 0x2E08 },
     { 0x2E0B, 0x2E0B },
@@ -138,6 +141,7 @@
     { 0x10A50, 0x10A58 },
     { 0x10A7F, 0x10A7F },
     { 0x10B39, 0x10B3F },
+    { 0x11047, 0x1104D },
     { 0x110BB, 0x110BC },
     { 0x110BE, 0x110C1 },
     { 0x12470, 0x12473 }
--- a/tests/unictype/test-categ_S.c
+++ b/tests/unictype/test-categ_S.c
@@ -44,6 +44,7 @@
     { 0x0606, 0x0608 },
     { 0x060B, 0x060B },
     { 0x060E, 0x060F },
+    { 0x06DE, 0x06DE },
     { 0x06E9, 0x06E9 },
     { 0x06FD, 0x06FE },
     { 0x07F6, 0x07F6 },
@@ -53,7 +54,6 @@
     { 0x0B70, 0x0B70 },
     { 0x0BF3, 0x0BFA },
     { 0x0C7F, 0x0C7F },
-    { 0x0CF1, 0x0CF2 },
     { 0x0D79, 0x0D79 },
     { 0x0E3F, 0x0E3F },
     { 0x0F01, 0x0F03 },
@@ -71,7 +71,7 @@
     { 0x1390, 0x1399 },
     { 0x17DB, 0x17DB },
     { 0x1940, 0x1940 },
-    { 0x19E0, 0x19FF },
+    { 0x19DE, 0x19FF },
     { 0x1B61, 0x1B6A },
     { 0x1B74, 0x1B7C },
     { 0x1FBD, 0x1FBD },
@@ -84,7 +84,7 @@
     { 0x2052, 0x2052 },
     { 0x207A, 0x207C },
     { 0x208A, 0x208C },
-    { 0x20A0, 0x20B8 },
+    { 0x20A0, 0x20B9 },
     { 0x2100, 0x2101 },
     { 0x2103, 0x2106 },
     { 0x2108, 0x2109 },
@@ -100,29 +100,16 @@
     { 0x214A, 0x214D },
     { 0x214F, 0x214F },
     { 0x2190, 0x2328 },
-    { 0x232B, 0x23E8 },
+    { 0x232B, 0x23F3 },
     { 0x2400, 0x2426 },
     { 0x2440, 0x244A },
     { 0x249C, 0x24E9 },
-    { 0x2500, 0x26CD },
-    { 0x26CF, 0x26E1 },
-    { 0x26E3, 0x26E3 },
-    { 0x26E8, 0x26FF },
-    { 0x2701, 0x2704 },
-    { 0x2706, 0x2709 },
-    { 0x270C, 0x2727 },
-    { 0x2729, 0x274B },
-    { 0x274D, 0x274D },
-    { 0x274F, 0x2752 },
-    { 0x2756, 0x275E },
-    { 0x2761, 0x2767 },
-    { 0x2794, 0x2794 },
-    { 0x2798, 0x27AF },
-    { 0x27B1, 0x27BE },
-    { 0x27C0, 0x27C4 },
+    { 0x2500, 0x26FF },
+    { 0x2701, 0x2767 },
+    { 0x2794, 0x27C4 },
     { 0x27C7, 0x27CA },
     { 0x27CC, 0x27CC },
-    { 0x27D0, 0x27E5 },
+    { 0x27CE, 0x27E5 },
     { 0x27F0, 0x2982 },
     { 0x2999, 0x29D7 },
     { 0x29DC, 0x29FB },
@@ -157,6 +144,7 @@
     { 0xA836, 0xA839 },
     { 0xAA77, 0xAA79 },
     { 0xFB29, 0xFB29 },
+    { 0xFBB2, 0xFBC1 },
     { 0xFDFC, 0xFDFD },
     { 0xFE62, 0xFE62 },
     { 0xFE64, 0xFE66 },
@@ -198,23 +186,45 @@
     { 0x1D7C3, 0x1D7C3 },
     { 0x1F000, 0x1F02B },
     { 0x1F030, 0x1F093 },
+    { 0x1F0A0, 0x1F0AE },
+    { 0x1F0B1, 0x1F0BE },
+    { 0x1F0C1, 0x1F0CF },
+    { 0x1F0D1, 0x1F0DF },
     { 0x1F110, 0x1F12E },
-    { 0x1F131, 0x1F131 },
-    { 0x1F13D, 0x1F13D },
-    { 0x1F13F, 0x1F13F },
-    { 0x1F142, 0x1F142 },
-    { 0x1F146, 0x1F146 },
-    { 0x1F14A, 0x1F14E },
-    { 0x1F157, 0x1F157 },
-    { 0x1F15F, 0x1F15F },
-    { 0x1F179, 0x1F179 },
-    { 0x1F17B, 0x1F17C },
-    { 0x1F17F, 0x1F17F },
-    { 0x1F18A, 0x1F18D },
-    { 0x1F190, 0x1F190 },
-    { 0x1F200, 0x1F200 },
-    { 0x1F210, 0x1F231 },
-    { 0x1F240, 0x1F248 }
+    { 0x1F130, 0x1F169 },
+    { 0x1F170, 0x1F19A },
+    { 0x1F1E6, 0x1F202 },
+    { 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 },
+    { 0x1F550, 0x1F567 },
+    { 0x1F5FB, 0x1F5FF },
+    { 0x1F601, 0x1F610 },
+    { 0x1F612, 0x1F614 },
+    { 0x1F616, 0x1F616 },
+    { 0x1F618, 0x1F618 },
+    { 0x1F61A, 0x1F61A },
+    { 0x1F61C, 0x1F61E },
+    { 0x1F620, 0x1F625 },
+    { 0x1F628, 0x1F62B },
+    { 0x1F62D, 0x1F62D },
+    { 0x1F630, 0x1F633 },
+    { 0x1F635, 0x1F640 },
+    { 0x1F645, 0x1F64F },
+    { 0x1F680, 0x1F6C5 },
+    { 0x1F700, 0x1F773 }
 
 #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
@@ -26,7 +26,7 @@
     { 0x0BF9, 0x0BF9 },
     { 0x0E3F, 0x0E3F },
     { 0x17DB, 0x17DB },
-    { 0x20A0, 0x20B8 },
+    { 0x20A0, 0x20B9 },
     { 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 },
+    { 0xFBB2, 0xFBC1 },
     { 0xFF3E, 0xFF3E },
     { 0xFF40, 0xFF40 },
     { 0xFFE3, 0xFFE3 }
--- a/tests/unictype/test-categ_Sm.c
+++ b/tests/unictype/test-categ_Sm.c
@@ -31,6 +31,7 @@
     { 0x2052, 0x2052 },
     { 0x207A, 0x207C },
     { 0x208A, 0x208C },
+    { 0x2118, 0x2118 },
     { 0x2140, 0x2144 },
     { 0x214B, 0x214B },
     { 0x2190, 0x2194 },
@@ -55,7 +56,7 @@
     { 0x27C0, 0x27C4 },
     { 0x27C7, 0x27CA },
     { 0x27CC, 0x27CC },
-    { 0x27D0, 0x27E5 },
+    { 0x27CE, 0x27E5 },
     { 0x27F0, 0x27FF },
     { 0x2900, 0x2982 },
     { 0x2999, 0x29D7 },
--- a/tests/unictype/test-categ_So.c
+++ b/tests/unictype/test-categ_So.c
@@ -24,6 +24,7 @@
     { 0x00B6, 0x00B6 },
     { 0x0482, 0x0482 },
     { 0x060E, 0x060F },
+    { 0x06DE, 0x06DE },
     { 0x06E9, 0x06E9 },
     { 0x06FD, 0x06FE },
     { 0x07F6, 0x07F6 },
@@ -32,7 +33,6 @@
     { 0x0BF3, 0x0BF8 },
     { 0x0BFA, 0x0BFA },
     { 0x0C7F, 0x0C7F },
-    { 0x0CF1, 0x0CF2 },
     { 0x0D79, 0x0D79 },
     { 0x0F01, 0x0F03 },
     { 0x0F13, 0x0F17 },
@@ -48,14 +48,14 @@
     { 0x1360, 0x1360 },
     { 0x1390, 0x1399 },
     { 0x1940, 0x1940 },
-    { 0x19E0, 0x19FF },
+    { 0x19DE, 0x19FF },
     { 0x1B61, 0x1B6A },
     { 0x1B74, 0x1B7C },
     { 0x2100, 0x2101 },
     { 0x2103, 0x2106 },
     { 0x2108, 0x2109 },
     { 0x2114, 0x2114 },
-    { 0x2116, 0x2118 },
+    { 0x2116, 0x2117 },
     { 0x211E, 0x2123 },
     { 0x2125, 0x2125 },
     { 0x2127, 0x2127 },
@@ -80,7 +80,7 @@
     { 0x232B, 0x237B },
     { 0x237D, 0x239A },
     { 0x23B4, 0x23DB },
-    { 0x23E2, 0x23E8 },
+    { 0x23E2, 0x23F3 },
     { 0x2400, 0x2426 },
     { 0x2440, 0x244A },
     { 0x249C, 0x24E9 },
@@ -88,21 +88,9 @@
     { 0x25B8, 0x25C0 },
     { 0x25C2, 0x25F7 },
     { 0x2600, 0x266E },
-    { 0x2670, 0x26CD },
-    { 0x26CF, 0x26E1 },
-    { 0x26E3, 0x26E3 },
-    { 0x26E8, 0x26FF },
-    { 0x2701, 0x2704 },
-    { 0x2706, 0x2709 },
-    { 0x270C, 0x2727 },
-    { 0x2729, 0x274B },
-    { 0x274D, 0x274D },
-    { 0x274F, 0x2752 },
-    { 0x2756, 0x275E },
-    { 0x2761, 0x2767 },
-    { 0x2794, 0x2794 },
-    { 0x2798, 0x27AF },
-    { 0x27B1, 0x27BE },
+    { 0x2670, 0x26FF },
+    { 0x2701, 0x2767 },
+    { 0x2794, 0x27BF },
     { 0x2800, 0x28FF },
     { 0x2B00, 0x2B2F },
     { 0x2B45, 0x2B46 },
@@ -154,23 +142,45 @@
     { 0x1D300, 0x1D356 },
     { 0x1F000, 0x1F02B },
     { 0x1F030, 0x1F093 },
+    { 0x1F0A0, 0x1F0AE },
+    { 0x1F0B1, 0x1F0BE },
+    { 0x1F0C1, 0x1F0CF },
+    { 0x1F0D1, 0x1F0DF },
     { 0x1F110, 0x1F12E },
-    { 0x1F131, 0x1F131 },
-    { 0x1F13D, 0x1F13D },
-    { 0x1F13F, 0x1F13F },
-    { 0x1F142, 0x1F142 },
-    { 0x1F146, 0x1F146 },
-    { 0x1F14A, 0x1F14E },
-    { 0x1F157, 0x1F157 },
-    { 0x1F15F, 0x1F15F },
-    { 0x1F179, 0x1F179 },
-    { 0x1F17B, 0x1F17C },
-    { 0x1F17F, 0x1F17F },
-    { 0x1F18A, 0x1F18D },
-    { 0x1F190, 0x1F190 },
-    { 0x1F200, 0x1F200 },
-    { 0x1F210, 0x1F231 },
-    { 0x1F240, 0x1F248 }
+    { 0x1F130, 0x1F169 },
+    { 0x1F170, 0x1F19A },
+    { 0x1F1E6, 0x1F202 },
+    { 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 },
+    { 0x1F550, 0x1F567 },
+    { 0x1F5FB, 0x1F5FF },
+    { 0x1F601, 0x1F610 },
+    { 0x1F612, 0x1F614 },
+    { 0x1F616, 0x1F616 },
+    { 0x1F618, 0x1F618 },
+    { 0x1F61A, 0x1F61A },
+    { 0x1F61C, 0x1F61E },
+    { 0x1F620, 0x1F625 },
+    { 0x1F628, 0x1F62B },
+    { 0x1F62D, 0x1F62D },
+    { 0x1F630, 0x1F633 },
+    { 0x1F635, 0x1F640 },
+    { 0x1F645, 0x1F64F },
+    { 0x1F680, 0x1F6C5 },
+    { 0x1F700, 0x1F773 }
 
 #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
@@ -40,13 +40,13 @@
     { 0x038E, 0x03A1 },
     { 0x03A3, 0x03F5 },
     { 0x03F7, 0x0481 },
-    { 0x048A, 0x0525 },
+    { 0x048A, 0x0527 },
     { 0x0531, 0x0556 },
     { 0x0559, 0x0559 },
     { 0x0561, 0x0587 },
     { 0x05D0, 0x05EA },
     { 0x05F0, 0x05F2 },
-    { 0x0621, 0x064A },
+    { 0x0620, 0x064A },
     { 0x0660, 0x0669 },
     { 0x066E, 0x066F },
     { 0x0671, 0x06D3 },
@@ -65,12 +65,13 @@
     { 0x081A, 0x081A },
     { 0x0824, 0x0824 },
     { 0x0828, 0x0828 },
+    { 0x0840, 0x0858 },
     { 0x0904, 0x0939 },
     { 0x093D, 0x093D },
     { 0x0950, 0x0950 },
     { 0x0958, 0x0961 },
     { 0x0966, 0x096F },
-    { 0x0971, 0x0972 },
+    { 0x0971, 0x0977 },
     { 0x0979, 0x097F },
     { 0x0985, 0x098C },
     { 0x098F, 0x0990 },
@@ -145,11 +146,12 @@
     { 0x0CDE, 0x0CDE },
     { 0x0CE0, 0x0CE1 },
     { 0x0CE6, 0x0CEF },
+    { 0x0CF1, 0x0CF2 },
     { 0x0D05, 0x0D0C },
     { 0x0D0E, 0x0D10 },
-    { 0x0D12, 0x0D28 },
-    { 0x0D2A, 0x0D39 },
+    { 0x0D12, 0x0D3A },
     { 0x0D3D, 0x0D3D },
+    { 0x0D4E, 0x0D4E },
     { 0x0D60, 0x0D61 },
     { 0x0D66, 0x0D6F },
     { 0x0D7A, 0x0D7F },
@@ -185,7 +187,7 @@
     { 0x0F20, 0x0F29 },
     { 0x0F40, 0x0F47 },
     { 0x0F49, 0x0F6C },
-    { 0x0F88, 0x0F8B },
+    { 0x0F88, 0x0F8C },
     { 0x1000, 0x102A },
     { 0x103F, 0x1049 },
     { 0x1050, 0x1055 },
@@ -242,7 +244,7 @@
     { 0x1970, 0x1974 },
     { 0x1980, 0x19AB },
     { 0x19C1, 0x19C7 },
-    { 0x19D0, 0x19DA },
+    { 0x19D0, 0x19D9 },
     { 0x1A00, 0x1A16 },
     { 0x1A20, 0x1A54 },
     { 0x1A80, 0x1A89 },
@@ -253,6 +255,7 @@
     { 0x1B50, 0x1B59 },
     { 0x1B83, 0x1BA0 },
     { 0x1BAE, 0x1BB9 },
+    { 0x1BC0, 0x1BE5 },
     { 0x1C00, 0x1C23 },
     { 0x1C40, 0x1C49 },
     { 0x1C4D, 0x1C7D },
@@ -280,7 +283,7 @@
     { 0x1FF6, 0x1FFC },
     { 0x2071, 0x2071 },
     { 0x207F, 0x207F },
-    { 0x2090, 0x2094 },
+    { 0x2090, 0x209C },
     { 0x2102, 0x2102 },
     { 0x2107, 0x2107 },
     { 0x210A, 0x2113 },
@@ -322,7 +325,7 @@
     { 0x30FC, 0x30FF },
     { 0x3105, 0x312D },
     { 0x3131, 0x318E },
-    { 0x31A0, 0x31B7 },
+    { 0x31A0, 0x31BA },
     { 0x31F0, 0x31FF },
     { 0x3400, 0x4DB5 },
     { 0x4E00, 0x9FCB },
@@ -330,14 +333,15 @@
     { 0xA4D0, 0xA4FD },
     { 0xA500, 0xA60C },
     { 0xA610, 0xA62B },
-    { 0xA640, 0xA65F },
-    { 0xA662, 0xA66E },
+    { 0xA640, 0xA66E },
     { 0xA67F, 0xA697 },
     { 0xA6A0, 0xA6EF },
     { 0xA717, 0xA71F },
     { 0xA722, 0xA788 },
-    { 0xA78B, 0xA78C },
-    { 0xA7FB, 0xA801 },
+    { 0xA78B, 0xA78E },
+    { 0xA790, 0xA791 },
+    { 0xA7A0, 0xA7A9 },
+    { 0xA7FA, 0xA801 },
     { 0xA803, 0xA805 },
     { 0xA807, 0xA80A },
     { 0xA80C, 0xA822 },
@@ -364,6 +368,11 @@
     { 0xAAC0, 0xAAC0 },
     { 0xAAC2, 0xAAC2 },
     { 0xAADB, 0xAADD },
+    { 0xAB01, 0xAB06 },
+    { 0xAB09, 0xAB0E },
+    { 0xAB11, 0xAB16 },
+    { 0xAB20, 0xAB26 },
+    { 0xAB28, 0xAB2E },
     { 0xABC0, 0xABE2 },
     { 0xABF0, 0xABF9 },
     { 0xAC00, 0xD7A3 },
@@ -431,10 +440,14 @@
     { 0x10B40, 0x10B55 },
     { 0x10B60, 0x10B72 },
     { 0x10C00, 0x10C48 },
+    { 0x11003, 0x11037 },
+    { 0x11066, 0x1106F },
     { 0x11083, 0x110AF },
     { 0x12000, 0x1236E },
     { 0x12400, 0x12462 },
     { 0x13000, 0x1342E },
+    { 0x16800, 0x16A38 },
+    { 0x1B000, 0x1B001 },
     { 0x1D400, 0x1D454 },
     { 0x1D456, 0x1D49C },
     { 0x1D49E, 0x1D49F },
@@ -467,19 +480,13 @@
     { 0x1D7C4, 0x1D7CB },
     { 0x1D7CE, 0x1D7FF },
     { 0x1F110, 0x1F12C },
-    { 0x1F131, 0x1F131 },
-    { 0x1F13D, 0x1F13D },
-    { 0x1F13F, 0x1F13F },
-    { 0x1F142, 0x1F142 },
-    { 0x1F146, 0x1F146 },
-    { 0x1F157, 0x1F157 },
-    { 0x1F15F, 0x1F15F },
-    { 0x1F179, 0x1F179 },
-    { 0x1F17B, 0x1F17C },
-    { 0x1F17F, 0x1F17F },
-    { 0x1F18A, 0x1F18A },
+    { 0x1F130, 0x1F149 },
+    { 0x1F150, 0x1F169 },
+    { 0x1F170, 0x1F18A },
+    { 0x1F1E6, 0x1F1FF },
     { 0x20000, 0x2A6D6 },
     { 0x2A700, 0x2B734 },
+    { 0x2B740, 0x2B81D },
     { 0x2F800, 0x2FA1D }
 
 #define PREDICATE(c) uc_is_alnum (c)
--- a/tests/unictype/test-ctype_alpha.c
+++ b/tests/unictype/test-ctype_alpha.c
@@ -39,13 +39,13 @@
     { 0x038E, 0x03A1 },
     { 0x03A3, 0x03F5 },
     { 0x03F7, 0x0481 },
-    { 0x048A, 0x0525 },
+    { 0x048A, 0x0527 },
     { 0x0531, 0x0556 },
     { 0x0559, 0x0559 },
     { 0x0561, 0x0587 },
     { 0x05D0, 0x05EA },
     { 0x05F0, 0x05F2 },
-    { 0x0621, 0x064A },
+    { 0x0620, 0x064A },
     { 0x0660, 0x0669 },
     { 0x066E, 0x066F },
     { 0x0671, 0x06D3 },
@@ -64,12 +64,13 @@
     { 0x081A, 0x081A },
     { 0x0824, 0x0824 },
     { 0x0828, 0x0828 },
+    { 0x0840, 0x0858 },
     { 0x0904, 0x0939 },
     { 0x093D, 0x093D },
     { 0x0950, 0x0950 },
     { 0x0958, 0x0961 },
     { 0x0966, 0x096F },
-    { 0x0971, 0x0972 },
+    { 0x0971, 0x0977 },
     { 0x0979, 0x097F },
     { 0x0985, 0x098C },
     { 0x098F, 0x0990 },
@@ -144,11 +145,12 @@
     { 0x0CDE, 0x0CDE },
     { 0x0CE0, 0x0CE1 },
     { 0x0CE6, 0x0CEF },
+    { 0x0CF1, 0x0CF2 },
     { 0x0D05, 0x0D0C },
     { 0x0D0E, 0x0D10 },
-    { 0x0D12, 0x0D28 },
-    { 0x0D2A, 0x0D39 },
+    { 0x0D12, 0x0D3A },
     { 0x0D3D, 0x0D3D },
+    { 0x0D4E, 0x0D4E },
     { 0x0D60, 0x0D61 },
     { 0x0D66, 0x0D6F },
     { 0x0D7A, 0x0D7F },
@@ -184,7 +186,7 @@
     { 0x0F20, 0x0F29 },
     { 0x0F40, 0x0F47 },
     { 0x0F49, 0x0F6C },
-    { 0x0F88, 0x0F8B },
+    { 0x0F88, 0x0F8C },
     { 0x1000, 0x102A },
     { 0x103F, 0x1049 },
     { 0x1050, 0x1055 },
@@ -241,7 +243,7 @@
     { 0x1970, 0x1974 },
     { 0x1980, 0x19AB },
     { 0x19C1, 0x19C7 },
-    { 0x19D0, 0x19DA },
+    { 0x19D0, 0x19D9 },
     { 0x1A00, 0x1A16 },
     { 0x1A20, 0x1A54 },
     { 0x1A80, 0x1A89 },
@@ -252,6 +254,7 @@
     { 0x1B50, 0x1B59 },
     { 0x1B83, 0x1BA0 },
     { 0x1BAE, 0x1BB9 },
+    { 0x1BC0, 0x1BE5 },
     { 0x1C00, 0x1C23 },
     { 0x1C40, 0x1C49 },
     { 0x1C4D, 0x1C7D },
@@ -279,7 +282,7 @@
     { 0x1FF6, 0x1FFC },
     { 0x2071, 0x2071 },
     { 0x207F, 0x207F },
-    { 0x2090, 0x2094 },
+    { 0x2090, 0x209C },
     { 0x2102, 0x2102 },
     { 0x2107, 0x2107 },
     { 0x210A, 0x2113 },
@@ -321,7 +324,7 @@
     { 0x30FC, 0x30FF },
     { 0x3105, 0x312D },
     { 0x3131, 0x318E },
-    { 0x31A0, 0x31B7 },
+    { 0x31A0, 0x31BA },
     { 0x31F0, 0x31FF },
     { 0x3400, 0x4DB5 },
     { 0x4E00, 0x9FCB },
@@ -329,14 +332,15 @@
     { 0xA4D0, 0xA4FD },
     { 0xA500, 0xA60C },
     { 0xA610, 0xA62B },
-    { 0xA640, 0xA65F },
-    { 0xA662, 0xA66E },
+    { 0xA640, 0xA66E },
     { 0xA67F, 0xA697 },
     { 0xA6A0, 0xA6EF },
     { 0xA717, 0xA71F },
     { 0xA722, 0xA788 },
-    { 0xA78B, 0xA78C },
-    { 0xA7FB, 0xA801 },
+    { 0xA78B, 0xA78E },
+    { 0xA790, 0xA791 },
+    { 0xA7A0, 0xA7A9 },
+    { 0xA7FA, 0xA801 },
     { 0xA803, 0xA805 },
     { 0xA807, 0xA80A },
     { 0xA80C, 0xA822 },
@@ -363,6 +367,11 @@
     { 0xAAC0, 0xAAC0 },
     { 0xAAC2, 0xAAC2 },
     { 0xAADB, 0xAADD },
+    { 0xAB01, 0xAB06 },
+    { 0xAB09, 0xAB0E },
+    { 0xAB11, 0xAB16 },
+    { 0xAB20, 0xAB26 },
+    { 0xAB28, 0xAB2E },
     { 0xABC0, 0xABE2 },
     { 0xABF0, 0xABF9 },
     { 0xAC00, 0xD7A3 },
@@ -430,10 +439,14 @@
     { 0x10B40, 0x10B55 },
     { 0x10B60, 0x10B72 },
     { 0x10C00, 0x10C48 },
+    { 0x11003, 0x11037 },
+    { 0x11066, 0x1106F },
     { 0x11083, 0x110AF },
     { 0x12000, 0x1236E },
     { 0x12400, 0x12462 },
     { 0x13000, 0x1342E },
+    { 0x16800, 0x16A38 },
+    { 0x1B000, 0x1B001 },
     { 0x1D400, 0x1D454 },
     { 0x1D456, 0x1D49C },
     { 0x1D49E, 0x1D49F },
@@ -466,19 +479,13 @@
     { 0x1D7C4, 0x1D7CB },
     { 0x1D7CE, 0x1D7FF },
     { 0x1F110, 0x1F12C },
-    { 0x1F131, 0x1F131 },
-    { 0x1F13D, 0x1F13D },
-    { 0x1F13F, 0x1F13F },
-    { 0x1F142, 0x1F142 },
-    { 0x1F146, 0x1F146 },
-    { 0x1F157, 0x1F157 },
-    { 0x1F15F, 0x1F15F },
-    { 0x1F179, 0x1F179 },
-    { 0x1F17B, 0x1F17C },
-    { 0x1F17F, 0x1F17F },
-    { 0x1F18A, 0x1F18A },
+    { 0x1F130, 0x1F149 },
+    { 0x1F150, 0x1F169 },
+    { 0x1F170, 0x1F18A },
+    { 0x1F1E6, 0x1F1FF },
     { 0x20000, 0x2A6D6 },
     { 0x2A700, 0x2B734 },
+    { 0x2B740, 0x2B81D },
     { 0x2F800, 0x2FA1D }
 
 #define PREDICATE(c) uc_is_alpha (c)
--- a/tests/unictype/test-ctype_graph.c
+++ b/tests/unictype/test-ctype_graph.c
@@ -23,7 +23,7 @@
     { 0x0384, 0x038A },
     { 0x038C, 0x038C },
     { 0x038E, 0x03A1 },
-    { 0x03A3, 0x0525 },
+    { 0x03A3, 0x0527 },
     { 0x0531, 0x0556 },
     { 0x0559, 0x055F },
     { 0x0561, 0x0587 },
@@ -33,18 +33,15 @@
     { 0x05F0, 0x05F4 },
     { 0x0600, 0x0603 },
     { 0x0606, 0x061B },
-    { 0x061E, 0x061F },
-    { 0x0621, 0x065E },
-    { 0x0660, 0x070D },
+    { 0x061E, 0x070D },
     { 0x070F, 0x074A },
     { 0x074D, 0x07B1 },
     { 0x07C0, 0x07FA },
     { 0x0800, 0x082D },
     { 0x0830, 0x083E },
-    { 0x0900, 0x0939 },
-    { 0x093C, 0x094E },
-    { 0x0950, 0x0955 },
-    { 0x0958, 0x0972 },
+    { 0x0840, 0x085B },
+    { 0x085E, 0x085E },
+    { 0x0900, 0x0977 },
     { 0x0979, 0x097F },
     { 0x0981, 0x0983 },
     { 0x0985, 0x098C },
@@ -103,7 +100,7 @@
     { 0x0B56, 0x0B57 },
     { 0x0B5C, 0x0B5D },
     { 0x0B5F, 0x0B63 },
-    { 0x0B66, 0x0B71 },
+    { 0x0B66, 0x0B77 },
     { 0x0B82, 0x0B83 },
     { 0x0B85, 0x0B8A },
     { 0x0B8E, 0x0B90 },
@@ -151,11 +148,10 @@
     { 0x0D02, 0x0D03 },
     { 0x0D05, 0x0D0C },
     { 0x0D0E, 0x0D10 },
-    { 0x0D12, 0x0D28 },
-    { 0x0D2A, 0x0D39 },
+    { 0x0D12, 0x0D3A },
     { 0x0D3D, 0x0D44 },
     { 0x0D46, 0x0D48 },
-    { 0x0D4A, 0x0D4D },
+    { 0x0D4A, 0x0D4E },
     { 0x0D57, 0x0D57 },
     { 0x0D60, 0x0D63 },
     { 0x0D66, 0x0D75 },
@@ -193,11 +189,10 @@
     { 0x0EDC, 0x0EDD },
     { 0x0F00, 0x0F47 },
     { 0x0F49, 0x0F6C },
-    { 0x0F71, 0x0F8B },
-    { 0x0F90, 0x0F97 },
+    { 0x0F71, 0x0F97 },
     { 0x0F99, 0x0FBC },
     { 0x0FBE, 0x0FCC },
-    { 0x0FCE, 0x0FD8 },
+    { 0x0FCE, 0x0FDA },
     { 0x1000, 0x10C5 },
     { 0x10D0, 0x10FC },
     { 0x1100, 0x1248 },
@@ -216,7 +211,7 @@
     { 0x12D8, 0x1310 },
     { 0x1312, 0x1315 },
     { 0x1318, 0x135A },
-    { 0x135F, 0x137C },
+    { 0x135D, 0x137C },
     { 0x1380, 0x1399 },
     { 0x13A0, 0x13F4 },
     { 0x1400, 0x167F },
@@ -256,12 +251,13 @@
     { 0x1B50, 0x1B7C },
     { 0x1B80, 0x1BAA },
     { 0x1BAE, 0x1BB9 },
-    { 0x1C00, 0x1C37 },
+    { 0x1BC0, 0x1BF3 },
+    { 0x1BFC, 0x1C37 },
     { 0x1C3B, 0x1C49 },
     { 0x1C4D, 0x1C7F },
     { 0x1CD0, 0x1CF2 },
     { 0x1D00, 0x1DE6 },
-    { 0x1DFD, 0x1F15 },
+    { 0x1DFC, 0x1F15 },
     { 0x1F18, 0x1F1D },
     { 0x1F20, 0x1F45 },
     { 0x1F48, 0x1F4D },
@@ -283,38 +279,25 @@
     { 0x2060, 0x2064 },
     { 0x206A, 0x2071 },
     { 0x2074, 0x208E },
-    { 0x2090, 0x2094 },
-    { 0x20A0, 0x20B8 },
+    { 0x2090, 0x209C },
+    { 0x20A0, 0x20B9 },
     { 0x20D0, 0x20F0 },
     { 0x2100, 0x2189 },
-    { 0x2190, 0x23E8 },
+    { 0x2190, 0x23F3 },
     { 0x2400, 0x2426 },
     { 0x2440, 0x244A },
-    { 0x2460, 0x26CD },
-    { 0x26CF, 0x26E1 },
-    { 0x26E3, 0x26E3 },
-    { 0x26E8, 0x26FF },
-    { 0x2701, 0x2704 },
-    { 0x2706, 0x2709 },
-    { 0x270C, 0x2727 },
-    { 0x2729, 0x274B },
-    { 0x274D, 0x274D },
-    { 0x274F, 0x2752 },
-    { 0x2756, 0x275E },
-    { 0x2761, 0x2794 },
-    { 0x2798, 0x27AF },
-    { 0x27B1, 0x27BE },
-    { 0x27C0, 0x27CA },
+    { 0x2460, 0x26FF },
+    { 0x2701, 0x27CA },
     { 0x27CC, 0x27CC },
-    { 0x27D0, 0x2B4C },
+    { 0x27CE, 0x2B4C },
     { 0x2B50, 0x2B59 },
     { 0x2C00, 0x2C2E },
     { 0x2C30, 0x2C5E },
     { 0x2C60, 0x2CF1 },
     { 0x2CF9, 0x2D25 },
     { 0x2D30, 0x2D65 },
-    { 0x2D6F, 0x2D6F },
-    { 0x2D80, 0x2D96 },
+    { 0x2D6F, 0x2D70 },
+    { 0x2D7F, 0x2D96 },
     { 0x2DA0, 0x2DA6 },
     { 0x2DA8, 0x2DAE },
     { 0x2DB0, 0x2DB6 },
@@ -333,7 +316,7 @@
     { 0x3099, 0x30FF },
     { 0x3105, 0x312D },
     { 0x3131, 0x318E },
-    { 0x3190, 0x31B7 },
+    { 0x3190, 0x31BA },
     { 0x31C0, 0x31E3 },
     { 0x31F0, 0x321E },
     { 0x3220, 0x32FE },
@@ -342,12 +325,13 @@
     { 0xA000, 0xA48C },
     { 0xA490, 0xA4C6 },
     { 0xA4D0, 0xA62B },
-    { 0xA640, 0xA65F },
-    { 0xA662, 0xA673 },
+    { 0xA640, 0xA673 },
     { 0xA67C, 0xA697 },
     { 0xA6A0, 0xA6F7 },
-    { 0xA700, 0xA78C },
-    { 0xA7FB, 0xA82B },
+    { 0xA700, 0xA78E },
+    { 0xA790, 0xA791 },
+    { 0xA7A0, 0xA7A9 },
+    { 0xA7FA, 0xA82B },
     { 0xA830, 0xA839 },
     { 0xA840, 0xA877 },
     { 0xA880, 0xA8C4 },
@@ -364,6 +348,11 @@
     { 0xAA5C, 0xAA7B },
     { 0xAA80, 0xAAC2 },
     { 0xAADB, 0xAADF },
+    { 0xAB01, 0xAB06 },
+    { 0xAB09, 0xAB0E },
+    { 0xAB11, 0xAB16 },
+    { 0xAB20, 0xAB26 },
+    { 0xAB28, 0xAB2E },
     { 0xABC0, 0xABED },
     { 0xABF0, 0xABF9 },
     { 0xAC00, 0xD7A3 },
@@ -379,7 +368,7 @@
     { 0xFB3E, 0xFB3E },
     { 0xFB40, 0xFB41 },
     { 0xFB43, 0xFB44 },
-    { 0xFB46, 0xFBB1 },
+    { 0xFB46, 0xFBC1 },
     { 0xFBD3, 0xFD3F },
     { 0xFD50, 0xFD8F },
     { 0xFD92, 0xFDC7 },
@@ -447,11 +436,15 @@
     { 0x10B78, 0x10B7F },
     { 0x10C00, 0x10C48 },
     { 0x10E60, 0x10E7E },
+    { 0x11000, 0x1104D },
+    { 0x11052, 0x1106F },
     { 0x11080, 0x110C1 },
     { 0x12000, 0x1236E },
     { 0x12400, 0x12462 },
     { 0x12470, 0x12473 },
     { 0x13000, 0x1342E },
+    { 0x16800, 0x16A38 },
+    { 0x1B000, 0x1B001 },
     { 0x1D000, 0x1D0F5 },
     { 0x1D100, 0x1D126 },
     { 0x1D129, 0x1D1DD },
@@ -481,26 +474,49 @@
     { 0x1D7CE, 0x1D7FF },
     { 0x1F000, 0x1F02B },
     { 0x1F030, 0x1F093 },
+    { 0x1F0A0, 0x1F0AE },
+    { 0x1F0B1, 0x1F0BE },
+    { 0x1F0C1, 0x1F0CF },
+    { 0x1F0D1, 0x1F0DF },
     { 0x1F100, 0x1F10A },
     { 0x1F110, 0x1F12E },
-    { 0x1F131, 0x1F131 },
-    { 0x1F13D, 0x1F13D },
-    { 0x1F13F, 0x1F13F },
-    { 0x1F142, 0x1F142 },
-    { 0x1F146, 0x1F146 },
-    { 0x1F14A, 0x1F14E },
-    { 0x1F157, 0x1F157 },
-    { 0x1F15F, 0x1F15F },
-    { 0x1F179, 0x1F179 },
-    { 0x1F17B, 0x1F17C },
-    { 0x1F17F, 0x1F17F },
-    { 0x1F18A, 0x1F18D },
-    { 0x1F190, 0x1F190 },
-    { 0x1F200, 0x1F200 },
-    { 0x1F210, 0x1F231 },
+    { 0x1F130, 0x1F169 },
+    { 0x1F170, 0x1F19A },
+    { 0x1F1E6, 0x1F202 },
+    { 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 },
+    { 0x1F550, 0x1F567 },
+    { 0x1F5FB, 0x1F5FF },
+    { 0x1F601, 0x1F610 },
+    { 0x1F612, 0x1F614 },
+    { 0x1F616, 0x1F616 },
+    { 0x1F618, 0x1F618 },
+    { 0x1F61A, 0x1F61A },
+    { 0x1F61C, 0x1F61E },
+    { 0x1F620, 0x1F625 },
+    { 0x1F628, 0x1F62B },
+    { 0x1F62D, 0x1F62D },
+    { 0x1F630, 0x1F633 },
+    { 0x1F635, 0x1F640 },
+    { 0x1F645, 0x1F64F },
+    { 0x1F680, 0x1F6C5 },
+    { 0x1F700, 0x1F773 },
     { 0x20000, 0x2A6D6 },
     { 0x2A700, 0x2B734 },
+    { 0x2B740, 0x2B81D },
     { 0x2F800, 0x2FA1D },
     { 0xE0001, 0xE0001 },
     { 0xE0020, 0xE007F },
--- a/tests/unictype/test-ctype_lower.c
+++ b/tests/unictype/test-ctype_lower.c
@@ -166,6 +166,7 @@
     { 0x025B, 0x025B },
     { 0x0260, 0x0260 },
     { 0x0263, 0x0263 },
+    { 0x0265, 0x0265 },
     { 0x0268, 0x0269 },
     { 0x026B, 0x026B },
     { 0x026F, 0x026F },
@@ -295,6 +296,7 @@
     { 0x0521, 0x0521 },
     { 0x0523, 0x0523 },
     { 0x0525, 0x0525 },
+    { 0x0527, 0x0527 },
     { 0x0561, 0x0586 },
     { 0x1D79, 0x1D79 },
     { 0x1D7D, 0x1D7D },
@@ -524,6 +526,7 @@
     { 0xA65B, 0xA65B },
     { 0xA65D, 0xA65D },
     { 0xA65F, 0xA65F },
+    { 0xA661, 0xA661 },
     { 0xA663, 0xA663 },
     { 0xA665, 0xA665 },
     { 0xA667, 0xA667 },
@@ -588,6 +591,12 @@
     { 0xA785, 0xA785 },
     { 0xA787, 0xA787 },
     { 0xA78C, 0xA78C },
+    { 0xA791, 0xA791 },
+    { 0xA7A1, 0xA7A1 },
+    { 0xA7A3, 0xA7A3 },
+    { 0xA7A5, 0xA7A5 },
+    { 0xA7A7, 0xA7A7 },
+    { 0xA7A9, 0xA7A9 },
     { 0xFF41, 0xFF5A },
     { 0x10428, 0x1044F }
 
--- a/tests/unictype/test-ctype_print.c
+++ b/tests/unictype/test-ctype_print.c
@@ -23,7 +23,7 @@
     { 0x0384, 0x038A },
     { 0x038C, 0x038C },
     { 0x038E, 0x03A1 },
-    { 0x03A3, 0x0525 },
+    { 0x03A3, 0x0527 },
     { 0x0531, 0x0556 },
     { 0x0559, 0x055F },
     { 0x0561, 0x0587 },
@@ -33,18 +33,15 @@
     { 0x05F0, 0x05F4 },
     { 0x0600, 0x0603 },
     { 0x0606, 0x061B },
-    { 0x061E, 0x061F },
-    { 0x0621, 0x065E },
-    { 0x0660, 0x070D },
+    { 0x061E, 0x070D },
     { 0x070F, 0x074A },
     { 0x074D, 0x07B1 },
     { 0x07C0, 0x07FA },
     { 0x0800, 0x082D },
     { 0x0830, 0x083E },
-    { 0x0900, 0x0939 },
-    { 0x093C, 0x094E },
-    { 0x0950, 0x0955 },
-    { 0x0958, 0x0972 },
+    { 0x0840, 0x085B },
+    { 0x085E, 0x085E },
+    { 0x0900, 0x0977 },
     { 0x0979, 0x097F },
     { 0x0981, 0x0983 },
     { 0x0985, 0x098C },
@@ -103,7 +100,7 @@
     { 0x0B56, 0x0B57 },
     { 0x0B5C, 0x0B5D },
     { 0x0B5F, 0x0B63 },
-    { 0x0B66, 0x0B71 },
+    { 0x0B66, 0x0B77 },
     { 0x0B82, 0x0B83 },
     { 0x0B85, 0x0B8A },
     { 0x0B8E, 0x0B90 },
@@ -151,11 +148,10 @@
     { 0x0D02, 0x0D03 },
     { 0x0D05, 0x0D0C },
     { 0x0D0E, 0x0D10 },
-    { 0x0D12, 0x0D28 },
-    { 0x0D2A, 0x0D39 },
+    { 0x0D12, 0x0D3A },
     { 0x0D3D, 0x0D44 },
     { 0x0D46, 0x0D48 },
-    { 0x0D4A, 0x0D4D },
+    { 0x0D4A, 0x0D4E },
     { 0x0D57, 0x0D57 },
     { 0x0D60, 0x0D63 },
     { 0x0D66, 0x0D75 },
@@ -193,11 +189,10 @@
     { 0x0EDC, 0x0EDD },
     { 0x0F00, 0x0F47 },
     { 0x0F49, 0x0F6C },
-    { 0x0F71, 0x0F8B },
-    { 0x0F90, 0x0F97 },
+    { 0x0F71, 0x0F97 },
     { 0x0F99, 0x0FBC },
     { 0x0FBE, 0x0FCC },
-    { 0x0FCE, 0x0FD8 },
+    { 0x0FCE, 0x0FDA },
     { 0x1000, 0x10C5 },
     { 0x10D0, 0x10FC },
     { 0x1100, 0x1248 },
@@ -216,7 +211,7 @@
     { 0x12D8, 0x1310 },
     { 0x1312, 0x1315 },
     { 0x1318, 0x135A },
-    { 0x135F, 0x137C },
+    { 0x135D, 0x137C },
     { 0x1380, 0x1399 },
     { 0x13A0, 0x13F4 },
     { 0x1400, 0x169C },
@@ -255,12 +250,13 @@
     { 0x1B50, 0x1B7C },
     { 0x1B80, 0x1BAA },
     { 0x1BAE, 0x1BB9 },
-    { 0x1C00, 0x1C37 },
+    { 0x1BC0, 0x1BF3 },
+    { 0x1BFC, 0x1C37 },
     { 0x1C3B, 0x1C49 },
     { 0x1C4D, 0x1C7F },
     { 0x1CD0, 0x1CF2 },
     { 0x1D00, 0x1DE6 },
-    { 0x1DFD, 0x1F15 },
+    { 0x1DFC, 0x1F15 },
     { 0x1F18, 0x1F1D },
     { 0x1F20, 0x1F45 },
     { 0x1F48, 0x1F4D },
@@ -280,38 +276,25 @@
     { 0x202A, 0x2064 },
     { 0x206A, 0x2071 },
     { 0x2074, 0x208E },
-    { 0x2090, 0x2094 },
-    { 0x20A0, 0x20B8 },
+    { 0x2090, 0x209C },
+    { 0x20A0, 0x20B9 },
     { 0x20D0, 0x20F0 },
     { 0x2100, 0x2189 },
-    { 0x2190, 0x23E8 },
+    { 0x2190, 0x23F3 },
     { 0x2400, 0x2426 },
     { 0x2440, 0x244A },
-    { 0x2460, 0x26CD },
-    { 0x26CF, 0x26E1 },
-    { 0x26E3, 0x26E3 },
-    { 0x26E8, 0x26FF },
-    { 0x2701, 0x2704 },
-    { 0x2706, 0x2709 },
-    { 0x270C, 0x2727 },
-    { 0x2729, 0x274B },
-    { 0x274D, 0x274D },
-    { 0x274F, 0x2752 },
-    { 0x2756, 0x275E },
-    { 0x2761, 0x2794 },
-    { 0x2798, 0x27AF },
-    { 0x27B1, 0x27BE },
-    { 0x27C0, 0x27CA },
+    { 0x2460, 0x26FF },
+    { 0x2701, 0x27CA },
     { 0x27CC, 0x27CC },
-    { 0x27D0, 0x2B4C },
+    { 0x27CE, 0x2B4C },
     { 0x2B50, 0x2B59 },
     { 0x2C00, 0x2C2E },
     { 0x2C30, 0x2C5E },
     { 0x2C60, 0x2CF1 },
     { 0x2CF9, 0x2D25 },
     { 0x2D30, 0x2D65 },
-    { 0x2D6F, 0x2D6F },
-    { 0x2D80, 0x2D96 },
+    { 0x2D6F, 0x2D70 },
+    { 0x2D7F, 0x2D96 },
     { 0x2DA0, 0x2DA6 },
     { 0x2DA8, 0x2DAE },
     { 0x2DB0, 0x2DB6 },
@@ -330,7 +313,7 @@
     { 0x3099, 0x30FF },
     { 0x3105, 0x312D },
     { 0x3131, 0x318E },
-    { 0x3190, 0x31B7 },
+    { 0x3190, 0x31BA },
     { 0x31C0, 0x31E3 },
     { 0x31F0, 0x321E },
     { 0x3220, 0x32FE },
@@ -339,12 +322,13 @@
     { 0xA000, 0xA48C },
     { 0xA490, 0xA4C6 },
     { 0xA4D0, 0xA62B },
-    { 0xA640, 0xA65F },
-    { 0xA662, 0xA673 },
+    { 0xA640, 0xA673 },
     { 0xA67C, 0xA697 },
     { 0xA6A0, 0xA6F7 },
-    { 0xA700, 0xA78C },
-    { 0xA7FB, 0xA82B },
+    { 0xA700, 0xA78E },
+    { 0xA790, 0xA791 },
+    { 0xA7A0, 0xA7A9 },
+    { 0xA7FA, 0xA82B },
     { 0xA830, 0xA839 },
     { 0xA840, 0xA877 },
     { 0xA880, 0xA8C4 },
@@ -361,6 +345,11 @@
     { 0xAA5C, 0xAA7B },
     { 0xAA80, 0xAAC2 },
     { 0xAADB, 0xAADF },
+    { 0xAB01, 0xAB06 },
+    { 0xAB09, 0xAB0E },
+    { 0xAB11, 0xAB16 },
+    { 0xAB20, 0xAB26 },
+    { 0xAB28, 0xAB2E },
     { 0xABC0, 0xABED },
     { 0xABF0, 0xABF9 },
     { 0xAC00, 0xD7A3 },
@@ -376,7 +365,7 @@
     { 0xFB3E, 0xFB3E },
     { 0xFB40, 0xFB41 },
     { 0xFB43, 0xFB44 },
-    { 0xFB46, 0xFBB1 },
+    { 0xFB46, 0xFBC1 },
     { 0xFBD3, 0xFD3F },
     { 0xFD50, 0xFD8F },
     { 0xFD92, 0xFDC7 },
@@ -444,11 +433,15 @@
     { 0x10B78, 0x10B7F },
     { 0x10C00, 0x10C48 },
     { 0x10E60, 0x10E7E },
+    { 0x11000, 0x1104D },
+    { 0x11052, 0x1106F },
     { 0x11080, 0x110C1 },
     { 0x12000, 0x1236E },
     { 0x12400, 0x12462 },
     { 0x12470, 0x12473 },
     { 0x13000, 0x1342E },
+    { 0x16800, 0x16A38 },
+    { 0x1B000, 0x1B001 },
     { 0x1D000, 0x1D0F5 },
     { 0x1D100, 0x1D126 },
     { 0x1D129, 0x1D1DD },
@@ -478,26 +471,49 @@
     { 0x1D7CE, 0x1D7FF },
     { 0x1F000, 0x1F02B },
     { 0x1F030, 0x1F093 },
+    { 0x1F0A0, 0x1F0AE },
+    { 0x1F0B1, 0x1F0BE },
+    { 0x1F0C1, 0x1F0CF },
+    { 0x1F0D1, 0x1F0DF },
     { 0x1F100, 0x1F10A },
     { 0x1F110, 0x1F12E },
-    { 0x1F131, 0x1F131 },
-    { 0x1F13D, 0x1F13D },
-    { 0x1F13F, 0x1F13F },
-    { 0x1F142, 0x1F142 },
-    { 0x1F146, 0x1F146 },
-    { 0x1F14A, 0x1F14E },
-    { 0x1F157, 0x1F157 },
-    { 0x1F15F, 0x1F15F },
-    { 0x1F179, 0x1F179 },
-    { 0x1F17B, 0x1F17C },
-    { 0x1F17F, 0x1F17F },
-    { 0x1F18A, 0x1F18D },
-    { 0x1F190, 0x1F190 },
-    { 0x1F200, 0x1F200 },
-    { 0x1F210, 0x1F231 },
+    { 0x1F130, 0x1F169 },
+    { 0x1F170, 0x1F19A },
+    { 0x1F1E6, 0x1F202 },
+    { 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 },
+    { 0x1F550, 0x1F567 },
+    { 0x1F5FB, 0x1F5FF },
+    { 0x1F601, 0x1F610 },
+    { 0x1F612, 0x1F614 },
+    { 0x1F616, 0x1F616 },
+    { 0x1F618, 0x1F618 },
+    { 0x1F61A, 0x1F61A },
+    { 0x1F61C, 0x1F61E },
+    { 0x1F620, 0x1F625 },
+    { 0x1F628, 0x1F62B },
+    { 0x1F62D, 0x1F62D },
+    { 0x1F630, 0x1F633 },
+    { 0x1F635, 0x1F640 },
+    { 0x1F645, 0x1F64F },
+    { 0x1F680, 0x1F6C5 },
+    { 0x1F700, 0x1F773 },
     { 0x20000, 0x2A6D6 },
     { 0x2A700, 0x2B734 },
+    { 0x2B740, 0x2B81D },
     { 0x2F800, 0x2FA1D },
     { 0xE0001, 0xE0001 },
     { 0xE0020, 0xE007F },
--- a/tests/unictype/test-ctype_punct.c
+++ b/tests/unictype/test-ctype_punct.c
@@ -46,7 +46,7 @@
     { 0x0600, 0x0603 },
     { 0x0606, 0x061B },
     { 0x061E, 0x061F },
-    { 0x064B, 0x065E },
+    { 0x064B, 0x065F },
     { 0x066A, 0x066D },
     { 0x0670, 0x0670 },
     { 0x06D4, 0x06D4 },
@@ -65,10 +65,12 @@
     { 0x0825, 0x0827 },
     { 0x0829, 0x082D },
     { 0x0830, 0x083E },
+    { 0x0859, 0x085B },
+    { 0x085E, 0x085E },
     { 0x0900, 0x0903 },
-    { 0x093C, 0x093C },
-    { 0x093E, 0x094E },
-    { 0x0951, 0x0955 },
+    { 0x093A, 0x093C },
+    { 0x093E, 0x094F },
+    { 0x0951, 0x0957 },
     { 0x0962, 0x0965 },
     { 0x0970, 0x0970 },
     { 0x0981, 0x0983 },
@@ -102,6 +104,7 @@
     { 0x0B56, 0x0B57 },
     { 0x0B62, 0x0B63 },
     { 0x0B70, 0x0B70 },
+    { 0x0B72, 0x0B77 },
     { 0x0B82, 0x0B82 },
     { 0x0BBE, 0x0BC2 },
     { 0x0BC6, 0x0BC8 },
@@ -122,7 +125,6 @@
     { 0x0CCA, 0x0CCD },
     { 0x0CD5, 0x0CD6 },
     { 0x0CE2, 0x0CE3 },
-    { 0x0CF1, 0x0CF2 },
     { 0x0D02, 0x0D03 },
     { 0x0D3E, 0x0D44 },
     { 0x0D46, 0x0D48 },
@@ -149,10 +151,10 @@
     { 0x0F01, 0x0F1F },
     { 0x0F2A, 0x0F3F },
     { 0x0F71, 0x0F87 },
-    { 0x0F90, 0x0F97 },
+    { 0x0F8D, 0x0F97 },
     { 0x0F99, 0x0FBC },
     { 0x0FBE, 0x0FCC },
-    { 0x0FCE, 0x0FD8 },
+    { 0x0FCE, 0x0FDA },
     { 0x102B, 0x103E },
     { 0x104A, 0x104F },
     { 0x1056, 0x1059 },
@@ -164,7 +166,7 @@
     { 0x108F, 0x108F },
     { 0x109A, 0x109F },
     { 0x10FB, 0x10FB },
-    { 0x135F, 0x137C },
+    { 0x135D, 0x137C },
     { 0x1390, 0x1399 },
     { 0x1400, 0x1400 },
     { 0x166D, 0x166E },
@@ -186,6 +188,7 @@
     { 0x1944, 0x1945 },
     { 0x19B0, 0x19C0 },
     { 0x19C8, 0x19C9 },
+    { 0x19DA, 0x19DA },
     { 0x19DE, 0x19FF },
     { 0x1A17, 0x1A1B },
     { 0x1A1E, 0x1A1F },
@@ -199,6 +202,8 @@
     { 0x1B5A, 0x1B7C },
     { 0x1B80, 0x1B82 },
     { 0x1BA1, 0x1BAA },
+    { 0x1BE6, 0x1BF3 },
+    { 0x1BFC, 0x1BFF },
     { 0x1C24, 0x1C37 },
     { 0x1C3B, 0x1C3F },
     { 0x1C7E, 0x1C7F },
@@ -206,7 +211,7 @@
     { 0x1CED, 0x1CED },
     { 0x1CF2, 0x1CF2 },
     { 0x1DC0, 0x1DE6 },
-    { 0x1DFD, 0x1DFF },
+    { 0x1DFC, 0x1DFF },
     { 0x1FBD, 0x1FBD },
     { 0x1FBF, 0x1FC1 },
     { 0x1FCD, 0x1FCF },
@@ -220,7 +225,7 @@
     { 0x206A, 0x2070 },
     { 0x2074, 0x207E },
     { 0x2080, 0x208E },
-    { 0x20A0, 0x20B8 },
+    { 0x20A0, 0x20B9 },
     { 0x20D0, 0x20F0 },
     { 0x2100, 0x2101 },
     { 0x2103, 0x2106 },
@@ -236,31 +241,20 @@
     { 0x214A, 0x214D },
     { 0x214F, 0x215F },
     { 0x2189, 0x2189 },
-    { 0x2190, 0x23E8 },
+    { 0x2190, 0x23F3 },
     { 0x2400, 0x2426 },
     { 0x2440, 0x244A },
     { 0x2460, 0x249B },
-    { 0x24EA, 0x26CD },
-    { 0x26CF, 0x26E1 },
-    { 0x26E3, 0x26E3 },
-    { 0x26E8, 0x26FF },
-    { 0x2701, 0x2704 },
-    { 0x2706, 0x2709 },
-    { 0x270C, 0x2727 },
-    { 0x2729, 0x274B },
-    { 0x274D, 0x274D },
-    { 0x274F, 0x2752 },
-    { 0x2756, 0x275E },
-    { 0x2761, 0x2794 },
-    { 0x2798, 0x27AF },
-    { 0x27B1, 0x27BE },
-    { 0x27C0, 0x27CA },
+    { 0x24EA, 0x26FF },
+    { 0x2701, 0x27CA },
     { 0x27CC, 0x27CC },
-    { 0x27D0, 0x2B4C },
+    { 0x27CE, 0x2B4C },
     { 0x2B50, 0x2B59 },
     { 0x2CE5, 0x2CEA },
     { 0x2CEF, 0x2CF1 },
     { 0x2CF9, 0x2CFF },
+    { 0x2D70, 0x2D70 },
+    { 0x2D7F, 0x2D7F },
     { 0x2DE0, 0x2E2E },
     { 0x2E30, 0x2E31 },
     { 0x2E80, 0x2E99 },
@@ -323,6 +317,7 @@
     { 0xE000, 0xF8FF },
     { 0xFB1E, 0xFB1E },
     { 0xFB29, 0xFB29 },
+    { 0xFBB2, 0xFBC1 },
     { 0xFD3E, 0xFD3F },
     { 0xFDFC, 0xFDFD },
     { 0xFE00, 0xFE19 },
@@ -362,6 +357,9 @@
     { 0x10B58, 0x10B5F },
     { 0x10B78, 0x10B7F },
     { 0x10E60, 0x10E7E },
+    { 0x11000, 0x11002 },
+    { 0x11038, 0x1104D },
+    { 0x11052, 0x11065 },
     { 0x11080, 0x11082 },
     { 0x110B0, 0x110C1 },
     { 0x12470, 0x12473 },
@@ -383,14 +381,46 @@
     { 0x1D7C3, 0x1D7C3 },
     { 0x1F000, 0x1F02B },
     { 0x1F030, 0x1F093 },
+    { 0x1F0A0, 0x1F0AE },
+    { 0x1F0B1, 0x1F0BE },
+    { 0x1F0C1, 0x1F0CF },
+    { 0x1F0D1, 0x1F0DF },
     { 0x1F100, 0x1F10A },
     { 0x1F12D, 0x1F12E },
-    { 0x1F14A, 0x1F14E },
-    { 0x1F18B, 0x1F18D },
-    { 0x1F190, 0x1F190 },
-    { 0x1F200, 0x1F200 },
-    { 0x1F210, 0x1F231 },
+    { 0x1F14A, 0x1F14F },
+    { 0x1F18B, 0x1F19A },
+    { 0x1F200, 0x1F202 },
+    { 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 },
+    { 0x1F550, 0x1F567 },
+    { 0x1F5FB, 0x1F5FF },
+    { 0x1F601, 0x1F610 },
+    { 0x1F612, 0x1F614 },
+    { 0x1F616, 0x1F616 },
+    { 0x1F618, 0x1F618 },
+    { 0x1F61A, 0x1F61A },
+    { 0x1F61C, 0x1F61E },
+    { 0x1F620, 0x1F625 },
+    { 0x1F628, 0x1F62B },
+    { 0x1F62D, 0x1F62D },
+    { 0x1F630, 0x1F633 },
+    { 0x1F635, 0x1F640 },
+    { 0x1F645, 0x1F64F },
+    { 0x1F680, 0x1F6C5 },
+    { 0x1F700, 0x1F773 },
     { 0xE0001, 0xE0001 },
     { 0xE0020, 0xE007F },
     { 0xE0100, 0xE01EF },
--- a/tests/unictype/test-ctype_upper.c
+++ b/tests/unictype/test-ctype_upper.c
@@ -281,6 +281,7 @@
     { 0x0520, 0x0520 },
     { 0x0522, 0x0522 },
     { 0x0524, 0x0524 },
+    { 0x0526, 0x0526 },
     { 0x0531, 0x0556 },
     { 0x10A0, 0x10C5 },
     { 0x1E00, 0x1E00 },
@@ -508,6 +509,7 @@
     { 0xA65A, 0xA65A },
     { 0xA65C, 0xA65C },
     { 0xA65E, 0xA65E },
+    { 0xA660, 0xA660 },
     { 0xA662, 0xA662 },
     { 0xA664, 0xA664 },
     { 0xA666, 0xA666 },
@@ -572,6 +574,13 @@
     { 0xA784, 0xA784 },
     { 0xA786, 0xA786 },
     { 0xA78B, 0xA78B },
+    { 0xA78D, 0xA78D },
+    { 0xA790, 0xA790 },
+    { 0xA7A0, 0xA7A0 },
+    { 0xA7A2, 0xA7A2 },
+    { 0xA7A4, 0xA7A4 },
+    { 0xA7A6, 0xA7A6 },
+    { 0xA7A8, 0xA7A8 },
     { 0xFF21, 0xFF3A },
     { 0x10400, 0x10427 }
 
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
     { 0x0030, 0 },
     { 0x0031, 1 },
     { 0x0032, 2 },
@@ -221,7 +221,6 @@
     { 0x19D7, 7 },
     { 0x19D8, 8 },
     { 0x19D9, 9 },
-    { 0x19DA, 1 },
     { 0x1A80, 0 },
     { 0x1A81, 1 },
     { 0x1A82, 2 },
@@ -362,6 +361,16 @@
     { 0x104A7, 7 },
     { 0x104A8, 8 },
     { 0x104A9, 9 },
+    { 0x11066, 0 },
+    { 0x11067, 1 },
+    { 0x11068, 2 },
+    { 0x11069, 3 },
+    { 0x1106A, 4 },
+    { 0x1106B, 5 },
+    { 0x1106C, 6 },
+    { 0x1106D, 7 },
+    { 0x1106E, 8 },
+    { 0x1106F, 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
     { 0x0030, 0 },
     { 0x0031, 1 },
     { 0x0032, 2 },
@@ -469,6 +469,25 @@
     { 0x10E66, 7 },
     { 0x10E67, 8 },
     { 0x10E68, 9 },
+    { 0x11052, 1 },
+    { 0x11053, 2 },
+    { 0x11054, 3 },
+    { 0x11055, 4 },
+    { 0x11056, 5 },
+    { 0x11057, 6 },
+    { 0x11058, 7 },
+    { 0x11059, 8 },
+    { 0x1105A, 9 },
+    { 0x11066, 0 },
+    { 0x11067, 1 },
+    { 0x11068, 2 },
+    { 0x11069, 3 },
+    { 0x1106A, 4 },
+    { 0x1106B, 5 },
+    { 0x1106C, 6 },
+    { 0x1106D, 7 },
+    { 0x1106E, 8 },
+    { 0x1106F, 9 },
     { 0x1D7CE, 0 },
     { 0x1D7CF, 1 },
     { 0x1D7D0, 2 },
--- 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 5.2.0.  */
+/* Generated automatically by gen-uni-tables.c for Unicode 6.0.0.  */
     { 0x0030, 0, 1 },
     { 0x0031, 1, 1 },
     { 0x0032, 2, 1 },
@@ -103,6 +103,12 @@
     { 0x0B6D, 7, 1 },
     { 0x0B6E, 8, 1 },
     { 0x0B6F, 9, 1 },
+    { 0x0B72, 1, 4 },
+    { 0x0B73, 1, 2 },
+    { 0x0B74, 3, 4 },
+    { 0x0B75, 1, 16 },
+    { 0x0B76, 1, 8 },
+    { 0x0B77, 3, 16 },
     { 0x0BE6, 0, 1 },
     { 0x0BE7, 1, 1 },
     { 0x0BE8, 2, 1 },
@@ -894,6 +900,36 @@
     { 0x10E7C, 1, 4 },
     { 0x10E7D, 1, 3 },
     { 0x10E7E, 2, 3 },
+    { 0x11052, 1, 1 },
+    { 0x11053, 2, 1 },
+    { 0x11054, 3, 1 },
+    { 0x11055, 4, 1 },
+    { 0x11056, 5, 1 },
+    { 0x11057, 6, 1 },
+    { 0x11058, 7, 1 },
+    { 0x11059, 8, 1 },
+    { 0x1105A, 9, 1 },
+    { 0x1105B, 10, 1 },
+    { 0x1105C, 20, 1 },
+    { 0x1105D, 30, 1 },
+    { 0x1105E, 40, 1 },
+    { 0x1105F, 50, 1 },
+    { 0x11060, 60, 1 },
+    { 0x11061, 70, 1 },
+    { 0x11062, 80, 1 },
+    { 0x11063, 90, 1 },
+    { 0x11064, 100, 1 },
+    { 0x11065, 1000, 1 },
+    { 0x11066, 0, 1 },
+    { 0x11067, 1, 1 },
+    { 0x11068, 2, 1 },
+    { 0x11069, 3, 1 },
+    { 0x1106A, 4, 1 },
+    { 0x1106B, 5, 1 },
+    { 0x1106C, 6, 1 },
+    { 0x1106D, 7, 1 },
+    { 0x1106E, 8, 1 },
+    { 0x1106F, 9, 1 },
     { 0x12400, 2, 1 },
     { 0x12401, 3, 1 },
     { 0x12402, 4, 1 },
--- a/tests/unictype/test-pr_alphabetic.c
+++ b/tests/unictype/test-pr_alphabetic.c
@@ -39,7 +39,7 @@
     { 0x038E, 0x03A1 },
     { 0x03A3, 0x03F5 },
     { 0x03F7, 0x0481 },
-    { 0x048A, 0x0525 },
+    { 0x048A, 0x0527 },
     { 0x0531, 0x0556 },
     { 0x0559, 0x0559 },
     { 0x0561, 0x0587 },
@@ -51,8 +51,8 @@
     { 0x05D0, 0x05EA },
     { 0x05F0, 0x05F2 },
     { 0x0610, 0x061A },
-    { 0x0621, 0x0657 },
-    { 0x0659, 0x065E },
+    { 0x0620, 0x0657 },
+    { 0x0659, 0x065F },
     { 0x066E, 0x06D3 },
     { 0x06D5, 0x06DC },
     { 0x06E1, 0x06E8 },
@@ -66,13 +66,12 @@
     { 0x07FA, 0x07FA },
     { 0x0800, 0x0817 },
     { 0x081A, 0x082C },
-    { 0x0900, 0x0939 },
+    { 0x0840, 0x0858 },
+    { 0x0900, 0x093B },
     { 0x093D, 0x094C },
-    { 0x094E, 0x094E },
-    { 0x0950, 0x0950 },
-    { 0x0955, 0x0955 },
-    { 0x0958, 0x0963 },
-    { 0x0971, 0x0972 },
+    { 0x094E, 0x0950 },
+    { 0x0955, 0x0963 },
+    { 0x0971, 0x0977 },
     { 0x0979, 0x097F },
     { 0x0981, 0x0983 },
     { 0x0985, 0x098C },
@@ -169,14 +168,15 @@
     { 0x0CD5, 0x0CD6 },
     { 0x0CDE, 0x0CDE },
     { 0x0CE0, 0x0CE3 },
+    { 0x0CF1, 0x0CF2 },
     { 0x0D02, 0x0D03 },
     { 0x0D05, 0x0D0C },
     { 0x0D0E, 0x0D10 },
-    { 0x0D12, 0x0D28 },
-    { 0x0D2A, 0x0D39 },
+    { 0x0D12, 0x0D3A },
     { 0x0D3D, 0x0D44 },
     { 0x0D46, 0x0D48 },
     { 0x0D4A, 0x0D4C },
+    { 0x0D4E, 0x0D4E },
     { 0x0D57, 0x0D57 },
     { 0x0D60, 0x0D63 },
     { 0x0D7A, 0x0D7F },
@@ -214,8 +214,7 @@
     { 0x0F40, 0x0F47 },
     { 0x0F49, 0x0F6C },
     { 0x0F71, 0x0F81 },
-    { 0x0F88, 0x0F8B },
-    { 0x0F90, 0x0F97 },
+    { 0x0F88, 0x0F97 },
     { 0x0F99, 0x0FBC },
     { 0x1000, 0x1036 },
     { 0x1038, 0x1038 },
@@ -282,6 +281,8 @@
     { 0x1B45, 0x1B4B },
     { 0x1B80, 0x1BA9 },
     { 0x1BAE, 0x1BAF },
+    { 0x1BC0, 0x1BE5 },
+    { 0x1BE7, 0x1BF1 },
     { 0x1C00, 0x1C35 },
     { 0x1C4D, 0x1C4F },
     { 0x1C5A, 0x1C7D },
@@ -309,7 +310,7 @@
     { 0x1FF6, 0x1FFC },
     { 0x2071, 0x2071 },
     { 0x207F, 0x207F },
-    { 0x2090, 0x2094 },
+    { 0x2090, 0x209C },
     { 0x2102, 0x2102 },
     { 0x2107, 0x2107 },
     { 0x210A, 0x2113 },
@@ -353,7 +354,7 @@
     { 0x30FC, 0x30FF },
     { 0x3105, 0x312D },
     { 0x3131, 0x318E },
-    { 0x31A0, 0x31B7 },
+    { 0x31A0, 0x31BA },
     { 0x31F0, 0x31FF },
     { 0x3400, 0x4DB5 },
     { 0x4E00, 0x9FCB },
@@ -362,14 +363,15 @@
     { 0xA500, 0xA60C },
     { 0xA610, 0xA61F },
     { 0xA62A, 0xA62B },
-    { 0xA640, 0xA65F },
-    { 0xA662, 0xA66E },
+    { 0xA640, 0xA66E },
     { 0xA67F, 0xA697 },
     { 0xA6A0, 0xA6EF },
     { 0xA717, 0xA71F },
     { 0xA722, 0xA788 },
-    { 0xA78B, 0xA78C },
-    { 0xA7FB, 0xA801 },
+    { 0xA78B, 0xA78E },
+    { 0xA790, 0xA791 },
+    { 0xA7A0, 0xA7A9 },
+    { 0xA7FA, 0xA801 },
     { 0xA803, 0xA805 },
     { 0xA807, 0xA80A },
     { 0xA80C, 0xA827 },
@@ -380,7 +382,8 @@
     { 0xA90A, 0xA92A },
     { 0xA930, 0xA952 },
     { 0xA960, 0xA97C },
-    { 0xA980, 0xA9BF },
+    { 0xA980, 0xA9B2 },
+    { 0xA9B4, 0xA9BF },
     { 0xA9CF, 0xA9CF },
     { 0xAA00, 0xAA36 },
     { 0xAA40, 0xAA4D },
@@ -390,6 +393,11 @@
     { 0xAAC0, 0xAAC0 },
     { 0xAAC2, 0xAAC2 },
     { 0xAADB, 0xAADD },
+    { 0xAB01, 0xAB06 },
+    { 0xAB09, 0xAB0E },
+    { 0xAB11, 0xAB16 },
+    { 0xAB20, 0xAB26 },
+    { 0xAB28, 0xAB2E },
     { 0xABC0, 0xABEA },
     { 0xAC00, 0xD7A3 },
     { 0xD7B0, 0xD7C6 },
@@ -454,10 +462,13 @@
     { 0x10B40, 0x10B55 },
     { 0x10B60, 0x10B72 },
     { 0x10C00, 0x10C48 },
+    { 0x11000, 0x11045 },
     { 0x11082, 0x110B8 },
     { 0x12000, 0x1236E },
     { 0x12400, 0x12462 },
     { 0x13000, 0x1342E },
+    { 0x16800, 0x16A38 },
+    { 0x1B000, 0x1B001 },
     { 0x1D400, 0x1D454 },
     { 0x1D456, 0x1D49C },
     { 0x1D49E, 0x1D49F },
@@ -490,6 +501,7 @@
     { 0x1D7C4, 0x1D7CB },
     { 0x20000, 0x2A6D6 },
     { 0x2A700, 0x2B734 },
+    { 0x2B740, 0x2B81D },
     { 0x2F800, 0x2FA1D }
 
 #define PREDICATE(c) uc_is_property_alphabetic (c)
--- a/tests/unictype/test-pr_bidi_arabic_digit.c
+++ b/tests/unictype/test-pr_bidi_arabic_digit.c
@@ -21,6 +21,7 @@
     { 0x0660, 0x0669 },
     { 0x066B, 0x066C },
     { 0x06DD, 0x06DD },
+    { 0x070F, 0x070F },
     { 0x10E60, 0x10E7E }
 
 #define PREDICATE(c) uc_is_property_bidi_arabic_digit (c)
--- a/tests/unictype/test-pr_bidi_arabic_right_to_left.c
+++ b/tests/unictype/test-pr_bidi_arabic_right_to_left.c
@@ -22,7 +22,6 @@
     { 0x060B, 0x060B },
     { 0x060D, 0x060D },
     { 0x061B, 0x064A },
-    { 0x065F, 0x065F },
     { 0x066D, 0x066F },
     { 0x0671, 0x06D5 },
     { 0x06E5, 0x06E6 },
--- a/tests/unictype/test-pr_bidi_boundary_neutral.c
+++ b/tests/unictype/test-pr_bidi_boundary_neutral.c
@@ -22,7 +22,6 @@
     { 0x007F, 0x0084 },
     { 0x0086, 0x009F },
     { 0x00AD, 0x00AD },
-    { 0x070F, 0x070F },
     { 0x200B, 0x200D },
     { 0x2060, 0x2064 },
     { 0x206A, 0x206F },
--- a/tests/unictype/test-pr_bidi_eur_num_terminator.c
+++ b/tests/unictype/test-pr_bidi_eur_num_terminator.c
@@ -29,7 +29,7 @@
     { 0x0E3F, 0x0E3F },
     { 0x17DB, 0x17DB },
     { 0x2030, 0x2034 },
-    { 0x20A0, 0x20B8 },
+    { 0x20A0, 0x20B9 },
     { 0x212E, 0x212E },
     { 0x2213, 0x2213 },
     { 0xA838, 0xA839 },
--- a/tests/unictype/test-pr_bidi_hebrew_right_to_left.c
+++ b/tests/unictype/test-pr_bidi_hebrew_right_to_left.c
@@ -29,7 +29,8 @@
     { 0x081A, 0x081A },
     { 0x0824, 0x0824 },
     { 0x0828, 0x0828 },
-    { 0x082E, 0x08FF },
+    { 0x082E, 0x0858 },
+    { 0x085C, 0x08FF },
     { 0x200F, 0x200F },
     { 0xFB1D, 0xFB1D },
     { 0xFB1F, 0xFB28 },
--- a/tests/unictype/test-pr_bidi_left_to_right.c
+++ b/tests/unictype/test-pr_bidi_left_to_right.c
@@ -37,11 +37,12 @@
     { 0x03F7, 0x0482 },
     { 0x048A, 0x0589 },
     { 0x058B, 0x058F },
-    { 0x0903, 0x093B },
+    { 0x0903, 0x0939 },
+    { 0x093B, 0x093B },
     { 0x093D, 0x0940 },
     { 0x0949, 0x094C },
     { 0x094E, 0x0950 },
-    { 0x0956, 0x0961 },
+    { 0x0958, 0x0961 },
     { 0x0964, 0x0980 },
     { 0x0982, 0x09BB },
     { 0x09BD, 0x09C0 },
@@ -84,8 +85,7 @@
     { 0x0C7F, 0x0CBB },
     { 0x0CBD, 0x0CCB },
     { 0x0CCE, 0x0CE1 },
-    { 0x0CE4, 0x0CF0 },
-    { 0x0CF3, 0x0D40 },
+    { 0x0CE4, 0x0D40 },
     { 0x0D45, 0x0D4C },
     { 0x0D4E, 0x0D61 },
     { 0x0D64, 0x0DC9 },
@@ -106,7 +106,7 @@
     { 0x0F3E, 0x0F70 },
     { 0x0F7F, 0x0F7F },
     { 0x0F85, 0x0F85 },
-    { 0x0F88, 0x0F8F },
+    { 0x0F88, 0x0F8C },
     { 0x0F98, 0x0F98 },
     { 0x0FBD, 0x0FC5 },
     { 0x0FC7, 0x102C },
@@ -120,7 +120,7 @@
     { 0x1083, 0x1084 },
     { 0x1087, 0x108C },
     { 0x108E, 0x109C },
-    { 0x109E, 0x135E },
+    { 0x109E, 0x135C },
     { 0x1360, 0x138F },
     { 0x139A, 0x13FF },
     { 0x1401, 0x167F },
@@ -161,14 +161,18 @@
     { 0x1B74, 0x1B7F },
     { 0x1B82, 0x1BA1 },
     { 0x1BA6, 0x1BA7 },
-    { 0x1BAA, 0x1C2B },
+    { 0x1BAA, 0x1BE5 },
+    { 0x1BE7, 0x1BE7 },
+    { 0x1BEA, 0x1BEC },
+    { 0x1BEE, 0x1BEE },
+    { 0x1BF2, 0x1C2B },
     { 0x1C34, 0x1C35 },
     { 0x1C38, 0x1CCF },
     { 0x1CD3, 0x1CD3 },
     { 0x1CE1, 0x1CE1 },
     { 0x1CE9, 0x1CEC },
     { 0x1CEE, 0x1DBF },
-    { 0x1DE7, 0x1DFC },
+    { 0x1DE7, 0x1DFB },
     { 0x1E00, 0x1FBC },
     { 0x1FBE, 0x1FBE },
     { 0x1FC2, 0x1FCC },
@@ -180,7 +184,7 @@
     { 0x2071, 0x2073 },
     { 0x207F, 0x207F },
     { 0x208F, 0x209F },
-    { 0x20B9, 0x20CF },
+    { 0x20BA, 0x20CF },
     { 0x20F1, 0x20FF },
     { 0x2102, 0x2102 },
     { 0x2107, 0x2107 },
@@ -199,33 +203,21 @@
     { 0x218A, 0x218F },
     { 0x2336, 0x237A },
     { 0x2395, 0x2395 },
-    { 0x23E9, 0x23FF },
+    { 0x23F4, 0x23FF },
     { 0x2427, 0x243F },
     { 0x244B, 0x245F },
     { 0x249C, 0x24E9 },
     { 0x26AC, 0x26AC },
-    { 0x26CE, 0x26CE },
-    { 0x26E2, 0x26E2 },
-    { 0x26E4, 0x26E7 },
     { 0x2700, 0x2700 },
-    { 0x2705, 0x2705 },
-    { 0x270A, 0x270B },
-    { 0x2728, 0x2728 },
-    { 0x274C, 0x274C },
-    { 0x274E, 0x274E },
-    { 0x2753, 0x2755 },
-    { 0x275F, 0x2760 },
-    { 0x2795, 0x2797 },
-    { 0x27B0, 0x27B0 },
-    { 0x27BF, 0x27BF },
     { 0x27CB, 0x27CB },
-    { 0x27CD, 0x27CF },
+    { 0x27CD, 0x27CD },
     { 0x2800, 0x28FF },
     { 0x2B4D, 0x2B4F },
     { 0x2B5A, 0x2CE4 },
     { 0x2CEB, 0x2CEE },
     { 0x2CF2, 0x2CF8 },
-    { 0x2D00, 0x2DDF },
+    { 0x2D00, 0x2D7E },
+    { 0x2D80, 0x2DDF },
     { 0x2E32, 0x2E7F },
     { 0x2E9A, 0x2E9A },
     { 0x2EF4, 0x2EFF },
@@ -295,7 +287,10 @@
     { 0x1018B, 0x1018F },
     { 0x1019C, 0x101FC },
     { 0x101FE, 0x107FF },
-    { 0x11000, 0x1107F },
+    { 0x11000, 0x11000 },
+    { 0x11002, 0x11037 },
+    { 0x11047, 0x11051 },
+    { 0x11066, 0x1107F },
     { 0x11082, 0x110B2 },
     { 0x110B7, 0x110B8 },
     { 0x110BB, 0x1D166 },
@@ -312,8 +307,42 @@
     { 0x1D7C4, 0x1D7CD },
     { 0x1D800, 0x1EFFF },
     { 0x1F02C, 0x1F02F },
-    { 0x1F094, 0x1F0FF },
-    { 0x1F10B, 0x1FFFD },
+    { 0x1F094, 0x1F09F },
+    { 0x1F0AF, 0x1F0B0 },
+    { 0x1F0BF, 0x1F0C0 },
+    { 0x1F0D0, 0x1F0D0 },
+    { 0x1F0E0, 0x1F0FF },
+    { 0x1F10B, 0x1F2FF },
+    { 0x1F321, 0x1F32F },
+    { 0x1F336, 0x1F336 },
+    { 0x1F37D, 0x1F37F },
+    { 0x1F394, 0x1F39F },
+    { 0x1F3C5, 0x1F3C5 },
+    { 0x1F3CB, 0x1F3DF },
+    { 0x1F3F1, 0x1F3FF },
+    { 0x1F43F, 0x1F43F },
+    { 0x1F441, 0x1F441 },
+    { 0x1F48C, 0x1F48C },
+    { 0x1F4F8, 0x1F4F8 },
+    { 0x1F4FD, 0x1F4FF },
+    { 0x1F524, 0x1F524 },
+    { 0x1F53E, 0x1F54F },
+    { 0x1F568, 0x1F5FA },
+    { 0x1F600, 0x1F600 },
+    { 0x1F611, 0x1F611 },
+    { 0x1F615, 0x1F615 },
+    { 0x1F617, 0x1F617 },
+    { 0x1F619, 0x1F619 },
+    { 0x1F61B, 0x1F61B },
+    { 0x1F61F, 0x1F61F },
+    { 0x1F626, 0x1F627 },
+    { 0x1F62C, 0x1F62C },
+    { 0x1F62E, 0x1F62F },
+    { 0x1F634, 0x1F634 },
+    { 0x1F641, 0x1F644 },
+    { 0x1F650, 0x1F67F },
+    { 0x1F6C6, 0x1F6FF },
+    { 0x1F774, 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
@@ -25,10 +25,10 @@
     { 0x05C4, 0x05C5 },
     { 0x05C7, 0x05C7 },
     { 0x0610, 0x061A },
-    { 0x064B, 0x065E },
+    { 0x064B, 0x065F },
     { 0x0670, 0x0670 },
     { 0x06D6, 0x06DC },
-    { 0x06DE, 0x06E4 },
+    { 0x06DF, 0x06E4 },
     { 0x06E7, 0x06E8 },
     { 0x06EA, 0x06ED },
     { 0x0711, 0x0711 },
@@ -39,11 +39,13 @@
     { 0x081B, 0x0823 },
     { 0x0825, 0x0827 },
     { 0x0829, 0x082D },
+    { 0x0859, 0x085B },
     { 0x0900, 0x0902 },
+    { 0x093A, 0x093A },
     { 0x093C, 0x093C },
     { 0x0941, 0x0948 },
     { 0x094D, 0x094D },
-    { 0x0951, 0x0955 },
+    { 0x0951, 0x0957 },
     { 0x0962, 0x0963 },
     { 0x0981, 0x0981 },
     { 0x09BC, 0x09BC },
@@ -102,7 +104,7 @@
     { 0x0F71, 0x0F7E },
     { 0x0F80, 0x0F84 },
     { 0x0F86, 0x0F87 },
-    { 0x0F90, 0x0F97 },
+    { 0x0F8D, 0x0F97 },
     { 0x0F99, 0x0FBC },
     { 0x0FC6, 0x0FC6 },
     { 0x102D, 0x1030 },
@@ -116,7 +118,7 @@
     { 0x1085, 0x1086 },
     { 0x108D, 0x108D },
     { 0x109D, 0x109D },
-    { 0x135F, 0x135F },
+    { 0x135D, 0x135F },
     { 0x1712, 0x1714 },
     { 0x1732, 0x1734 },
     { 0x1752, 0x1753 },
@@ -148,6 +150,10 @@
     { 0x1B80, 0x1B81 },
     { 0x1BA2, 0x1BA5 },
     { 0x1BA8, 0x1BA9 },
+    { 0x1BE6, 0x1BE6 },
+    { 0x1BE8, 0x1BE9 },
+    { 0x1BED, 0x1BED },
+    { 0x1BEF, 0x1BF1 },
     { 0x1C2C, 0x1C33 },
     { 0x1C36, 0x1C37 },
     { 0x1CD0, 0x1CD2 },
@@ -155,9 +161,10 @@
     { 0x1CE2, 0x1CE8 },
     { 0x1CED, 0x1CED },
     { 0x1DC0, 0x1DE6 },
-    { 0x1DFD, 0x1DFF },
+    { 0x1DFC, 0x1DFF },
     { 0x20D0, 0x20F0 },
     { 0x2CEF, 0x2CF1 },
+    { 0x2D7F, 0x2D7F },
     { 0x2DE0, 0x2DFF },
     { 0x302A, 0x302F },
     { 0x3099, 0x309A },
@@ -198,6 +205,8 @@
     { 0x10A0C, 0x10A0F },
     { 0x10A38, 0x10A3A },
     { 0x10A3F, 0x10A3F },
+    { 0x11001, 0x11001 },
+    { 0x11038, 0x11046 },
     { 0x11080, 0x11081 },
     { 0x110B3, 0x110B6 },
     { 0x110B9, 0x110BA },
--- a/tests/unictype/test-pr_bidi_other_neutral.c
+++ b/tests/unictype/test-pr_bidi_other_neutral.c
@@ -44,12 +44,12 @@
     { 0x058A, 0x058A },
     { 0x0606, 0x0607 },
     { 0x060E, 0x060F },
+    { 0x06DE, 0x06DE },
     { 0x06E9, 0x06E9 },
     { 0x07F6, 0x07F9 },
     { 0x0BF3, 0x0BF8 },
     { 0x0BFA, 0x0BFA },
     { 0x0C78, 0x0C7E },
-    { 0x0CF1, 0x0CF2 },
     { 0x0F3A, 0x0F3D },
     { 0x1390, 0x1399 },
     { 0x1400, 0x1400 },
@@ -87,28 +87,15 @@
     { 0x2190, 0x2211 },
     { 0x2214, 0x2335 },
     { 0x237B, 0x2394 },
-    { 0x2396, 0x23E8 },
+    { 0x2396, 0x23F3 },
     { 0x2400, 0x2426 },
     { 0x2440, 0x244A },
     { 0x2460, 0x2487 },
     { 0x24EA, 0x26AB },
-    { 0x26AD, 0x26CD },
-    { 0x26CF, 0x26E1 },
-    { 0x26E3, 0x26E3 },
-    { 0x26E8, 0x26FF },
-    { 0x2701, 0x2704 },
-    { 0x2706, 0x2709 },
-    { 0x270C, 0x2727 },
-    { 0x2729, 0x274B },
-    { 0x274D, 0x274D },
-    { 0x274F, 0x2752 },
-    { 0x2756, 0x275E },
-    { 0x2761, 0x2794 },
-    { 0x2798, 0x27AF },
-    { 0x27B1, 0x27BE },
-    { 0x27C0, 0x27CA },
+    { 0x26AD, 0x26FF },
+    { 0x2701, 0x27CA },
     { 0x27CC, 0x27CC },
-    { 0x27D0, 0x27FF },
+    { 0x27CE, 0x27FF },
     { 0x2900, 0x2B4C },
     { 0x2B50, 0x2B59 },
     { 0x2CE5, 0x2CEA },
@@ -168,6 +155,7 @@
     { 0x10190, 0x1019B },
     { 0x1091F, 0x1091F },
     { 0x10B39, 0x10B3F },
+    { 0x11052, 0x11065 },
     { 0x1D200, 0x1D241 },
     { 0x1D245, 0x1D245 },
     { 0x1D300, 0x1D356 },
@@ -177,7 +165,41 @@
     { 0x1D789, 0x1D789 },
     { 0x1D7C3, 0x1D7C3 },
     { 0x1F000, 0x1F02B },
-    { 0x1F030, 0x1F093 }
+    { 0x1F030, 0x1F093 },
+    { 0x1F0A0, 0x1F0AE },
+    { 0x1F0B1, 0x1F0BE },
+    { 0x1F0C1, 0x1F0CF },
+    { 0x1F0D1, 0x1F0DF },
+    { 0x1F300, 0x1F320 },
+    { 0x1F330, 0x1F335 },
+    { 0x1F337, 0x1F37C },
+    { 0x1F380, 0x1F393 },
+    { 0x1F3A0, 0x1F3C4 },
+    { 0x1F3C6, 0x1F3CA },
+    { 0x1F3E0, 0x1F3F0 },
+    { 0x1F400, 0x1F43E },
+    { 0x1F440, 0x1F440 },
+    { 0x1F442, 0x1F48B },
+    { 0x1F48D, 0x1F4F7 },
+    { 0x1F4F9, 0x1F4FC },
+    { 0x1F500, 0x1F523 },
+    { 0x1F525, 0x1F53D },
+    { 0x1F550, 0x1F567 },
+    { 0x1F5FB, 0x1F5FF },
+    { 0x1F601, 0x1F610 },
+    { 0x1F612, 0x1F614 },
+    { 0x1F616, 0x1F616 },
+    { 0x1F618, 0x1F618 },
+    { 0x1F61A, 0x1F61A },
+    { 0x1F61C, 0x1F61E },
+    { 0x1F620, 0x1F625 },
+    { 0x1F628, 0x1F62B },
+    { 0x1F62D, 0x1F62D },
+    { 0x1F630, 0x1F633 },
+    { 0x1F635, 0x1F640 },
+    { 0x1F645, 0x1F64F },
+    { 0x1F680, 0x1F6C5 },
+    { 0x1F700, 0x1F773 }
 
 #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
@@ -43,9 +43,10 @@
     { 0x0600, 0x0603 },
     { 0x0610, 0x061A },
     { 0x0640, 0x0640 },
-    { 0x064B, 0x065E },
+    { 0x064B, 0x065F },
     { 0x0670, 0x0670 },
-    { 0x06D6, 0x06E8 },
+    { 0x06D6, 0x06DD },
+    { 0x06DF, 0x06E8 },
     { 0x06EA, 0x06ED },
     { 0x070F, 0x070F },
     { 0x0711, 0x0711 },
@@ -54,11 +55,13 @@
     { 0x07EB, 0x07F5 },
     { 0x07FA, 0x07FA },
     { 0x0816, 0x082D },
+    { 0x0859, 0x085B },
     { 0x0900, 0x0902 },
+    { 0x093A, 0x093A },
     { 0x093C, 0x093C },
     { 0x0941, 0x0948 },
     { 0x094D, 0x094D },
-    { 0x0951, 0x0955 },
+    { 0x0951, 0x0957 },
     { 0x0962, 0x0963 },
     { 0x0971, 0x0971 },
     { 0x0981, 0x0981 },
@@ -121,7 +124,7 @@
     { 0x0F71, 0x0F7E },
     { 0x0F80, 0x0F84 },
     { 0x0F86, 0x0F87 },
-    { 0x0F90, 0x0F97 },
+    { 0x0F8D, 0x0F97 },
     { 0x0F99, 0x0FBC },
     { 0x0FC6, 0x0FC6 },
     { 0x102D, 0x1030 },
@@ -136,7 +139,7 @@
     { 0x108D, 0x108D },
     { 0x109D, 0x109D },
     { 0x10FC, 0x10FC },
-    { 0x135F, 0x135F },
+    { 0x135D, 0x135F },
     { 0x1712, 0x1714 },
     { 0x1732, 0x1734 },
     { 0x1752, 0x1753 },
@@ -172,6 +175,10 @@
     { 0x1B80, 0x1B81 },
     { 0x1BA2, 0x1BA5 },
     { 0x1BA8, 0x1BA9 },
+    { 0x1BE6, 0x1BE6 },
+    { 0x1BE8, 0x1BE9 },
+    { 0x1BED, 0x1BED },
+    { 0x1BEF, 0x1BF1 },
     { 0x1C2C, 0x1C33 },
     { 0x1C36, 0x1C37 },
     { 0x1C78, 0x1C7D },
@@ -182,7 +189,7 @@
     { 0x1D2C, 0x1D61 },
     { 0x1D78, 0x1D78 },
     { 0x1D9B, 0x1DE6 },
-    { 0x1DFD, 0x1DFF },
+    { 0x1DFC, 0x1DFF },
     { 0x1FBD, 0x1FBD },
     { 0x1FBF, 0x1FC1 },
     { 0x1FCD, 0x1FCF },
@@ -198,11 +205,12 @@
     { 0x206A, 0x206F },
     { 0x2071, 0x2071 },
     { 0x207F, 0x207F },
-    { 0x2090, 0x2094 },
+    { 0x2090, 0x209C },
     { 0x20D0, 0x20F0 },
     { 0x2C7D, 0x2C7D },
     { 0x2CEF, 0x2CF1 },
     { 0x2D6F, 0x2D6F },
+    { 0x2D7F, 0x2D7F },
     { 0x2DE0, 0x2DFF },
     { 0x2E2F, 0x2E2F },
     { 0x3005, 0x3005 },
@@ -250,6 +258,7 @@
     { 0xABE8, 0xABE8 },
     { 0xABED, 0xABED },
     { 0xFB1E, 0xFB1E },
+    { 0xFBB2, 0xFBC1 },
     { 0xFE00, 0xFE0F },
     { 0xFE13, 0xFE13 },
     { 0xFE20, 0xFE26 },
@@ -271,6 +280,8 @@
     { 0x10A0C, 0x10A0F },
     { 0x10A38, 0x10A3A },
     { 0x10A3F, 0x10A3F },
+    { 0x11001, 0x11001 },
+    { 0x11038, 0x11046 },
     { 0x11080, 0x11081 },
     { 0x110B3, 0x110B6 },
     { 0x110B9, 0x110BA },
--- a/tests/unictype/test-pr_cased.c
+++ b/tests/unictype/test-pr_cased.c
@@ -40,7 +40,7 @@
     { 0x038E, 0x03A1 },
     { 0x03A3, 0x03F5 },
     { 0x03F7, 0x0481 },
-    { 0x048A, 0x0525 },
+    { 0x048A, 0x0527 },
     { 0x0531, 0x0556 },
     { 0x0561, 0x0587 },
     { 0x10A0, 0x10C5 },
@@ -87,11 +87,13 @@
     { 0x2C60, 0x2CE4 },
     { 0x2CEB, 0x2CEE },
     { 0x2D00, 0x2D25 },
-    { 0xA640, 0xA65F },
-    { 0xA662, 0xA66D },
+    { 0xA640, 0xA66D },
     { 0xA680, 0xA697 },
     { 0xA722, 0xA787 },
-    { 0xA78B, 0xA78C },
+    { 0xA78B, 0xA78E },
+    { 0xA790, 0xA791 },
+    { 0xA7A0, 0xA7A9 },
+    { 0xA7FA, 0xA7FA },
     { 0xFB00, 0xFB06 },
     { 0xFB13, 0xFB17 },
     { 0xFF21, 0xFF3A },
--- a/tests/unictype/test-pr_changes_when_casefolded.c
+++ b/tests/unictype/test-pr_changes_when_casefolded.c
@@ -287,6 +287,7 @@
     { 0x0520, 0x0520 },
     { 0x0522, 0x0522 },
     { 0x0524, 0x0524 },
+    { 0x0526, 0x0526 },
     { 0x0531, 0x0556 },
     { 0x0587, 0x0587 },
     { 0x10A0, 0x10C5 },
@@ -517,6 +518,7 @@
     { 0xA65A, 0xA65A },
     { 0xA65C, 0xA65C },
     { 0xA65E, 0xA65E },
+    { 0xA660, 0xA660 },
     { 0xA662, 0xA662 },
     { 0xA664, 0xA664 },
     { 0xA666, 0xA666 },
@@ -581,6 +583,13 @@
     { 0xA784, 0xA784 },
     { 0xA786, 0xA786 },
     { 0xA78B, 0xA78B },
+    { 0xA78D, 0xA78D },
+    { 0xA790, 0xA790 },
+    { 0xA7A0, 0xA7A0 },
+    { 0xA7A2, 0xA7A2 },
+    { 0xA7A4, 0xA7A4 },
+    { 0xA7A6, 0xA7A6 },
+    { 0xA7A8, 0xA7A8 },
     { 0xFB00, 0xFB06 },
     { 0xFB13, 0xFB17 },
     { 0xFF21, 0xFF3A },
--- a/tests/unictype/test-pr_changes_when_casemapped.c
+++ b/tests/unictype/test-pr_changes_when_casemapped.c
@@ -37,6 +37,7 @@
     { 0x025B, 0x025B },
     { 0x0260, 0x0260 },
     { 0x0263, 0x0263 },
+    { 0x0265, 0x0265 },
     { 0x0268, 0x0269 },
     { 0x026B, 0x026B },
     { 0x026F, 0x026F },
@@ -60,7 +61,7 @@
     { 0x03F4, 0x03F5 },
     { 0x03F7, 0x03FB },
     { 0x03FD, 0x0481 },
-    { 0x048A, 0x0525 },
+    { 0x048A, 0x0527 },
     { 0x0531, 0x0556 },
     { 0x0561, 0x0587 },
     { 0x10A0, 0x10C5 },
@@ -102,13 +103,14 @@
     { 0x2C7E, 0x2CE3 },
     { 0x2CEB, 0x2CEE },
     { 0x2D00, 0x2D25 },
-    { 0xA640, 0xA65F },
-    { 0xA662, 0xA66D },
+    { 0xA640, 0xA66D },
     { 0xA680, 0xA697 },
     { 0xA722, 0xA72F },
     { 0xA732, 0xA76F },
     { 0xA779, 0xA787 },
-    { 0xA78B, 0xA78C },
+    { 0xA78B, 0xA78D },
+    { 0xA790, 0xA791 },
+    { 0xA7A0, 0xA7A9 },
     { 0xFB00, 0xFB06 },
     { 0xFB13, 0xFB17 },
     { 0xFF21, 0xFF3A },
--- a/tests/unictype/test-pr_changes_when_lowercased.c
+++ b/tests/unictype/test-pr_changes_when_lowercased.c
@@ -281,6 +281,7 @@
     { 0x0520, 0x0520 },
     { 0x0522, 0x0522 },
     { 0x0524, 0x0524 },
+    { 0x0526, 0x0526 },
     { 0x0531, 0x0556 },
     { 0x10A0, 0x10C5 },
     { 0x1E00, 0x1E00 },
@@ -508,6 +509,7 @@
     { 0xA65A, 0xA65A },
     { 0xA65C, 0xA65C },
     { 0xA65E, 0xA65E },
+    { 0xA660, 0xA660 },
     { 0xA662, 0xA662 },
     { 0xA664, 0xA664 },
     { 0xA666, 0xA666 },
@@ -572,6 +574,13 @@
     { 0xA784, 0xA784 },
     { 0xA786, 0xA786 },
     { 0xA78B, 0xA78B },
+    { 0xA78D, 0xA78D },
+    { 0xA790, 0xA790 },
+    { 0xA7A0, 0xA7A0 },
+    { 0xA7A2, 0xA7A2 },
+    { 0xA7A4, 0xA7A4 },
+    { 0xA7A6, 0xA7A6 },
+    { 0xA7A8, 0xA7A8 },
     { 0xFF21, 0xFF3A },
     { 0x10400, 0x10427 }
 
--- a/tests/unictype/test-pr_changes_when_titlecased.c
+++ b/tests/unictype/test-pr_changes_when_titlecased.c
@@ -167,6 +167,7 @@
     { 0x025B, 0x025B },
     { 0x0260, 0x0260 },
     { 0x0263, 0x0263 },
+    { 0x0265, 0x0265 },
     { 0x0268, 0x0269 },
     { 0x026B, 0x026B },
     { 0x026F, 0x026F },
@@ -296,6 +297,7 @@
     { 0x0521, 0x0521 },
     { 0x0523, 0x0523 },
     { 0x0525, 0x0525 },
+    { 0x0527, 0x0527 },
     { 0x0561, 0x0587 },
     { 0x1D79, 0x1D79 },
     { 0x1D7D, 0x1D7D },
@@ -523,6 +525,7 @@
     { 0xA65B, 0xA65B },
     { 0xA65D, 0xA65D },
     { 0xA65F, 0xA65F },
+    { 0xA661, 0xA661 },
     { 0xA663, 0xA663 },
     { 0xA665, 0xA665 },
     { 0xA667, 0xA667 },
@@ -587,6 +590,12 @@
     { 0xA785, 0xA785 },
     { 0xA787, 0xA787 },
     { 0xA78C, 0xA78C },
+    { 0xA791, 0xA791 },
+    { 0xA7A1, 0xA7A1 },
+    { 0xA7A3, 0xA7A3 },
+    { 0xA7A5, 0xA7A5 },
+    { 0xA7A7, 0xA7A7 },
+    { 0xA7A9, 0xA7A9 },
     { 0xFB00, 0xFB06 },
     { 0xFB13, 0xFB17 },
     { 0xFF41, 0xFF5A },
--- a/tests/unictype/test-pr_changes_when_uppercased.c
+++ b/tests/unictype/test-pr_changes_when_uppercased.c
@@ -166,6 +166,7 @@
     { 0x025B, 0x025B },
     { 0x0260, 0x0260 },
     { 0x0263, 0x0263 },
+    { 0x0265, 0x0265 },
     { 0x0268, 0x0269 },
     { 0x026B, 0x026B },
     { 0x026F, 0x026F },
@@ -295,6 +296,7 @@
     { 0x0521, 0x0521 },
     { 0x0523, 0x0523 },
     { 0x0525, 0x0525 },
+    { 0x0527, 0x0527 },
     { 0x0561, 0x0587 },
     { 0x1D79, 0x1D79 },
     { 0x1D7D, 0x1D7D },
@@ -522,6 +524,7 @@
     { 0xA65B, 0xA65B },
     { 0xA65D, 0xA65D },
     { 0xA65F, 0xA65F },
+    { 0xA661, 0xA661 },
     { 0xA663, 0xA663 },
     { 0xA665, 0xA665 },
     { 0xA667, 0xA667 },
@@ -586,6 +589,12 @@
     { 0xA785, 0xA785 },
     { 0xA787, 0xA787 },
     { 0xA78C, 0xA78C },
+    { 0xA791, 0xA791 },
+    { 0xA7A1, 0xA7A1 },
+    { 0xA7A3, 0xA7A3 },
+    { 0xA7A5, 0xA7A5 },
+    { 0xA7A7, 0xA7A7 },
+    { 0xA7A9, 0xA7A9 },
     { 0xFB00, 0xFB06 },
     { 0xFB13, 0xFB17 },
     { 0xFF41, 0xFF5A },
--- a/tests/unictype/test-pr_combining.c
+++ b/tests/unictype/test-pr_combining.c
@@ -25,10 +25,10 @@
     { 0x05C4, 0x05C5 },
     { 0x05C7, 0x05C7 },
     { 0x0610, 0x061A },
-    { 0x064B, 0x065E },
+    { 0x064B, 0x065F },
     { 0x0670, 0x0670 },
     { 0x06D6, 0x06DC },
-    { 0x06DE, 0x06E4 },
+    { 0x06DF, 0x06E4 },
     { 0x06E7, 0x06E8 },
     { 0x06EA, 0x06ED },
     { 0x0711, 0x0711 },
@@ -39,10 +39,11 @@
     { 0x081B, 0x0823 },
     { 0x0825, 0x0827 },
     { 0x0829, 0x082D },
+    { 0x0859, 0x085B },
     { 0x0900, 0x0903 },
-    { 0x093C, 0x093C },
-    { 0x093E, 0x094E },
-    { 0x0951, 0x0955 },
+    { 0x093A, 0x093C },
+    { 0x093E, 0x094F },
+    { 0x0951, 0x0957 },
     { 0x0962, 0x0963 },
     { 0x0981, 0x0983 },
     { 0x09BC, 0x09BC },
@@ -116,7 +117,7 @@
     { 0x0F3E, 0x0F3F },
     { 0x0F71, 0x0F84 },
     { 0x0F86, 0x0F87 },
-    { 0x0F90, 0x0F97 },
+    { 0x0F8D, 0x0F97 },
     { 0x0F99, 0x0FBC },
     { 0x0FC6, 0x0FC6 },
     { 0x102B, 0x103E },
@@ -128,7 +129,7 @@
     { 0x1082, 0x108D },
     { 0x108F, 0x108F },
     { 0x109A, 0x109D },
-    { 0x135F, 0x135F },
+    { 0x135D, 0x135F },
     { 0x1712, 0x1714 },
     { 0x1732, 0x1734 },
     { 0x1752, 0x1753 },
@@ -150,15 +151,17 @@
     { 0x1B6B, 0x1B73 },
     { 0x1B80, 0x1B82 },
     { 0x1BA1, 0x1BAA },
+    { 0x1BE6, 0x1BF3 },
     { 0x1C24, 0x1C37 },
     { 0x1CD0, 0x1CD2 },
     { 0x1CD4, 0x1CE8 },
     { 0x1CED, 0x1CED },
     { 0x1CF2, 0x1CF2 },
     { 0x1DC0, 0x1DE6 },
-    { 0x1DFD, 0x1DFF },
+    { 0x1DFC, 0x1DFF },
     { 0x20D0, 0x20F0 },
     { 0x2CEF, 0x2CF1 },
+    { 0x2D7F, 0x2D7F },
     { 0x2DE0, 0x2DFF },
     { 0x302A, 0x302F },
     { 0x3099, 0x309A },
@@ -196,6 +199,8 @@
     { 0x10A0C, 0x10A0F },
     { 0x10A38, 0x10A3A },
     { 0x10A3F, 0x10A3F },
+    { 0x11000, 0x11002 },
+    { 0x11038, 0x11046 },
     { 0x11080, 0x11082 },
     { 0x110B0, 0x110BA },
     { 0x1D165, 0x1D169 },
--- a/tests/unictype/test-pr_composite.c
+++ b/tests/unictype/test-pr_composite.c
@@ -293,9 +293,9 @@
     { 0x1F100, 0x1F10A },
     { 0x1F110, 0x1F12A },
     { 0x1F12D, 0x1F12E },
-    { 0x1F14A, 0x1F14E },
+    { 0x1F14A, 0x1F14F },
     { 0x1F190, 0x1F190 },
-    { 0x1F200, 0x1F200 },
+    { 0x1F200, 0x1F201 },
     { 0x1F240, 0x1F248 }
 
 #define PREDICATE(c) uc_is_property_composite (c)
--- a/tests/unictype/test-pr_currency_symbol.c
+++ b/tests/unictype/test-pr_currency_symbol.c
@@ -26,7 +26,7 @@
     { 0x0BF9, 0x0BF9 },
     { 0x0E3F, 0x0E3F },
     { 0x17DB, 0x17DB },
-    { 0x20A0, 0x20B8 },
+    { 0x20A0, 0x20B9 },
     { 0xA838, 0xA838 },
     { 0xFDFC, 0xFDFC },
     { 0xFE69, 0xFE69 },
--- a/tests/unictype/test-pr_decimal_digit.c
+++ b/tests/unictype/test-pr_decimal_digit.c
@@ -38,7 +38,7 @@
     { 0x17E0, 0x17E9 },
     { 0x1810, 0x1819 },
     { 0x1946, 0x194F },
-    { 0x19D0, 0x19DA },
+    { 0x19D0, 0x19D9 },
     { 0x1A80, 0x1A89 },
     { 0x1A90, 0x1A99 },
     { 0x1B50, 0x1B59 },
@@ -53,6 +53,7 @@
     { 0xABF0, 0xABF9 },
     { 0xFF10, 0xFF19 },
     { 0x104A0, 0x104A9 },
+    { 0x11066, 0x1106F },
     { 0x1D7CE, 0x1D7FF }
 
 #define PREDICATE(c) uc_is_property_decimal_digit (c)
--- a/tests/unictype/test-pr_deprecated.c
+++ b/tests/unictype/test-pr_deprecated.c
@@ -18,6 +18,7 @@
 #include "test-predicate-part1.h"
 
     { 0x0149, 0x0149 },
+    { 0x0673, 0x0673 },
     { 0x0F77, 0x0F77 },
     { 0x0F79, 0x0F79 },
     { 0x17A3, 0x17A4 },
--- a/tests/unictype/test-pr_format_control.c
+++ b/tests/unictype/test-pr_format_control.c
@@ -18,7 +18,6 @@
 #include "test-predicate-part1.h"
 
     { 0x00AD, 0x00AD },
-    { 0x070F, 0x070F },
     { 0x200B, 0x200B },
     { 0x2060, 0x2064 },
     { 0x206A, 0x206F },
--- a/tests/unictype/test-pr_grapheme_base.c
+++ b/tests/unictype/test-pr_grapheme_base.c
@@ -26,7 +26,7 @@
     { 0x038C, 0x038C },
     { 0x038E, 0x03A1 },
     { 0x03A3, 0x0482 },
-    { 0x048A, 0x0525 },
+    { 0x048A, 0x0527 },
     { 0x0531, 0x0556 },
     { 0x0559, 0x055F },
     { 0x0561, 0x0587 },
@@ -39,10 +39,10 @@
     { 0x05F0, 0x05F4 },
     { 0x0606, 0x060F },
     { 0x061B, 0x061B },
-    { 0x061E, 0x061F },
-    { 0x0621, 0x064A },
+    { 0x061E, 0x064A },
     { 0x0660, 0x066F },
     { 0x0671, 0x06D5 },
+    { 0x06DE, 0x06DE },
     { 0x06E5, 0x06E6 },
     { 0x06E9, 0x06E9 },
     { 0x06EE, 0x070D },
@@ -57,13 +57,15 @@
     { 0x0824, 0x0824 },
     { 0x0828, 0x0828 },
     { 0x0830, 0x083E },
+    { 0x0840, 0x0858 },
+    { 0x085E, 0x085E },
     { 0x0903, 0x0939 },
+    { 0x093B, 0x093B },
     { 0x093D, 0x0940 },
     { 0x0949, 0x094C },
-    { 0x094E, 0x094E },
-    { 0x0950, 0x0950 },
+    { 0x094E, 0x0950 },
     { 0x0958, 0x0961 },
-    { 0x0964, 0x0972 },
+    { 0x0964, 0x0977 },
     { 0x0979, 0x097F },
     { 0x0982, 0x0983 },
     { 0x0985, 0x098C },
@@ -120,7 +122,7 @@
     { 0x0B4B, 0x0B4C },
     { 0x0B5C, 0x0B5D },
     { 0x0B5F, 0x0B61 },
-    { 0x0B66, 0x0B71 },
+    { 0x0B66, 0x0B77 },
     { 0x0B83, 0x0B83 },
     { 0x0B85, 0x0B8A },
     { 0x0B8E, 0x0B90 },
@@ -167,12 +169,12 @@
     { 0x0D02, 0x0D03 },
     { 0x0D05, 0x0D0C },
     { 0x0D0E, 0x0D10 },
-    { 0x0D12, 0x0D28 },
-    { 0x0D2A, 0x0D39 },
+    { 0x0D12, 0x0D3A },
     { 0x0D3D, 0x0D3D },
     { 0x0D3F, 0x0D40 },
     { 0x0D46, 0x0D48 },
     { 0x0D4A, 0x0D4C },
+    { 0x0D4E, 0x0D4E },
     { 0x0D60, 0x0D61 },
     { 0x0D66, 0x0D75 },
     { 0x0D79, 0x0D7F },
@@ -215,10 +217,10 @@
     { 0x0F49, 0x0F6C },
     { 0x0F7F, 0x0F7F },
     { 0x0F85, 0x0F85 },
-    { 0x0F88, 0x0F8B },
+    { 0x0F88, 0x0F8C },
     { 0x0FBE, 0x0FC5 },
     { 0x0FC7, 0x0FCC },
-    { 0x0FCE, 0x0FD8 },
+    { 0x0FCE, 0x0FDA },
     { 0x1000, 0x102C },
     { 0x1031, 0x1031 },
     { 0x1038, 0x1038 },
@@ -306,7 +308,12 @@
     { 0x1BA6, 0x1BA7 },
     { 0x1BAA, 0x1BAA },
     { 0x1BAE, 0x1BB9 },
-    { 0x1C00, 0x1C2B },
+    { 0x1BC0, 0x1BE5 },
+    { 0x1BE7, 0x1BE7 },
+    { 0x1BEA, 0x1BEC },
+    { 0x1BEE, 0x1BEE },
+    { 0x1BF2, 0x1BF3 },
+    { 0x1BFC, 0x1C2B },
     { 0x1C34, 0x1C35 },
     { 0x1C3B, 0x1C49 },
     { 0x1C4D, 0x1C7F },
@@ -336,36 +343,23 @@
     { 0x202F, 0x205F },
     { 0x2070, 0x2071 },
     { 0x2074, 0x208E },
-    { 0x2090, 0x2094 },
-    { 0x20A0, 0x20B8 },
+    { 0x2090, 0x209C },
+    { 0x20A0, 0x20B9 },
     { 0x2100, 0x2189 },
-    { 0x2190, 0x23E8 },
+    { 0x2190, 0x23F3 },
     { 0x2400, 0x2426 },
     { 0x2440, 0x244A },
-    { 0x2460, 0x26CD },
-    { 0x26CF, 0x26E1 },
-    { 0x26E3, 0x26E3 },
-    { 0x26E8, 0x26FF },
-    { 0x2701, 0x2704 },
-    { 0x2706, 0x2709 },
-    { 0x270C, 0x2727 },
-    { 0x2729, 0x274B },
-    { 0x274D, 0x274D },
-    { 0x274F, 0x2752 },
-    { 0x2756, 0x275E },
-    { 0x2761, 0x2794 },
-    { 0x2798, 0x27AF },
-    { 0x27B1, 0x27BE },
-    { 0x27C0, 0x27CA },
+    { 0x2460, 0x26FF },
+    { 0x2701, 0x27CA },
     { 0x27CC, 0x27CC },
-    { 0x27D0, 0x2B4C },
+    { 0x27CE, 0x2B4C },
     { 0x2B50, 0x2B59 },
     { 0x2C00, 0x2C2E },
     { 0x2C30, 0x2C5E },
     { 0x2C60, 0x2CEE },
     { 0x2CF9, 0x2D25 },
     { 0x2D30, 0x2D65 },
-    { 0x2D6F, 0x2D6F },
+    { 0x2D6F, 0x2D70 },
     { 0x2D80, 0x2D96 },
     { 0x2DA0, 0x2DA6 },
     { 0x2DA8, 0x2DAE },
@@ -386,7 +380,7 @@
     { 0x309B, 0x30FF },
     { 0x3105, 0x312D },
     { 0x3131, 0x318E },
-    { 0x3190, 0x31B7 },
+    { 0x3190, 0x31BA },
     { 0x31C0, 0x31E3 },
     { 0x31F0, 0x321E },
     { 0x3220, 0x32FE },
@@ -395,14 +389,15 @@
     { 0xA000, 0xA48C },
     { 0xA490, 0xA4C6 },
     { 0xA4D0, 0xA62B },
-    { 0xA640, 0xA65F },
-    { 0xA662, 0xA66E },
+    { 0xA640, 0xA66E },
     { 0xA673, 0xA673 },
     { 0xA67E, 0xA697 },
     { 0xA6A0, 0xA6EF },
     { 0xA6F2, 0xA6F7 },
-    { 0xA700, 0xA78C },
-    { 0xA7FB, 0xA801 },
+    { 0xA700, 0xA78E },
+    { 0xA790, 0xA791 },
+    { 0xA7A0, 0xA7A9 },
+    { 0xA7FA, 0xA801 },
     { 0xA803, 0xA805 },
     { 0xA807, 0xA80A },
     { 0xA80C, 0xA824 },
@@ -437,6 +432,11 @@
     { 0xAAC0, 0xAAC0 },
     { 0xAAC2, 0xAAC2 },
     { 0xAADB, 0xAADF },
+    { 0xAB01, 0xAB06 },
+    { 0xAB09, 0xAB0E },
+    { 0xAB11, 0xAB16 },
+    { 0xAB20, 0xAB26 },
+    { 0xAB28, 0xAB2E },
     { 0xABC0, 0xABE4 },
     { 0xABE6, 0xABE7 },
     { 0xABE9, 0xABEC },
@@ -455,7 +455,7 @@
     { 0xFB3E, 0xFB3E },
     { 0xFB40, 0xFB41 },
     { 0xFB43, 0xFB44 },
-    { 0xFB46, 0xFBB1 },
+    { 0xFB46, 0xFBC1 },
     { 0xFBD3, 0xFD3F },
     { 0xFD50, 0xFD8F },
     { 0xFD92, 0xFDC7 },
@@ -520,6 +520,10 @@
     { 0x10B78, 0x10B7F },
     { 0x10C00, 0x10C48 },
     { 0x10E60, 0x10E7E },
+    { 0x11000, 0x11000 },
+    { 0x11002, 0x11037 },
+    { 0x11047, 0x1104D },
+    { 0x11052, 0x1106F },
     { 0x11082, 0x110B2 },
     { 0x110B7, 0x110B8 },
     { 0x110BB, 0x110BC },
@@ -528,6 +532,8 @@
     { 0x12400, 0x12462 },
     { 0x12470, 0x12473 },
     { 0x13000, 0x1342E },
+    { 0x16800, 0x16A38 },
+    { 0x1B000, 0x1B001 },
     { 0x1D000, 0x1D0F5 },
     { 0x1D100, 0x1D126 },
     { 0x1D129, 0x1D164 },
@@ -563,26 +569,49 @@
     { 0x1D7CE, 0x1D7FF },
     { 0x1F000, 0x1F02B },
     { 0x1F030, 0x1F093 },
+    { 0x1F0A0, 0x1F0AE },
+    { 0x1F0B1, 0x1F0BE },
+    { 0x1F0C1, 0x1F0CF },
+    { 0x1F0D1, 0x1F0DF },
     { 0x1F100, 0x1F10A },
     { 0x1F110, 0x1F12E },
-    { 0x1F131, 0x1F131 },
-    { 0x1F13D, 0x1F13D },
-    { 0x1F13F, 0x1F13F },
-    { 0x1F142, 0x1F142 },
-    { 0x1F146, 0x1F146 },
-    { 0x1F14A, 0x1F14E },
-    { 0x1F157, 0x1F157 },
-    { 0x1F15F, 0x1F15F },
-    { 0x1F179, 0x1F179 },
-    { 0x1F17B, 0x1F17C },
-    { 0x1F17F, 0x1F17F },
-    { 0x1F18A, 0x1F18D },
-    { 0x1F190, 0x1F190 },
-    { 0x1F200, 0x1F200 },
-    { 0x1F210, 0x1F231 },
+    { 0x1F130, 0x1F169 },
+    { 0x1F170, 0x1F19A },
+    { 0x1F1E6, 0x1F202 },
+    { 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 },
+    { 0x1F550, 0x1F567 },
+    { 0x1F5FB, 0x1F5FF },
+    { 0x1F601, 0x1F610 },
+    { 0x1F612, 0x1F614 },
+    { 0x1F616, 0x1F616 },
+    { 0x1F618, 0x1F618 },
+    { 0x1F61A, 0x1F61A },
+    { 0x1F61C, 0x1F61E },
+    { 0x1F620, 0x1F625 },
+    { 0x1F628, 0x1F62B },
+    { 0x1F62D, 0x1F62D },
+    { 0x1F630, 0x1F633 },
+    { 0x1F635, 0x1F640 },
+    { 0x1F645, 0x1F64F },
+    { 0x1F680, 0x1F6C5 },
+    { 0x1F700, 0x1F773 },
     { 0x20000, 0x2A6D6 },
     { 0x2A700, 0x2B734 },
+    { 0x2B740, 0x2B81D },
     { 0x2F800, 0x2FA1D }
 
 #define PREDICATE(c) uc_is_property_grapheme_base (c)
--- a/tests/unictype/test-pr_grapheme_extend.c
+++ b/tests/unictype/test-pr_grapheme_extend.c
@@ -25,10 +25,10 @@
     { 0x05C4, 0x05C5 },
     { 0x05C7, 0x05C7 },
     { 0x0610, 0x061A },
-    { 0x064B, 0x065E },
+    { 0x064B, 0x065F },
     { 0x0670, 0x0670 },
     { 0x06D6, 0x06DC },
-    { 0x06DE, 0x06E4 },
+    { 0x06DF, 0x06E4 },
     { 0x06E7, 0x06E8 },
     { 0x06EA, 0x06ED },
     { 0x0711, 0x0711 },
@@ -39,11 +39,13 @@
     { 0x081B, 0x0823 },
     { 0x0825, 0x0827 },
     { 0x0829, 0x082D },
+    { 0x0859, 0x085B },
     { 0x0900, 0x0902 },
+    { 0x093A, 0x093A },
     { 0x093C, 0x093C },
     { 0x0941, 0x0948 },
     { 0x094D, 0x094D },
-    { 0x0951, 0x0955 },
+    { 0x0951, 0x0957 },
     { 0x0962, 0x0963 },
     { 0x0981, 0x0981 },
     { 0x09BC, 0x09BC },
@@ -114,7 +116,7 @@
     { 0x0F71, 0x0F7E },
     { 0x0F80, 0x0F84 },
     { 0x0F86, 0x0F87 },
-    { 0x0F90, 0x0F97 },
+    { 0x0F8D, 0x0F97 },
     { 0x0F99, 0x0FBC },
     { 0x0FC6, 0x0FC6 },
     { 0x102D, 0x1030 },
@@ -128,7 +130,7 @@
     { 0x1085, 0x1086 },
     { 0x108D, 0x108D },
     { 0x109D, 0x109D },
-    { 0x135F, 0x135F },
+    { 0x135D, 0x135F },
     { 0x1712, 0x1714 },
     { 0x1732, 0x1734 },
     { 0x1752, 0x1753 },
@@ -160,6 +162,10 @@
     { 0x1B80, 0x1B81 },
     { 0x1BA2, 0x1BA5 },
     { 0x1BA8, 0x1BA9 },
+    { 0x1BE6, 0x1BE6 },
+    { 0x1BE8, 0x1BE9 },
+    { 0x1BED, 0x1BED },
+    { 0x1BEF, 0x1BF1 },
     { 0x1C2C, 0x1C33 },
     { 0x1C36, 0x1C37 },
     { 0x1CD0, 0x1CD2 },
@@ -167,10 +173,11 @@
     { 0x1CE2, 0x1CE8 },
     { 0x1CED, 0x1CED },
     { 0x1DC0, 0x1DE6 },
-    { 0x1DFD, 0x1DFF },
+    { 0x1DFC, 0x1DFF },
     { 0x200C, 0x200D },
     { 0x20D0, 0x20F0 },
     { 0x2CEF, 0x2CF1 },
+    { 0x2D7F, 0x2D7F },
     { 0x2DE0, 0x2DFF },
     { 0x302A, 0x302F },
     { 0x3099, 0x309A },
@@ -212,6 +219,8 @@
     { 0x10A0C, 0x10A0F },
     { 0x10A38, 0x10A3A },
     { 0x10A3F, 0x10A3F },
+    { 0x11001, 0x11001 },
+    { 0x11038, 0x11046 },
     { 0x11080, 0x11081 },
     { 0x110B3, 0x110B6 },
     { 0x110B9, 0x110BA },
--- a/tests/unictype/test-pr_grapheme_link.c
+++ b/tests/unictype/test-pr_grapheme_link.c
@@ -36,12 +36,15 @@
     { 0x1A60, 0x1A60 },
     { 0x1B44, 0x1B44 },
     { 0x1BAA, 0x1BAA },
+    { 0x1BF2, 0x1BF3 },
+    { 0x2D7F, 0x2D7F },
     { 0xA806, 0xA806 },
     { 0xA8C4, 0xA8C4 },
     { 0xA953, 0xA953 },
     { 0xA9C0, 0xA9C0 },
     { 0xABED, 0xABED },
     { 0x10A3F, 0x10A3F },
+    { 0x11046, 0x11046 },
     { 0x110B9, 0x110B9 }
 
 #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
@@ -41,7 +41,7 @@
     { 0x03A3, 0x03F5 },
     { 0x03F7, 0x0481 },
     { 0x0483, 0x0487 },
-    { 0x048A, 0x0525 },
+    { 0x048A, 0x0527 },
     { 0x0531, 0x0556 },
     { 0x0559, 0x0559 },
     { 0x0561, 0x0587 },
@@ -53,8 +53,7 @@
     { 0x05D0, 0x05EA },
     { 0x05F0, 0x05F2 },
     { 0x0610, 0x061A },
-    { 0x0621, 0x065E },
-    { 0x0660, 0x0669 },
+    { 0x0620, 0x0669 },
     { 0x066E, 0x06D3 },
     { 0x06D5, 0x06DC },
     { 0x06DF, 0x06E8 },
@@ -65,12 +64,10 @@
     { 0x07C0, 0x07F5 },
     { 0x07FA, 0x07FA },
     { 0x0800, 0x082D },
-    { 0x0900, 0x0939 },
-    { 0x093C, 0x094E },
-    { 0x0950, 0x0955 },
-    { 0x0958, 0x0963 },
+    { 0x0840, 0x085B },
+    { 0x0900, 0x0963 },
     { 0x0966, 0x096F },
-    { 0x0971, 0x0972 },
+    { 0x0971, 0x0977 },
     { 0x0979, 0x097F },
     { 0x0981, 0x0983 },
     { 0x0985, 0x098C },
@@ -172,14 +169,14 @@
     { 0x0CDE, 0x0CDE },
     { 0x0CE0, 0x0CE3 },
     { 0x0CE6, 0x0CEF },
+    { 0x0CF1, 0x0CF2 },
     { 0x0D02, 0x0D03 },
     { 0x0D05, 0x0D0C },
     { 0x0D0E, 0x0D10 },
-    { 0x0D12, 0x0D28 },
-    { 0x0D2A, 0x0D39 },
+    { 0x0D12, 0x0D3A },
     { 0x0D3D, 0x0D44 },
     { 0x0D46, 0x0D48 },
-    { 0x0D4A, 0x0D4D },
+    { 0x0D4A, 0x0D4E },
     { 0x0D57, 0x0D57 },
     { 0x0D60, 0x0D63 },
     { 0x0D66, 0x0D6F },
@@ -225,8 +222,7 @@
     { 0x0F3E, 0x0F47 },
     { 0x0F49, 0x0F6C },
     { 0x0F71, 0x0F84 },
-    { 0x0F86, 0x0F8B },
-    { 0x0F90, 0x0F97 },
+    { 0x0F86, 0x0F97 },
     { 0x0F99, 0x0FBC },
     { 0x0FC6, 0x0FC6 },
     { 0x1000, 0x1049 },
@@ -250,7 +246,7 @@
     { 0x12D8, 0x1310 },
     { 0x1312, 0x1315 },
     { 0x1318, 0x135A },
-    { 0x135F, 0x135F },
+    { 0x135D, 0x135F },
     { 0x1369, 0x1371 },
     { 0x1380, 0x138F },
     { 0x13A0, 0x13F4 },
@@ -295,13 +291,14 @@
     { 0x1B6B, 0x1B73 },
     { 0x1B80, 0x1BAA },
     { 0x1BAE, 0x1BB9 },
+    { 0x1BC0, 0x1BF3 },
     { 0x1C00, 0x1C37 },
     { 0x1C40, 0x1C49 },
     { 0x1C4D, 0x1C7D },
     { 0x1CD0, 0x1CD2 },
     { 0x1CD4, 0x1CF2 },
     { 0x1D00, 0x1DE6 },
-    { 0x1DFD, 0x1F15 },
+    { 0x1DFC, 0x1F15 },
     { 0x1F18, 0x1F1D },
     { 0x1F20, 0x1F45 },
     { 0x1F48, 0x1F4D },
@@ -324,7 +321,7 @@
     { 0x2054, 0x2054 },
     { 0x2071, 0x2071 },
     { 0x207F, 0x207F },
-    { 0x2090, 0x2094 },
+    { 0x2090, 0x209C },
     { 0x20D0, 0x20DC },
     { 0x20E1, 0x20E1 },
     { 0x20E5, 0x20F0 },
@@ -348,7 +345,7 @@
     { 0x2D00, 0x2D25 },
     { 0x2D30, 0x2D65 },
     { 0x2D6F, 0x2D6F },
-    { 0x2D80, 0x2D96 },
+    { 0x2D7F, 0x2D96 },
     { 0x2DA0, 0x2DA6 },
     { 0x2DA8, 0x2DAE },
     { 0x2DB0, 0x2DB6 },
@@ -368,7 +365,7 @@
     { 0x30FC, 0x30FF },
     { 0x3105, 0x312D },
     { 0x3131, 0x318E },
-    { 0x31A0, 0x31B7 },
+    { 0x31A0, 0x31BA },
     { 0x31F0, 0x31FF },
     { 0x3400, 0x4DB5 },
     { 0x4E00, 0x9FCB },
@@ -376,15 +373,16 @@
     { 0xA4D0, 0xA4FD },
     { 0xA500, 0xA60C },
     { 0xA610, 0xA62B },
-    { 0xA640, 0xA65F },
-    { 0xA662, 0xA66F },
+    { 0xA640, 0xA66F },
     { 0xA67C, 0xA67D },
     { 0xA67F, 0xA697 },
     { 0xA6A0, 0xA6F1 },
     { 0xA717, 0xA71F },
     { 0xA722, 0xA788 },
-    { 0xA78B, 0xA78C },
-    { 0xA7FB, 0xA827 },
+    { 0xA78B, 0xA78E },
+    { 0xA790, 0xA791 },
+    { 0xA7A0, 0xA7A9 },
+    { 0xA7FA, 0xA827 },
     { 0xA840, 0xA873 },
     { 0xA880, 0xA8C4 },
     { 0xA8D0, 0xA8D9 },
@@ -402,6 +400,11 @@
     { 0xAA7A, 0xAA7B },
     { 0xAA80, 0xAAC2 },
     { 0xAADB, 0xAADD },
+    { 0xAB01, 0xAB06 },
+    { 0xAB09, 0xAB0E },
+    { 0xAB11, 0xAB16 },
+    { 0xAB20, 0xAB26 },
+    { 0xAB28, 0xAB2E },
     { 0xABC0, 0xABEA },
     { 0xABEC, 0xABED },
     { 0xABF0, 0xABF9 },
@@ -478,10 +481,14 @@
     { 0x10B40, 0x10B55 },
     { 0x10B60, 0x10B72 },
     { 0x10C00, 0x10C48 },
+    { 0x11000, 0x11046 },
+    { 0x11066, 0x1106F },
     { 0x11080, 0x110BA },
     { 0x12000, 0x1236E },
     { 0x12400, 0x12462 },
     { 0x13000, 0x1342E },
+    { 0x16800, 0x16A38 },
+    { 0x1B000, 0x1B001 },
     { 0x1D165, 0x1D169 },
     { 0x1D16D, 0x1D172 },
     { 0x1D17B, 0x1D182 },
@@ -521,6 +528,7 @@
     { 0x1D7CE, 0x1D7FF },
     { 0x20000, 0x2A6D6 },
     { 0x2A700, 0x2B734 },
+    { 0x2B740, 0x2B81D },
     { 0x2F800, 0x2FA1D },
     { 0xE0100, 0xE01EF }
 
--- a/tests/unictype/test-pr_id_start.c
+++ b/tests/unictype/test-pr_id_start.c
@@ -38,13 +38,13 @@
     { 0x038E, 0x03A1 },
     { 0x03A3, 0x03F5 },
     { 0x03F7, 0x0481 },
-    { 0x048A, 0x0525 },
+    { 0x048A, 0x0527 },
     { 0x0531, 0x0556 },
     { 0x0559, 0x0559 },
     { 0x0561, 0x0587 },
     { 0x05D0, 0x05EA },
     { 0x05F0, 0x05F2 },
-    { 0x0621, 0x064A },
+    { 0x0620, 0x064A },
     { 0x066E, 0x066F },
     { 0x0671, 0x06D3 },
     { 0x06D5, 0x06D5 },
@@ -63,11 +63,12 @@
     { 0x081A, 0x081A },
     { 0x0824, 0x0824 },
     { 0x0828, 0x0828 },
+    { 0x0840, 0x0858 },
     { 0x0904, 0x0939 },
     { 0x093D, 0x093D },
     { 0x0950, 0x0950 },
     { 0x0958, 0x0961 },
-    { 0x0971, 0x0972 },
+    { 0x0971, 0x0977 },
     { 0x0979, 0x097F },
     { 0x0985, 0x098C },
     { 0x098F, 0x0990 },
@@ -136,11 +137,12 @@
     { 0x0CBD, 0x0CBD },
     { 0x0CDE, 0x0CDE },
     { 0x0CE0, 0x0CE1 },
+    { 0x0CF1, 0x0CF2 },
     { 0x0D05, 0x0D0C },
     { 0x0D0E, 0x0D10 },
-    { 0x0D12, 0x0D28 },
-    { 0x0D2A, 0x0D39 },
+    { 0x0D12, 0x0D3A },
     { 0x0D3D, 0x0D3D },
+    { 0x0D4E, 0x0D4E },
     { 0x0D60, 0x0D61 },
     { 0x0D7A, 0x0D7F },
     { 0x0D85, 0x0D96 },
@@ -171,7 +173,7 @@
     { 0x0F00, 0x0F00 },
     { 0x0F40, 0x0F47 },
     { 0x0F49, 0x0F6C },
-    { 0x0F88, 0x0F8B },
+    { 0x0F88, 0x0F8C },
     { 0x1000, 0x102A },
     { 0x103F, 0x103F },
     { 0x1050, 0x1055 },
@@ -232,6 +234,7 @@
     { 0x1B45, 0x1B4B },
     { 0x1B83, 0x1BA0 },
     { 0x1BAE, 0x1BAF },
+    { 0x1BC0, 0x1BE5 },
     { 0x1C00, 0x1C23 },
     { 0x1C4D, 0x1C4F },
     { 0x1C5A, 0x1C7D },
@@ -259,7 +262,7 @@
     { 0x1FF6, 0x1FFC },
     { 0x2071, 0x2071 },
     { 0x207F, 0x207F },
-    { 0x2090, 0x2094 },
+    { 0x2090, 0x209C },
     { 0x2102, 0x2102 },
     { 0x2107, 0x2107 },
     { 0x210A, 0x2113 },
@@ -299,7 +302,7 @@
     { 0x30FC, 0x30FF },
     { 0x3105, 0x312D },
     { 0x3131, 0x318E },
-    { 0x31A0, 0x31B7 },
+    { 0x31A0, 0x31BA },
     { 0x31F0, 0x31FF },
     { 0x3400, 0x4DB5 },
     { 0x4E00, 0x9FCB },
@@ -308,14 +311,15 @@
     { 0xA500, 0xA60C },
     { 0xA610, 0xA61F },
     { 0xA62A, 0xA62B },
-    { 0xA640, 0xA65F },
-    { 0xA662, 0xA66E },
+    { 0xA640, 0xA66E },
     { 0xA67F, 0xA697 },
     { 0xA6A0, 0xA6EF },
     { 0xA717, 0xA71F },
     { 0xA722, 0xA788 },
-    { 0xA78B, 0xA78C },
-    { 0xA7FB, 0xA801 },
+    { 0xA78B, 0xA78E },
+    { 0xA790, 0xA791 },
+    { 0xA7A0, 0xA7A9 },
+    { 0xA7FA, 0xA801 },
     { 0xA803, 0xA805 },
     { 0xA807, 0xA80A },
     { 0xA80C, 0xA822 },
@@ -340,6 +344,11 @@
     { 0xAAC0, 0xAAC0 },
     { 0xAAC2, 0xAAC2 },
     { 0xAADB, 0xAADD },
+    { 0xAB01, 0xAB06 },
+    { 0xAB09, 0xAB0E },
+    { 0xAB11, 0xAB16 },
+    { 0xAB20, 0xAB26 },
+    { 0xAB28, 0xAB2E },
     { 0xABC0, 0xABE2 },
     { 0xAC00, 0xD7A3 },
     { 0xD7B0, 0xD7C6 },
@@ -404,10 +413,13 @@
     { 0x10B40, 0x10B55 },
     { 0x10B60, 0x10B72 },
     { 0x10C00, 0x10C48 },
+    { 0x11003, 0x11037 },
     { 0x11083, 0x110AF },
     { 0x12000, 0x1236E },
     { 0x12400, 0x12462 },
     { 0x13000, 0x1342E },
+    { 0x16800, 0x16A38 },
+    { 0x1B000, 0x1B001 },
     { 0x1D400, 0x1D454 },
     { 0x1D456, 0x1D49C },
     { 0x1D49E, 0x1D49F },
@@ -440,6 +452,7 @@
     { 0x1D7C4, 0x1D7CB },
     { 0x20000, 0x2A6D6 },
     { 0x2A700, 0x2B734 },
+    { 0x2B740, 0x2B81D },
     { 0x2F800, 0x2FA1D }
 
 #define PREDICATE(c) uc_is_property_id_start (c)
--- a/tests/unictype/test-pr_ideographic.c
+++ b/tests/unictype/test-pr_ideographic.c
@@ -27,6 +27,7 @@
     { 0xFA70, 0xFAD9 },
     { 0x20000, 0x2A6D6 },
     { 0x2A700, 0x2B734 },
+    { 0x2B740, 0x2B81D },
     { 0x2F800, 0x2FA1D }
 
 #define PREDICATE(c) uc_is_property_ideographic (c)
--- a/tests/unictype/test-pr_lowercase.c
+++ b/tests/unictype/test-pr_lowercase.c
@@ -286,6 +286,7 @@
     { 0x0521, 0x0521 },
     { 0x0523, 0x0523 },
     { 0x0525, 0x0525 },
+    { 0x0527, 0x0527 },
     { 0x0561, 0x0587 },
     { 0x1D00, 0x1DBF },
     { 0x1E01, 0x1E01 },
@@ -523,6 +524,7 @@
     { 0xA65B, 0xA65B },
     { 0xA65D, 0xA65D },
     { 0xA65F, 0xA65F },
+    { 0xA661, 0xA661 },
     { 0xA663, 0xA663 },
     { 0xA665, 0xA665 },
     { 0xA667, 0xA667 },
@@ -587,6 +589,14 @@
     { 0xA785, 0xA785 },
     { 0xA787, 0xA787 },
     { 0xA78C, 0xA78C },
+    { 0xA78E, 0xA78E },
+    { 0xA791, 0xA791 },
+    { 0xA7A1, 0xA7A1 },
+    { 0xA7A3, 0xA7A3 },
+    { 0xA7A5, 0xA7A5 },
+    { 0xA7A7, 0xA7A7 },
+    { 0xA7A9, 0xA7A9 },
+    { 0xA7FA, 0xA7FA },
     { 0xFB00, 0xFB06 },
     { 0xFB13, 0xFB17 },
     { 0xFF41, 0xFF5A },
--- a/tests/unictype/test-pr_math.c
+++ b/tests/unictype/test-pr_math.c
@@ -44,9 +44,10 @@
     { 0x20E5, 0x20E6 },
     { 0x20EB, 0x20EF },
     { 0x2102, 0x2102 },
+    { 0x2107, 0x2107 },
     { 0x210A, 0x2113 },
     { 0x2115, 0x2115 },
-    { 0x2119, 0x211D },
+    { 0x2118, 0x211D },
     { 0x2124, 0x2124 },
     { 0x2128, 0x2129 },
     { 0x212C, 0x212D },
@@ -86,7 +87,7 @@
     { 0x266D, 0x266F },
     { 0x27C0, 0x27CA },
     { 0x27CC, 0x27CC },
-    { 0x27D0, 0x27FF },
+    { 0x27CE, 0x27FF },
     { 0x2900, 0x2AFF },
     { 0x2B30, 0x2B44 },
     { 0x2B47, 0x2B4C },
--- a/tests/unictype/test-pr_numeric.c
+++ b/tests/unictype/test-pr_numeric.c
@@ -30,6 +30,7 @@
     { 0x0A66, 0x0A6F },
     { 0x0AE6, 0x0AEF },
     { 0x0B66, 0x0B6F },
+    { 0x0B72, 0x0B77 },
     { 0x0BE6, 0x0BF2 },
     { 0x0C66, 0x0C6F },
     { 0x0C78, 0x0C7E },
@@ -101,6 +102,7 @@
     { 0x10B58, 0x10B5F },
     { 0x10B78, 0x10B7F },
     { 0x10E60, 0x10E7E },
+    { 0x11052, 0x1106F },
     { 0x12400, 0x12431 },
     { 0x12434, 0x12455 },
     { 0x12458, 0x12462 },
--- a/tests/unictype/test-pr_other_alphabetic.c
+++ b/tests/unictype/test-pr_other_alphabetic.c
@@ -25,7 +25,7 @@
     { 0x05C7, 0x05C7 },
     { 0x0610, 0x061A },
     { 0x064B, 0x0657 },
-    { 0x0659, 0x065E },
+    { 0x0659, 0x065F },
     { 0x0670, 0x0670 },
     { 0x06D6, 0x06DC },
     { 0x06E1, 0x06E4 },
@@ -39,9 +39,10 @@
     { 0x0825, 0x0827 },
     { 0x0829, 0x082C },
     { 0x0900, 0x0903 },
+    { 0x093A, 0x093B },
     { 0x093E, 0x094C },
-    { 0x094E, 0x094E },
-    { 0x0955, 0x0955 },
+    { 0x094E, 0x094F },
+    { 0x0955, 0x0957 },
     { 0x0962, 0x0963 },
     { 0x0981, 0x0983 },
     { 0x09BE, 0x09C4 },
@@ -103,7 +104,7 @@
     { 0x0EBB, 0x0EBC },
     { 0x0ECD, 0x0ECD },
     { 0x0F71, 0x0F81 },
-    { 0x0F90, 0x0F97 },
+    { 0x0F8D, 0x0F97 },
     { 0x0F99, 0x0FBC },
     { 0x102B, 0x1036 },
     { 0x1038, 0x1038 },
@@ -133,6 +134,7 @@
     { 0x1B35, 0x1B43 },
     { 0x1B80, 0x1B82 },
     { 0x1BA1, 0x1BA9 },
+    { 0x1BE7, 0x1BF1 },
     { 0x1C24, 0x1C35 },
     { 0x1CF2, 0x1CF2 },
     { 0x24B6, 0x24E9 },
@@ -143,7 +145,7 @@
     { 0xA926, 0xA92A },
     { 0xA947, 0xA952 },
     { 0xA980, 0xA983 },
-    { 0xA9B3, 0xA9BF },
+    { 0xA9B4, 0xA9BF },
     { 0xAA29, 0xAA36 },
     { 0xAA43, 0xAA43 },
     { 0xAA4C, 0xAA4D },
@@ -156,6 +158,8 @@
     { 0x10A01, 0x10A03 },
     { 0x10A05, 0x10A06 },
     { 0x10A0C, 0x10A0F },
+    { 0x11000, 0x11002 },
+    { 0x11038, 0x11045 },
     { 0x11082, 0x11082 },
     { 0x110B0, 0x110B8 }
 
--- a/tests/unictype/test-pr_other_id_continue.c
+++ b/tests/unictype/test-pr_other_id_continue.c
@@ -19,7 +19,8 @@
 
     { 0x00B7, 0x00B7 },
     { 0x0387, 0x0387 },
-    { 0x1369, 0x1371 }
+    { 0x1369, 0x1371 },
+    { 0x19DA, 0x19DA }
 
 #define PREDICATE(c) uc_is_property_other_id_continue (c)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-pr_other_math.c
+++ b/tests/unictype/test-pr_other_math.c
@@ -33,6 +33,7 @@
     { 0x20E5, 0x20E6 },
     { 0x20EB, 0x20EF },
     { 0x2102, 0x2102 },
+    { 0x2107, 0x2107 },
     { 0x210A, 0x2113 },
     { 0x2115, 0x2115 },
     { 0x2119, 0x211D },
--- a/tests/unictype/test-pr_punctuation.c
+++ b/tests/unictype/test-pr_punctuation.c
@@ -49,6 +49,7 @@
     { 0x0700, 0x070D },
     { 0x07F7, 0x07F9 },
     { 0x0830, 0x083E },
+    { 0x085E, 0x085E },
     { 0x0964, 0x0965 },
     { 0x0970, 0x0970 },
     { 0x0DF4, 0x0DF4 },
@@ -58,6 +59,7 @@
     { 0x0F3A, 0x0F3D },
     { 0x0F85, 0x0F85 },
     { 0x0FD0, 0x0FD4 },
+    { 0x0FD9, 0x0FDA },
     { 0x104A, 0x104F },
     { 0x10FB, 0x10FB },
     { 0x1361, 0x1368 },
@@ -70,11 +72,11 @@
     { 0x17D8, 0x17DA },
     { 0x1800, 0x180A },
     { 0x1944, 0x1945 },
-    { 0x19DE, 0x19DF },
     { 0x1A1E, 0x1A1F },
     { 0x1AA0, 0x1AA6 },
     { 0x1AA8, 0x1AAD },
     { 0x1B5A, 0x1B60 },
+    { 0x1BFC, 0x1BFF },
     { 0x1C3B, 0x1C3F },
     { 0x1C7E, 0x1C7F },
     { 0x1CD3, 0x1CD3 },
@@ -93,6 +95,7 @@
     { 0x29FC, 0x29FD },
     { 0x2CF9, 0x2CFC },
     { 0x2CFE, 0x2CFF },
+    { 0x2D70, 0x2D70 },
     { 0x2E00, 0x2E2E },
     { 0x2E30, 0x2E31 },
     { 0x3001, 0x3003 },
@@ -143,6 +146,7 @@
     { 0x10A50, 0x10A58 },
     { 0x10A7F, 0x10A7F },
     { 0x10B39, 0x10B3F },
+    { 0x11047, 0x1104D },
     { 0x110BB, 0x110BC },
     { 0x110BE, 0x110C1 },
     { 0x12470, 0x12473 }
--- a/tests/unictype/test-pr_sentence_terminal.c
+++ b/tests/unictype/test-pr_sentence_terminal.c
@@ -32,9 +32,11 @@
     { 0x1362, 0x1362 },
     { 0x1367, 0x1368 },
     { 0x166E, 0x166E },
+    { 0x1735, 0x1736 },
     { 0x1803, 0x1803 },
     { 0x1809, 0x1809 },
     { 0x1944, 0x1945 },
+    { 0x1AA8, 0x1AAB },
     { 0x1B5A, 0x1B5B },
     { 0x1B5E, 0x1B5F },
     { 0x1C3B, 0x1C3C },
@@ -59,6 +61,8 @@
     { 0xFF0E, 0xFF0E },
     { 0xFF1F, 0xFF1F },
     { 0xFF61, 0xFF61 },
+    { 0x10A56, 0x10A57 },
+    { 0x11047, 0x11048 },
     { 0x110BE, 0x110C1 }
 
 #define PREDICATE(c) uc_is_property_sentence_terminal (c)
--- a/tests/unictype/test-pr_terminal_punctuation.c
+++ b/tests/unictype/test-pr_terminal_punctuation.c
@@ -34,6 +34,7 @@
     { 0x070C, 0x070C },
     { 0x07F8, 0x07F9 },
     { 0x0830, 0x083E },
+    { 0x085E, 0x085E },
     { 0x0964, 0x0965 },
     { 0x0E5A, 0x0E5B },
     { 0x0F08, 0x0F08 },
@@ -80,6 +81,7 @@
     { 0x10857, 0x10857 },
     { 0x1091F, 0x1091F },
     { 0x10B3A, 0x10B3F },
+    { 0x11047, 0x1104D },
     { 0x110BE, 0x110C1 },
     { 0x12470, 0x12473 }
 
--- a/tests/unictype/test-pr_unassigned_code_value.c
+++ b/tests/unictype/test-pr_unassigned_code_value.c
@@ -22,7 +22,7 @@
     { 0x038B, 0x038B },
     { 0x038D, 0x038D },
     { 0x03A2, 0x03A2 },
-    { 0x0526, 0x0530 },
+    { 0x0528, 0x0530 },
     { 0x0557, 0x0558 },
     { 0x0560, 0x0560 },
     { 0x0588, 0x0588 },
@@ -32,18 +32,15 @@
     { 0x05F5, 0x05FF },
     { 0x0604, 0x0605 },
     { 0x061C, 0x061D },
-    { 0x0620, 0x0620 },
-    { 0x065F, 0x065F },
     { 0x070E, 0x070E },
     { 0x074B, 0x074C },
     { 0x07B2, 0x07BF },
     { 0x07FB, 0x07FF },
     { 0x082E, 0x082F },
-    { 0x083F, 0x08FF },
-    { 0x093A, 0x093B },
-    { 0x094F, 0x094F },
-    { 0x0956, 0x0957 },
-    { 0x0973, 0x0978 },
+    { 0x083F, 0x083F },
+    { 0x085C, 0x085D },
+    { 0x085F, 0x08FF },
+    { 0x0978, 0x0978 },
     { 0x0980, 0x0980 },
     { 0x0984, 0x0984 },
     { 0x098D, 0x098E },
@@ -102,7 +99,7 @@
     { 0x0B58, 0x0B5B },
     { 0x0B5E, 0x0B5E },
     { 0x0B64, 0x0B65 },
-    { 0x0B72, 0x0B81 },
+    { 0x0B78, 0x0B81 },
     { 0x0B84, 0x0B84 },
     { 0x0B8B, 0x0B8D },
     { 0x0B91, 0x0B91 },
@@ -150,11 +147,10 @@
     { 0x0D04, 0x0D04 },
     { 0x0D0D, 0x0D0D },
     { 0x0D11, 0x0D11 },
-    { 0x0D29, 0x0D29 },
-    { 0x0D3A, 0x0D3C },
+    { 0x0D3B, 0x0D3C },
     { 0x0D45, 0x0D45 },
     { 0x0D49, 0x0D49 },
-    { 0x0D4E, 0x0D56 },
+    { 0x0D4F, 0x0D56 },
     { 0x0D58, 0x0D5F },
     { 0x0D64, 0x0D65 },
     { 0x0D76, 0x0D78 },
@@ -192,11 +188,10 @@
     { 0x0EDE, 0x0EFF },
     { 0x0F48, 0x0F48 },
     { 0x0F6D, 0x0F70 },
-    { 0x0F8C, 0x0F8F },
     { 0x0F98, 0x0F98 },
     { 0x0FBD, 0x0FBD },
     { 0x0FCD, 0x0FCD },
-    { 0x0FD9, 0x0FFF },
+    { 0x0FDB, 0x0FFF },
     { 0x10C6, 0x10CF },
     { 0x10FD, 0x10FF },
     { 0x1249, 0x1249 },
@@ -214,7 +209,7 @@
     { 0x12D7, 0x12D7 },
     { 0x1311, 0x1311 },
     { 0x1316, 0x1317 },
-    { 0x135B, 0x135E },
+    { 0x135B, 0x135C },
     { 0x137D, 0x137F },
     { 0x139A, 0x139F },
     { 0x13F5, 0x13FF },
@@ -253,12 +248,13 @@
     { 0x1B4C, 0x1B4F },
     { 0x1B7D, 0x1B7F },
     { 0x1BAB, 0x1BAD },
-    { 0x1BBA, 0x1BFF },
+    { 0x1BBA, 0x1BBF },
+    { 0x1BF4, 0x1BFB },
     { 0x1C38, 0x1C3A },
     { 0x1C4A, 0x1C4C },
     { 0x1C80, 0x1CCF },
     { 0x1CF3, 0x1CFF },
-    { 0x1DE7, 0x1DFC },
+    { 0x1DE7, 0x1DFB },
     { 0x1F16, 0x1F17 },
     { 0x1F1E, 0x1F1F },
     { 0x1F46, 0x1F47 },
@@ -278,29 +274,16 @@
     { 0x2065, 0x2069 },
     { 0x2072, 0x2073 },
     { 0x208F, 0x208F },
-    { 0x2095, 0x209F },
-    { 0x20B9, 0x20CF },
+    { 0x209D, 0x209F },
+    { 0x20BA, 0x20CF },
     { 0x20F1, 0x20FF },
     { 0x218A, 0x218F },
-    { 0x23E9, 0x23FF },
+    { 0x23F4, 0x23FF },
     { 0x2427, 0x243F },
     { 0x244B, 0x245F },
-    { 0x26CE, 0x26CE },
-    { 0x26E2, 0x26E2 },
-    { 0x26E4, 0x26E7 },
     { 0x2700, 0x2700 },
-    { 0x2705, 0x2705 },
-    { 0x270A, 0x270B },
-    { 0x2728, 0x2728 },
-    { 0x274C, 0x274C },
-    { 0x274E, 0x274E },
-    { 0x2753, 0x2755 },
-    { 0x275F, 0x2760 },
-    { 0x2795, 0x2797 },
-    { 0x27B0, 0x27B0 },
-    { 0x27BF, 0x27BF },
     { 0x27CB, 0x27CB },
-    { 0x27CD, 0x27CF },
+    { 0x27CD, 0x27CD },
     { 0x2B4D, 0x2B4F },
     { 0x2B5A, 0x2BFF },
     { 0x2C2F, 0x2C2F },
@@ -308,7 +291,7 @@
     { 0x2CF2, 0x2CF8 },
     { 0x2D26, 0x2D2F },
     { 0x2D66, 0x2D6E },
-    { 0x2D70, 0x2D7F },
+    { 0x2D71, 0x2D7E },
     { 0x2D97, 0x2D9F },
     { 0x2DA7, 0x2DA7 },
     { 0x2DAF, 0x2DAF },
@@ -328,7 +311,7 @@
     { 0x3100, 0x3104 },
     { 0x312E, 0x3130 },
     { 0x318F, 0x318F },
-    { 0x31B8, 0x31BF },
+    { 0x31BB, 0x31BF },
     { 0x31E4, 0x31EF },
     { 0x321F, 0x321F },
     { 0x32FF, 0x32FF },
@@ -337,11 +320,12 @@
     { 0xA48D, 0xA48F },
     { 0xA4C7, 0xA4CF },
     { 0xA62C, 0xA63F },
-    { 0xA660, 0xA661 },
     { 0xA674, 0xA67B },
     { 0xA698, 0xA69F },
     { 0xA6F8, 0xA6FF },
-    { 0xA78D, 0xA7FA },
+    { 0xA78F, 0xA78F },
+    { 0xA792, 0xA79F },
+    { 0xA7AA, 0xA7F9 },
     { 0xA82C, 0xA82F },
     { 0xA83A, 0xA83F },
     { 0xA878, 0xA87F },
@@ -358,7 +342,12 @@
     { 0xAA5A, 0xAA5B },
     { 0xAA7C, 0xAA7F },
     { 0xAAC3, 0xAADA },
-    { 0xAAE0, 0xABBF },
+    { 0xAAE0, 0xAB00 },
+    { 0xAB07, 0xAB08 },
+    { 0xAB0F, 0xAB10 },
+    { 0xAB17, 0xAB1F },
+    { 0xAB27, 0xAB27 },
+    { 0xAB2F, 0xABBF },
     { 0xABEE, 0xABEF },
     { 0xABFA, 0xABFF },
     { 0xD7A4, 0xD7AF },
@@ -374,7 +363,7 @@
     { 0xFB3F, 0xFB3F },
     { 0xFB42, 0xFB42 },
     { 0xFB45, 0xFB45 },
-    { 0xFBB2, 0xFBD2 },
+    { 0xFBC2, 0xFBD2 },
     { 0xFD40, 0xFD4F },
     { 0xFD90, 0xFD91 },
     { 0xFDC8, 0xFDCF },
@@ -440,12 +429,16 @@
     { 0x10B73, 0x10B77 },
     { 0x10B80, 0x10BFF },
     { 0x10C49, 0x10E5F },
-    { 0x10E7F, 0x1107F },
+    { 0x10E7F, 0x10FFF },
+    { 0x1104E, 0x11051 },
+    { 0x11070, 0x1107F },
     { 0x110C2, 0x11FFF },
     { 0x1236F, 0x123FF },
     { 0x12463, 0x1246F },
     { 0x12474, 0x12FFF },
-    { 0x1342F, 0x1CFFF },
+    { 0x1342F, 0x167FF },
+    { 0x16A39, 0x1AFFF },
+    { 0x1B002, 0x1CFFF },
     { 0x1D0F6, 0x1D0FF },
     { 0x1D127, 0x1D128 },
     { 0x1D1DE, 0x1D1FF },
@@ -474,27 +467,50 @@
     { 0x1D7CC, 0x1D7CD },
     { 0x1D800, 0x1EFFF },
     { 0x1F02C, 0x1F02F },
-    { 0x1F094, 0x1F0FF },
+    { 0x1F094, 0x1F09F },
+    { 0x1F0AF, 0x1F0B0 },
+    { 0x1F0BF, 0x1F0C0 },
+    { 0x1F0D0, 0x1F0D0 },
+    { 0x1F0E0, 0x1F0FF },
     { 0x1F10B, 0x1F10F },
-    { 0x1F12F, 0x1F130 },
-    { 0x1F132, 0x1F13C },
-    { 0x1F13E, 0x1F13E },
-    { 0x1F140, 0x1F141 },
-    { 0x1F143, 0x1F145 },
-    { 0x1F147, 0x1F149 },
-    { 0x1F14F, 0x1F156 },
-    { 0x1F158, 0x1F15E },
-    { 0x1F160, 0x1F178 },
-    { 0x1F17A, 0x1F17A },
-    { 0x1F17D, 0x1F17E },
-    { 0x1F180, 0x1F189 },
-    { 0x1F18E, 0x1F18F },
-    { 0x1F191, 0x1F1FF },
-    { 0x1F201, 0x1F20F },
-    { 0x1F232, 0x1F23F },
-    { 0x1F249, 0x1FFFD },
+    { 0x1F12F, 0x1F12F },
+    { 0x1F16A, 0x1F16F },
+    { 0x1F19B, 0x1F1E5 },
+    { 0x1F203, 0x1F20F },
+    { 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, 0x1F54F },
+    { 0x1F568, 0x1F5FA },
+    { 0x1F600, 0x1F600 },
+    { 0x1F611, 0x1F611 },
+    { 0x1F615, 0x1F615 },
+    { 0x1F617, 0x1F617 },
+    { 0x1F619, 0x1F619 },
+    { 0x1F61B, 0x1F61B },
+    { 0x1F61F, 0x1F61F },
+    { 0x1F626, 0x1F627 },
+    { 0x1F62C, 0x1F62C },
+    { 0x1F62E, 0x1F62F },
+    { 0x1F634, 0x1F634 },
+    { 0x1F641, 0x1F644 },
+    { 0x1F650, 0x1F67F },
+    { 0x1F6C6, 0x1F6FF },
+    { 0x1F774, 0x1FFFD },
     { 0x2A6D7, 0x2A6FF },
-    { 0x2B735, 0x2F7FF },
+    { 0x2B735, 0x2B73F },
+    { 0x2B81E, 0x2F7FF },
     { 0x2FA1E, 0x2FFFD },
     { 0x30000, 0x3FFFD },
     { 0x40000, 0x4FFFD },
--- a/tests/unictype/test-pr_unified_ideograph.c
+++ b/tests/unictype/test-pr_unified_ideograph.c
@@ -27,7 +27,8 @@
     { 0xFA23, 0xFA24 },
     { 0xFA27, 0xFA29 },
     { 0x20000, 0x2A6D6 },
-    { 0x2A700, 0x2B734 }
+    { 0x2A700, 0x2B734 },
+    { 0x2B740, 0x2B81D }
 
 #define PREDICATE(c) uc_is_property_unified_ideograph (c)
 #include "test-predicate-part2.h"
--- a/tests/unictype/test-pr_uppercase.c
+++ b/tests/unictype/test-pr_uppercase.c
@@ -282,6 +282,7 @@
     { 0x0520, 0x0520 },
     { 0x0522, 0x0522 },
     { 0x0524, 0x0524 },
+    { 0x0526, 0x0526 },
     { 0x0531, 0x0556 },
     { 0x10A0, 0x10C5 },
     { 0x1E00, 0x1E00 },
@@ -516,6 +517,7 @@
     { 0xA65A, 0xA65A },
     { 0xA65C, 0xA65C },
     { 0xA65E, 0xA65E },
+    { 0xA660, 0xA660 },
     { 0xA662, 0xA662 },
     { 0xA664, 0xA664 },
     { 0xA666, 0xA666 },
@@ -580,6 +582,13 @@
     { 0xA784, 0xA784 },
     { 0xA786, 0xA786 },
     { 0xA78B, 0xA78B },
+    { 0xA78D, 0xA78D },
+    { 0xA790, 0xA790 },
+    { 0xA7A0, 0xA7A0 },
+    { 0xA7A2, 0xA7A2 },
+    { 0xA7A4, 0xA7A4 },
+    { 0xA7A6, 0xA7A6 },
+    { 0xA7A8, 0xA7A8 },
     { 0xFF21, 0xFF3A },
     { 0x10400, 0x10427 },
     { 0x1D400, 0x1D419 },
--- a/tests/unictype/test-pr_xid_continue.c
+++ b/tests/unictype/test-pr_xid_continue.c
@@ -41,7 +41,7 @@
     { 0x03A3, 0x03F5 },
     { 0x03F7, 0x0481 },
     { 0x0483, 0x0487 },
-    { 0x048A, 0x0525 },
+    { 0x048A, 0x0527 },
     { 0x0531, 0x0556 },
     { 0x0559, 0x0559 },
     { 0x0561, 0x0587 },
@@ -53,8 +53,7 @@
     { 0x05D0, 0x05EA },
     { 0x05F0, 0x05F2 },
     { 0x0610, 0x061A },
-    { 0x0621, 0x065E },
-    { 0x0660, 0x0669 },
+    { 0x0620, 0x0669 },
     { 0x066E, 0x06D3 },
     { 0x06D5, 0x06DC },
     { 0x06DF, 0x06E8 },
@@ -65,12 +64,10 @@
     { 0x07C0, 0x07F5 },
     { 0x07FA, 0x07FA },
     { 0x0800, 0x082D },
-    { 0x0900, 0x0939 },
-    { 0x093C, 0x094E },
-    { 0x0950, 0x0955 },
-    { 0x0958, 0x0963 },
+    { 0x0840, 0x085B },
+    { 0x0900, 0x0963 },
     { 0x0966, 0x096F },
-    { 0x0971, 0x0972 },
+    { 0x0971, 0x0977 },
     { 0x0979, 0x097F },
     { 0x0981, 0x0983 },
     { 0x0985, 0x098C },
@@ -172,14 +169,14 @@
     { 0x0CDE, 0x0CDE },
     { 0x0CE0, 0x0CE3 },
     { 0x0CE6, 0x0CEF },
+    { 0x0CF1, 0x0CF2 },
     { 0x0D02, 0x0D03 },
     { 0x0D05, 0x0D0C },
     { 0x0D0E, 0x0D10 },
-    { 0x0D12, 0x0D28 },
-    { 0x0D2A, 0x0D39 },
+    { 0x0D12, 0x0D3A },
     { 0x0D3D, 0x0D44 },
     { 0x0D46, 0x0D48 },
-    { 0x0D4A, 0x0D4D },
+    { 0x0D4A, 0x0D4E },
     { 0x0D57, 0x0D57 },
     { 0x0D60, 0x0D63 },
     { 0x0D66, 0x0D6F },
@@ -225,8 +222,7 @@
     { 0x0F3E, 0x0F47 },
     { 0x0F49, 0x0F6C },
     { 0x0F71, 0x0F84 },
-    { 0x0F86, 0x0F8B },
-    { 0x0F90, 0x0F97 },
+    { 0x0F86, 0x0F97 },
     { 0x0F99, 0x0FBC },
     { 0x0FC6, 0x0FC6 },
     { 0x1000, 0x1049 },
@@ -250,7 +246,7 @@
     { 0x12D8, 0x1310 },
     { 0x1312, 0x1315 },
     { 0x1318, 0x135A },
-    { 0x135F, 0x135F },
+    { 0x135D, 0x135F },
     { 0x1369, 0x1371 },
     { 0x1380, 0x138F },
     { 0x13A0, 0x13F4 },
@@ -295,13 +291,14 @@
     { 0x1B6B, 0x1B73 },
     { 0x1B80, 0x1BAA },
     { 0x1BAE, 0x1BB9 },
+    { 0x1BC0, 0x1BF3 },
     { 0x1C00, 0x1C37 },
     { 0x1C40, 0x1C49 },
     { 0x1C4D, 0x1C7D },
     { 0x1CD0, 0x1CD2 },
     { 0x1CD4, 0x1CF2 },
     { 0x1D00, 0x1DE6 },
-    { 0x1DFD, 0x1F15 },
+    { 0x1DFC, 0x1F15 },
     { 0x1F18, 0x1F1D },
     { 0x1F20, 0x1F45 },
     { 0x1F48, 0x1F4D },
@@ -324,7 +321,7 @@
     { 0x2054, 0x2054 },
     { 0x2071, 0x2071 },
     { 0x207F, 0x207F },
-    { 0x2090, 0x2094 },
+    { 0x2090, 0x209C },
     { 0x20D0, 0x20DC },
     { 0x20E1, 0x20E1 },
     { 0x20E5, 0x20F0 },
@@ -348,7 +345,7 @@
     { 0x2D00, 0x2D25 },
     { 0x2D30, 0x2D65 },
     { 0x2D6F, 0x2D6F },
-    { 0x2D80, 0x2D96 },
+    { 0x2D7F, 0x2D96 },
     { 0x2DA0, 0x2DA6 },
     { 0x2DA8, 0x2DAE },
     { 0x2DB0, 0x2DB6 },
@@ -369,7 +366,7 @@
     { 0x30FC, 0x30FF },
     { 0x3105, 0x312D },
     { 0x3131, 0x318E },
-    { 0x31A0, 0x31B7 },
+    { 0x31A0, 0x31BA },
     { 0x31F0, 0x31FF },
     { 0x3400, 0x4DB5 },
     { 0x4E00, 0x9FCB },
@@ -377,15 +374,16 @@
     { 0xA4D0, 0xA4FD },
     { 0xA500, 0xA60C },
     { 0xA610, 0xA62B },
-    { 0xA640, 0xA65F },
-    { 0xA662, 0xA66F },
+    { 0xA640, 0xA66F },
     { 0xA67C, 0xA67D },
     { 0xA67F, 0xA697 },
     { 0xA6A0, 0xA6F1 },
     { 0xA717, 0xA71F },
     { 0xA722, 0xA788 },
-    { 0xA78B, 0xA78C },
-    { 0xA7FB, 0xA827 },
+    { 0xA78B, 0xA78E },
+    { 0xA790, 0xA791 },
+    { 0xA7A0, 0xA7A9 },
+    { 0xA7FA, 0xA827 },
     { 0xA840, 0xA873 },
     { 0xA880, 0xA8C4 },
     { 0xA8D0, 0xA8D9 },
@@ -403,6 +401,11 @@
     { 0xAA7A, 0xAA7B },
     { 0xAA80, 0xAAC2 },
     { 0xAADB, 0xAADD },
+    { 0xAB01, 0xAB06 },
+    { 0xAB09, 0xAB0E },
+    { 0xAB11, 0xAB16 },
+    { 0xAB20, 0xAB26 },
+    { 0xAB28, 0xAB2E },
     { 0xABC0, 0xABEA },
     { 0xABEC, 0xABED },
     { 0xABF0, 0xABF9 },
@@ -485,10 +488,14 @@
     { 0x10B40, 0x10B55 },
     { 0x10B60, 0x10B72 },
     { 0x10C00, 0x10C48 },
+    { 0x11000, 0x11046 },
+    { 0x11066, 0x1106F },
     { 0x11080, 0x110BA },
     { 0x12000, 0x1236E },
     { 0x12400, 0x12462 },
     { 0x13000, 0x1342E },
+    { 0x16800, 0x16A38 },
+    { 0x1B000, 0x1B001 },
     { 0x1D165, 0x1D169 },
     { 0x1D16D, 0x1D172 },
     { 0x1D17B, 0x1D182 },
@@ -528,6 +535,7 @@
     { 0x1D7CE, 0x1D7FF },
     { 0x20000, 0x2A6D6 },
     { 0x2A700, 0x2B734 },
+    { 0x2B740, 0x2B81D },
     { 0x2F800, 0x2FA1D },
     { 0xE0100, 0xE01EF }
 
--- a/tests/unictype/test-pr_xid_start.c
+++ b/tests/unictype/test-pr_xid_start.c
@@ -38,13 +38,13 @@
     { 0x038E, 0x03A1 },
     { 0x03A3, 0x03F5 },
     { 0x03F7, 0x0481 },
-    { 0x048A, 0x0525 },
+    { 0x048A, 0x0527 },
     { 0x0531, 0x0556 },
     { 0x0559, 0x0559 },
     { 0x0561, 0x0587 },
     { 0x05D0, 0x05EA },
     { 0x05F0, 0x05F2 },
-    { 0x0621, 0x064A },
+    { 0x0620, 0x064A },
     { 0x066E, 0x066F },
     { 0x0671, 0x06D3 },
     { 0x06D5, 0x06D5 },
@@ -63,11 +63,12 @@
     { 0x081A, 0x081A },
     { 0x0824, 0x0824 },
     { 0x0828, 0x0828 },
+    { 0x0840, 0x0858 },
     { 0x0904, 0x0939 },
     { 0x093D, 0x093D },
     { 0x0950, 0x0950 },
     { 0x0958, 0x0961 },
-    { 0x0971, 0x0972 },
+    { 0x0971, 0x0977 },
     { 0x0979, 0x097F },
     { 0x0985, 0x098C },
     { 0x098F, 0x0990 },
@@ -136,11 +137,12 @@
     { 0x0CBD, 0x0CBD },
     { 0x0CDE, 0x0CDE },
     { 0x0CE0, 0x0CE1 },
+    { 0x0CF1, 0x0CF2 },
     { 0x0D05, 0x0D0C },
     { 0x0D0E, 0x0D10 },
-    { 0x0D12, 0x0D28 },
-    { 0x0D2A, 0x0D39 },
+    { 0x0D12, 0x0D3A },
     { 0x0D3D, 0x0D3D },
+    { 0x0D4E, 0x0D4E },
     { 0x0D60, 0x0D61 },
     { 0x0D7A, 0x0D7F },
     { 0x0D85, 0x0D96 },
@@ -171,7 +173,7 @@
     { 0x0F00, 0x0F00 },
     { 0x0F40, 0x0F47 },
     { 0x0F49, 0x0F6C },
-    { 0x0F88, 0x0F8B },
+    { 0x0F88, 0x0F8C },
     { 0x1000, 0x102A },
     { 0x103F, 0x103F },
     { 0x1050, 0x1055 },
@@ -232,6 +234,7 @@
     { 0x1B45, 0x1B4B },
     { 0x1B83, 0x1BA0 },
     { 0x1BAE, 0x1BAF },
+    { 0x1BC0, 0x1BE5 },
     { 0x1C00, 0x1C23 },
     { 0x1C4D, 0x1C4F },
     { 0x1C5A, 0x1C7D },
@@ -259,7 +262,7 @@
     { 0x1FF6, 0x1FFC },
     { 0x2071, 0x2071 },
     { 0x207F, 0x207F },
-    { 0x2090, 0x2094 },
+    { 0x2090, 0x209C },
     { 0x2102, 0x2102 },
     { 0x2107, 0x2107 },
     { 0x210A, 0x2113 },
@@ -299,7 +302,7 @@
     { 0x30FC, 0x30FF },
     { 0x3105, 0x312D },
     { 0x3131, 0x318E },
-    { 0x31A0, 0x31B7 },
+    { 0x31A0, 0x31BA },
     { 0x31F0, 0x31FF },
     { 0x3400, 0x4DB5 },
     { 0x4E00, 0x9FCB },
@@ -308,14 +311,15 @@
     { 0xA500, 0xA60C },
     { 0xA610, 0xA61F },
     { 0xA62A, 0xA62B },
-    { 0xA640, 0xA65F },
-    { 0xA662, 0xA66E },
+    { 0xA640, 0xA66E },
     { 0xA67F, 0xA697 },
     { 0xA6A0, 0xA6EF },
     { 0xA717, 0xA71F },
     { 0xA722, 0xA788 },
-    { 0xA78B, 0xA78C },
-    { 0xA7FB, 0xA801 },
+    { 0xA78B, 0xA78E },
+    { 0xA790, 0xA791 },
+    { 0xA7A0, 0xA7A9 },
+    { 0xA7FA, 0xA801 },
     { 0xA803, 0xA805 },
     { 0xA807, 0xA80A },
     { 0xA80C, 0xA822 },
@@ -340,6 +344,11 @@
     { 0xAAC0, 0xAAC0 },
     { 0xAAC2, 0xAAC2 },
     { 0xAADB, 0xAADD },
+    { 0xAB01, 0xAB06 },
+    { 0xAB09, 0xAB0E },
+    { 0xAB11, 0xAB16 },
+    { 0xAB20, 0xAB26 },
+    { 0xAB28, 0xAB2E },
     { 0xABC0, 0xABE2 },
     { 0xAC00, 0xD7A3 },
     { 0xD7B0, 0xD7C6 },
@@ -411,10 +420,13 @@
     { 0x10B40, 0x10B55 },
     { 0x10B60, 0x10B72 },
     { 0x10C00, 0x10C48 },
+    { 0x11003, 0x11037 },
     { 0x11083, 0x110AF },
     { 0x12000, 0x1236E },
     { 0x12400, 0x12462 },
     { 0x13000, 0x1342E },
+    { 0x16800, 0x16A38 },
+    { 0x1B000, 0x1B001 },
     { 0x1D400, 0x1D454 },
     { 0x1D456, 0x1D49C },
     { 0x1D49E, 0x1D49F },
@@ -447,6 +459,7 @@
     { 0x1D7C4, 0x1D7CB },
     { 0x20000, 0x2A6D6 },
     { 0x2A700, 0x2B734 },
+    { 0x2B740, 0x2B81D },
     { 0x2F800, 0x2FA1D }
 
 #define PREDICATE(c) uc_is_property_xid_start (c)
--- a/tests/unigbrk/GraphemeBreakTest.txt
+++ b/tests/unigbrk/GraphemeBreakTest.txt
@@ -1,8 +1,8 @@
-# GraphemeBreakTest-5.2.0.txt
-# Date: 2009-09-19, 00:42:12 GMT [MD]
+# GraphemeBreakTest-6.0.0.txt
+# Date: 2010-05-18, 00:49:27 GMT [MD]
 #
 # Unicode Character Database
-# Copyright (c) 1991-2009 Unicode, Inc.
+# Copyright (c) 1991-2010 Unicode, Inc.
 # For terms of use, see http://www.unicode.org/terms_of_use.html
 # For documentation, see http://www.unicode.org/reports/tr44/
 #
--- a/tests/unigbrk/test-uc-gbrk-prop.h
+++ b/tests/unigbrk/test-uc-gbrk-prop.h
@@ -43,12 +43,13 @@
 { 0x0610, GBP_OTHER },
 { 0x061B, GBP_EXTEND },
 { 0x064B, GBP_OTHER },
-{ 0x065F, GBP_EXTEND },
+{ 0x0660, GBP_EXTEND },
 { 0x0670, GBP_OTHER },
 { 0x0671, GBP_EXTEND },
 { 0x06D6, GBP_OTHER },
 { 0x06DD, GBP_EXTEND },
 { 0x06DE, GBP_CONTROL },
+{ 0x06DF, GBP_OTHER },
 { 0x06E5, GBP_EXTEND },
 { 0x06E7, GBP_OTHER },
 { 0x06E9, GBP_EXTEND },
@@ -72,19 +73,23 @@
 { 0x0828, GBP_EXTEND },
 { 0x0829, GBP_OTHER },
 { 0x082E, GBP_EXTEND },
+{ 0x0859, GBP_OTHER },
+{ 0x085C, GBP_EXTEND },
 { 0x0900, GBP_OTHER },
 { 0x0903, GBP_EXTEND },
 { 0x0904, GBP_SPACINGMARK },
-{ 0x093C, GBP_OTHER },
+{ 0x093A, GBP_OTHER },
+{ 0x093B, GBP_EXTEND },
+{ 0x093C, GBP_SPACINGMARK },
 { 0x093D, GBP_EXTEND },
 { 0x093E, GBP_OTHER },
 { 0x0941, GBP_SPACINGMARK },
 { 0x0949, GBP_EXTEND },
 { 0x094D, GBP_SPACINGMARK },
 { 0x094E, GBP_EXTEND },
-{ 0x094F, GBP_SPACINGMARK },
+{ 0x0950, GBP_SPACINGMARK },
 { 0x0951, GBP_OTHER },
-{ 0x0956, GBP_EXTEND },
+{ 0x0958, GBP_EXTEND },
 { 0x0962, GBP_OTHER },
 { 0x0964, GBP_EXTEND },
 { 0x0981, GBP_OTHER },
@@ -235,13 +240,19 @@
 { 0x0DF2, GBP_OTHER },
 { 0x0DF4, GBP_SPACINGMARK },
 { 0x0E30, GBP_OTHER },
+{ 0x0E31, GBP_SPACINGMARK },
+{ 0x0E32, GBP_EXTEND },
+{ 0x0E34, GBP_SPACINGMARK },
 { 0x0E3B, GBP_EXTEND },
 { 0x0E40, GBP_OTHER },
 { 0x0E45, GBP_PREPEND },
-{ 0x0E46, GBP_EXTEND },
+{ 0x0E46, GBP_SPACINGMARK },
 { 0x0E47, GBP_OTHER },
 { 0x0E4F, GBP_EXTEND },
 { 0x0EB0, GBP_OTHER },
+{ 0x0EB1, GBP_SPACINGMARK },
+{ 0x0EB2, GBP_EXTEND },
+{ 0x0EB4, GBP_SPACINGMARK },
 { 0x0EBA, GBP_EXTEND },
 { 0x0EBB, GBP_OTHER },
 { 0x0EBD, GBP_EXTEND },
@@ -265,7 +276,7 @@
 { 0x0F85, GBP_EXTEND },
 { 0x0F86, GBP_OTHER },
 { 0x0F88, GBP_EXTEND },
-{ 0x0F90, GBP_OTHER },
+{ 0x0F8D, GBP_OTHER },
 { 0x0F98, GBP_EXTEND },
 { 0x0F99, GBP_OTHER },
 { 0x0FBD, GBP_EXTEND },
@@ -306,7 +317,7 @@
 { 0x1160, GBP_L },
 { 0x11A8, GBP_V },
 { 0x1200, GBP_T },
-{ 0x135F, GBP_OTHER },
+{ 0x135D, GBP_OTHER },
 { 0x1360, GBP_EXTEND },
 { 0x1712, GBP_OTHER },
 { 0x1715, GBP_EXTEND },
@@ -385,6 +396,15 @@
 { 0x1BA8, GBP_SPACINGMARK },
 { 0x1BAA, GBP_EXTEND },
 { 0x1BAB, GBP_SPACINGMARK },
+{ 0x1BE6, GBP_OTHER },
+{ 0x1BE7, GBP_EXTEND },
+{ 0x1BE8, GBP_SPACINGMARK },
+{ 0x1BEA, GBP_EXTEND },
+{ 0x1BED, GBP_SPACINGMARK },
+{ 0x1BEE, GBP_EXTEND },
+{ 0x1BEF, GBP_SPACINGMARK },
+{ 0x1BF2, GBP_EXTEND },
+{ 0x1BF4, GBP_SPACINGMARK },
 { 0x1C24, GBP_OTHER },
 { 0x1C2C, GBP_SPACINGMARK },
 { 0x1C34, GBP_EXTEND },
@@ -402,7 +422,7 @@
 { 0x1CF3, GBP_SPACINGMARK },
 { 0x1DC0, GBP_OTHER },
 { 0x1DE7, GBP_EXTEND },
-{ 0x1DFD, GBP_OTHER },
+{ 0x1DFC, GBP_OTHER },
 { 0x1E00, GBP_EXTEND },
 { 0x200B, GBP_OTHER },
 { 0x200C, GBP_CONTROL },
@@ -418,6 +438,8 @@
 { 0x20F1, GBP_EXTEND },
 { 0x2CEF, GBP_OTHER },
 { 0x2CF2, GBP_EXTEND },
+{ 0x2D7F, GBP_OTHER },
+{ 0x2D80, GBP_EXTEND },
 { 0x2DE0, GBP_OTHER },
 { 0x2E00, GBP_EXTEND },
 { 0x302A, GBP_OTHER },
@@ -1326,6 +1348,12 @@
 { 0x10A3B, GBP_EXTEND },
 { 0x10A3F, GBP_OTHER },
 { 0x10A40, GBP_EXTEND },
+{ 0x11000, GBP_OTHER },
+{ 0x11001, GBP_SPACINGMARK },
+{ 0x11002, GBP_EXTEND },
+{ 0x11003, GBP_SPACINGMARK },
+{ 0x11038, GBP_OTHER },
+{ 0x11047, GBP_EXTEND },
 { 0x11080, GBP_OTHER },
 { 0x11082, GBP_EXTEND },
 { 0x11083, GBP_SPACINGMARK },
--- a/tests/unilbrk/test-u16-possible-linebreaks.c
+++ b/tests/unilbrk/test-u16-possible-linebreaks.c
@@ -80,5 +80,20 @@
     }
   }
 
+  /* Test that a break is possible after a zero-width space followed by some
+     regular spaces (rule LB8 in Unicode TR#14 revision 26).  */
+  {
+    static const uint16_t input[4] = { 'x', 0x200B, ' ', 'y' };
+    char *p = (char *) malloc (SIZEOF (input));
+    size_t i;
+
+    u16_possible_linebreaks (input, SIZEOF (input), "UTF-8", p);
+    for (i = 0; i < 4; i++)
+      {
+        ASSERT (p[i] == (i == 3 ? UC_BREAK_POSSIBLE : UC_BREAK_PROHIBITED));
+      }
+    free (p);
+  }
+
   return 0;
 }
--- a/tests/unilbrk/test-u32-possible-linebreaks.c
+++ b/tests/unilbrk/test-u32-possible-linebreaks.c
@@ -80,5 +80,20 @@
     }
   }
 
+  /* Test that a break is possible after a zero-width space followed by some
+     regular spaces (rule LB8 in Unicode TR#14 revision 26).  */
+  {
+    static const uint32_t input[4] = { 'x', 0x200B, ' ', 'y' };
+    char *p = (char *) malloc (SIZEOF (input));
+    size_t i;
+
+    u32_possible_linebreaks (input, SIZEOF (input), "UTF-8", p);
+    for (i = 0; i < 4; i++)
+      {
+        ASSERT (p[i] == (i == 3 ? UC_BREAK_POSSIBLE : UC_BREAK_PROHIBITED));
+      }
+    free (p);
+  }
+
   return 0;
 }
--- a/tests/unilbrk/test-u8-possible-linebreaks.c
+++ b/tests/unilbrk/test-u8-possible-linebreaks.c
@@ -74,5 +74,20 @@
     }
   }
 
+  /* Test that a break is possible after a zero-width space followed by some
+     regular spaces (rule LB8 in Unicode TR#14 revision 26).  */
+  {
+    static const uint8_t input[6] = "x\342\200\213 y";
+    char *p = (char *) malloc (SIZEOF (input));
+    size_t i;
+
+    u8_possible_linebreaks (input, SIZEOF (input), "UTF-8", p);
+    for (i = 0; i < 4; i++)
+      {
+        ASSERT (p[i] == (i == 5 ? UC_BREAK_POSSIBLE : UC_BREAK_PROHIBITED));
+      }
+    free (p);
+  }
+
   return 0;
 }
--- a/tests/uninorm/NormalizationTest.txt
+++ b/tests/uninorm/NormalizationTest.txt
@@ -1,8 +1,8 @@
-# NormalizationTest-5.2.0.txt
-# Date: 2009-08-22, 04:58:39 GMT [MD]
+# NormalizationTest-6.0.0.txt
+# Date: 2010-05-18, 00:49:30 GMT [MD]
 #
 # Unicode Character Database
-# Copyright (c) 1991-2009 Unicode, Inc.
+# Copyright (c) 1991-2010 Unicode, Inc.
 # For terms of use, see http://www.unicode.org/terms_of_use.html
 # Most comments have been stripped from this file.
 
@@ -1196,6 +1196,14 @@
 2092;2092;2092;006F;006F;
 2093;2093;2093;0078;0078;
 2094;2094;2094;0259;0259;
+2095;2095;2095;0068;0068;
+2096;2096;2096;006B;006B;
+2097;2097;2097;006C;006C;
+2098;2098;2098;006D;006D;
+2099;2099;2099;006E;006E;
+209A;209A;209A;0070;0070;
+209B;209B;209B;0073;0073;
+209C;209C;209C;0074;0074;
 20A8;20A8;20A8;0052 0073;0052 0073;
 2100;2100;2100;0061 002F 0063;0061 002F 0063;
 2101;2101;2101;0061 002F 0073;0061 002F 0073;
@@ -16155,18 +16163,42 @@
 1F12C;1F12C;1F12C;0052;0052;
 1F12D;1F12D;1F12D;0043 0044;0043 0044;
 1F12E;1F12E;1F12E;0057 005A;0057 005A;
+1F130;1F130;1F130;0041;0041;
 1F131;1F131;1F131;0042;0042;
+1F132;1F132;1F132;0043;0043;
+1F133;1F133;1F133;0044;0044;
+1F134;1F134;1F134;0045;0045;
+1F135;1F135;1F135;0046;0046;
+1F136;1F136;1F136;0047;0047;
+1F137;1F137;1F137;0048;0048;
+1F138;1F138;1F138;0049;0049;
+1F139;1F139;1F139;004A;004A;
+1F13A;1F13A;1F13A;004B;004B;
+1F13B;1F13B;1F13B;004C;004C;
+1F13C;1F13C;1F13C;004D;004D;
 1F13D;1F13D;1F13D;004E;004E;
+1F13E;1F13E;1F13E;004F;004F;
 1F13F;1F13F;1F13F;0050;0050;
+1F140;1F140;1F140;0051;0051;
+1F141;1F141;1F141;0052;0052;
 1F142;1F142;1F142;0053;0053;
+1F143;1F143;1F143;0054;0054;
+1F144;1F144;1F144;0055;0055;
+1F145;1F145;1F145;0056;0056;
 1F146;1F146;1F146;0057;0057;
+1F147;1F147;1F147;0058;0058;
+1F148;1F148;1F148;0059;0059;
+1F149;1F149;1F149;005A;005A;
 1F14A;1F14A;1F14A;0048 0056;0048 0056;
 1F14B;1F14B;1F14B;004D 0056;004D 0056;
 1F14C;1F14C;1F14C;0053 0044;0053 0044;
 1F14D;1F14D;1F14D;0053 0053;0053 0053;
 1F14E;1F14E;1F14E;0050 0050 0056;0050 0050 0056;
+1F14F;1F14F;1F14F;0057 0043;0057 0043;
 1F190;1F190;1F190;0044 004A;0044 004A;
 1F200;1F200;1F200;307B 304B;307B 304B;
+1F201;1F201;1F201;30B3 30B3;30B3 30B3;
+1F202;1F202;1F202;30B5;30B5;
 1F210;1F210;1F210;624B;624B;
 1F211;1F211;1F211;5B57;5B57;
 1F212;1F212;1F212;53CC;53CC;
@@ -16201,6 +16233,15 @@
 1F22F;1F22F;1F22F;6307;6307;
 1F230;1F230;1F230;8D70;8D70;
 1F231;1F231;1F231;6253;6253;
+1F232;1F232;1F232;7981;7981;
+1F233;1F233;1F233;7A7A;7A7A;
+1F234;1F234;1F234;5408;5408;
+1F235;1F235;1F235;6E80;6E80;
+1F236;1F236;1F236;6709;6709;
+1F237;1F237;1F237;6708;6708;
+1F238;1F238;1F238;7533;7533;
+1F239;1F239;1F239;5272;5272;
+1F23A;1F23A;1F23A;55B6;55B6;
 1F240;1F240;1F240;3014 672C 3015;3014 672C 3015;
 1F241;1F241;1F241;3014 4E09 3015;3014 4E09 3015;
 1F242;1F242;1F242;3014 4E8C 3015;3014 4E8C 3015;
@@ -16210,6 +16251,8 @@
 1F246;1F246;1F246;3014 76D7 3015;3014 76D7 3015;
 1F247;1F247;1F247;3014 52DD 3015;3014 52DD 3015;
 1F248;1F248;1F248;3014 6557 3015;3014 6557 3015;
+1F250;1F250;1F250;5F97;5F97;
+1F251;1F251;1F251;53EF;53EF;
 2F800;4E3D;4E3D;4E3D;4E3D;
 2F801;4E38;4E38;4E38;4E38;
 2F802;4E41;4E41;4E41;4E41;
@@ -17151,6 +17194,8 @@
 0061 065D 0315 0300 05AE 0062;0061 05AE 065D 0300 0315 0062;0061 05AE 065D 0300 0315 0062;0061 05AE 065D 0300 0315 0062;0061 05AE 065D 0300 0315 0062;
 0061 0315 0300 05AE 065E 0062;00E0 05AE 065E 0315 0062;0061 05AE 0300 065E 0315 0062;00E0 05AE 065E 0315 0062;0061 05AE 0300 065E 0315 0062;
 0061 065E 0315 0300 05AE 0062;0061 05AE 065E 0300 0315 0062;0061 05AE 065E 0300 0315 0062;0061 05AE 065E 0300 0315 0062;0061 05AE 065E 0300 0315 0062;
+0061 059A 0316 302A 065F 0062;0061 302A 0316 065F 059A 0062;0061 302A 0316 065F 059A 0062;0061 302A 0316 065F 059A 0062;0061 302A 0316 065F 059A 0062;
+0061 065F 059A 0316 302A 0062;0061 302A 065F 0316 059A 0062;0061 302A 065F 0316 059A 0062;0061 302A 065F 0316 059A 0062;0061 302A 065F 0316 059A 0062;
 0061 0711 0670 0652 0670 0062;0061 0652 0670 0670 0711 0062;0061 0652 0670 0670 0711 0062;0061 0652 0670 0670 0711 0062;0061 0652 0670 0670 0711 0062;
 0061 0670 0711 0670 0652 0062;0061 0652 0670 0670 0711 0062;0061 0652 0670 0670 0711 0062;0061 0652 0670 0670 0711 0062;0061 0652 0670 0670 0711 0062;
 0061 0315 0300 05AE 06D6 0062;00E0 05AE 06D6 0315 0062;0061 05AE 0300 06D6 0315 0062;00E0 05AE 06D6 0315 0062;0061 05AE 0300 06D6 0315 0062;
@@ -17307,6 +17352,12 @@
 0061 082C 0315 0300 05AE 0062;0061 05AE 082C 0300 0315 0062;0061 05AE 082C 0300 0315 0062;0061 05AE 082C 0300 0315 0062;0061 05AE 082C 0300 0315 0062;
 0061 0315 0300 05AE 082D 0062;00E0 05AE 082D 0315 0062;0061 05AE 0300 082D 0315 0062;00E0 05AE 082D 0315 0062;0061 05AE 0300 082D 0315 0062;
 0061 082D 0315 0300 05AE 0062;0061 05AE 082D 0300 0315 0062;0061 05AE 082D 0300 0315 0062;0061 05AE 082D 0300 0315 0062;0061 05AE 082D 0300 0315 0062;
+0061 059A 0316 302A 0859 0062;0061 302A 0316 0859 059A 0062;0061 302A 0316 0859 059A 0062;0061 302A 0316 0859 059A 0062;0061 302A 0316 0859 059A 0062;
+0061 0859 059A 0316 302A 0062;0061 302A 0859 0316 059A 0062;0061 302A 0859 0316 059A 0062;0061 302A 0859 0316 059A 0062;0061 302A 0859 0316 059A 0062;
+0061 059A 0316 302A 085A 0062;0061 302A 0316 085A 059A 0062;0061 302A 0316 085A 059A 0062;0061 302A 0316 085A 059A 0062;0061 302A 0316 085A 059A 0062;
+0061 085A 059A 0316 302A 0062;0061 302A 085A 0316 059A 0062;0061 302A 085A 0316 059A 0062;0061 302A 085A 0316 059A 0062;0061 302A 085A 0316 059A 0062;
+0061 059A 0316 302A 085B 0062;0061 302A 0316 085B 059A 0062;0061 302A 0316 085B 059A 0062;0061 302A 0316 085B 059A 0062;0061 302A 0316 085B 059A 0062;
+0061 085B 059A 0316 302A 0062;0061 302A 085B 0316 059A 0062;0061 302A 085B 0316 059A 0062;0061 302A 085B 0316 059A 0062;0061 302A 085B 0316 059A 0062;
 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;
 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;
 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;
@@ -17423,6 +17474,10 @@
 0061 103A 05B0 094D 3099 0062;0061 3099 103A 094D 05B0 0062;0061 3099 103A 094D 05B0 0062;0061 3099 103A 094D 05B0 0062;0061 3099 103A 094D 05B0 0062;
 0061 059A 0316 302A 108D 0062;0061 302A 0316 108D 059A 0062;0061 302A 0316 108D 059A 0062;0061 302A 0316 108D 059A 0062;0061 302A 0316 108D 059A 0062;
 0061 108D 059A 0316 302A 0062;0061 302A 108D 0316 059A 0062;0061 302A 108D 0316 059A 0062;0061 302A 108D 0316 059A 0062;0061 302A 108D 0316 059A 0062;
+0061 0315 0300 05AE 135D 0062;00E0 05AE 135D 0315 0062;0061 05AE 0300 135D 0315 0062;00E0 05AE 135D 0315 0062;0061 05AE 0300 135D 0315 0062;
+0061 135D 0315 0300 05AE 0062;0061 05AE 135D 0300 0315 0062;0061 05AE 135D 0300 0315 0062;0061 05AE 135D 0300 0315 0062;0061 05AE 135D 0300 0315 0062;
+0061 0315 0300 05AE 135E 0062;00E0 05AE 135E 0315 0062;0061 05AE 0300 135E 0315 0062;00E0 05AE 135E 0315 0062;0061 05AE 0300 135E 0315 0062;
+0061 135E 0315 0300 05AE 0062;0061 05AE 135E 0300 0315 0062;0061 05AE 135E 0300 0315 0062;0061 05AE 135E 0300 0315 0062;0061 05AE 135E 0300 0315 0062;
 0061 0315 0300 05AE 135F 0062;00E0 05AE 135F 0315 0062;0061 05AE 0300 135F 0315 0062;00E0 05AE 135F 0315 0062;0061 05AE 0300 135F 0315 0062;
 0061 135F 0315 0300 05AE 0062;0061 05AE 135F 0300 0315 0062;0061 05AE 135F 0300 0315 0062;0061 05AE 135F 0300 0315 0062;0061 05AE 135F 0300 0315 0062;
 0061 05B0 094D 3099 1714 0062;0061 3099 094D 1714 05B0 0062;0061 3099 094D 1714 05B0 0062;0061 3099 094D 1714 05B0 0062;0061 3099 094D 1714 05B0 0062;
@@ -17489,6 +17544,12 @@
 0061 1B73 0315 0300 05AE 0062;0061 05AE 1B73 0300 0315 0062;0061 05AE 1B73 0300 0315 0062;0061 05AE 1B73 0300 0315 0062;0061 05AE 1B73 0300 0315 0062;
 0061 05B0 094D 3099 1BAA 0062;0061 3099 094D 1BAA 05B0 0062;0061 3099 094D 1BAA 05B0 0062;0061 3099 094D 1BAA 05B0 0062;0061 3099 094D 1BAA 05B0 0062;
 0061 1BAA 05B0 094D 3099 0062;0061 3099 1BAA 094D 05B0 0062;0061 3099 1BAA 094D 05B0 0062;0061 3099 1BAA 094D 05B0 0062;0061 3099 1BAA 094D 05B0 0062;
+0061 3099 093C 0334 1BE6 0062;0061 0334 093C 1BE6 3099 0062;0061 0334 093C 1BE6 3099 0062;0061 0334 093C 1BE6 3099 0062;0061 0334 093C 1BE6 3099 0062;
+0061 1BE6 3099 093C 0334 0062;0061 0334 1BE6 093C 3099 0062;0061 0334 1BE6 093C 3099 0062;0061 0334 1BE6 093C 3099 0062;0061 0334 1BE6 093C 3099 0062;
+0061 05B0 094D 3099 1BF2 0062;0061 3099 094D 1BF2 05B0 0062;0061 3099 094D 1BF2 05B0 0062;0061 3099 094D 1BF2 05B0 0062;0061 3099 094D 1BF2 05B0 0062;
+0061 1BF2 05B0 094D 3099 0062;0061 3099 1BF2 094D 05B0 0062;0061 3099 1BF2 094D 05B0 0062;0061 3099 1BF2 094D 05B0 0062;0061 3099 1BF2 094D 05B0 0062;
+0061 05B0 094D 3099 1BF3 0062;0061 3099 094D 1BF3 05B0 0062;0061 3099 094D 1BF3 05B0 0062;0061 3099 094D 1BF3 05B0 0062;0061 3099 094D 1BF3 05B0 0062;
+0061 1BF3 05B0 094D 3099 0062;0061 3099 1BF3 094D 05B0 0062;0061 3099 1BF3 094D 05B0 0062;0061 3099 1BF3 094D 05B0 0062;0061 3099 1BF3 094D 05B0 0062;
 0061 3099 093C 0334 1C37 0062;0061 0334 093C 1C37 3099 0062;0061 0334 093C 1C37 3099 0062;0061 0334 093C 1C37 3099 0062;0061 0334 093C 1C37 3099 0062;
 0061 1C37 3099 093C 0334 0062;0061 0334 1C37 093C 3099 0062;0061 0334 1C37 093C 3099 0062;0061 0334 1C37 093C 3099 0062;0061 0334 1C37 093C 3099 0062;
 0061 0315 0300 05AE 1CD0 0062;00E0 05AE 1CD0 0315 0062;0061 05AE 0300 1CD0 0315 0062;00E0 05AE 1CD0 0315 0062;0061 05AE 0300 1CD0 0315 0062;
@@ -17617,6 +17678,8 @@
 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;
 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;
 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;
+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;
+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;
 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;
 0061 1DFD 059A 0316 302A 0062;0061 302A 1DFD 0316 059A 0062;0061 302A 1DFD 0316 059A 0062;0061 302A 1DFD 0316 059A 0062;0061 302A 1DFD 0316 059A 0062;
 0061 0315 0300 05AE 1DFE 0062;00E0 05AE 1DFE 0315 0062;0061 05AE 0300 1DFE 0315 0062;00E0 05AE 1DFE 0315 0062;0061 05AE 0300 1DFE 0315 0062;
@@ -17681,6 +17744,8 @@
 0061 2CF0 0315 0300 05AE 0062;0061 05AE 2CF0 0300 0315 0062;0061 05AE 2CF0 0300 0315 0062;0061 05AE 2CF0 0300 0315 0062;0061 05AE 2CF0 0300 0315 0062;
 0061 0315 0300 05AE 2CF1 0062;00E0 05AE 2CF1 0315 0062;0061 05AE 0300 2CF1 0315 0062;00E0 05AE 2CF1 0315 0062;0061 05AE 0300 2CF1 0315 0062;
 0061 2CF1 0315 0300 05AE 0062;0061 05AE 2CF1 0300 0315 0062;0061 05AE 2CF1 0300 0315 0062;0061 05AE 2CF1 0300 0315 0062;0061 05AE 2CF1 0300 0315 0062;
+0061 05B0 094D 3099 2D7F 0062;0061 3099 094D 2D7F 05B0 0062;0061 3099 094D 2D7F 05B0 0062;0061 3099 094D 2D7F 05B0 0062;0061 3099 094D 2D7F 05B0 0062;
+0061 2D7F 05B0 094D 3099 0062;0061 3099 2D7F 094D 05B0 0062;0061 3099 2D7F 094D 05B0 0062;0061 3099 2D7F 094D 05B0 0062;0061 3099 2D7F 094D 05B0 0062;
 0061 0315 0300 05AE 2DE0 0062;00E0 05AE 2DE0 0315 0062;0061 05AE 0300 2DE0 0315 0062;00E0 05AE 2DE0 0315 0062;0061 05AE 0300 2DE0 0315 0062;
 0061 2DE0 0315 0300 05AE 0062;0061 05AE 2DE0 0300 0315 0062;0061 05AE 2DE0 0300 0315 0062;0061 05AE 2DE0 0300 0315 0062;0061 05AE 2DE0 0300 0315 0062;
 0061 0315 0300 05AE 2DE1 0062;00E0 05AE 2DE1 0315 0062;0061 05AE 0300 2DE1 0315 0062;00E0 05AE 2DE1 0315 0062;0061 05AE 0300 2DE1 0315 0062;
@@ -17873,6 +17938,8 @@
 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;
 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;
 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;
+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;
+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;
 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;
 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;
 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/tests/uniwidth/test-uc_width2.sh
+++ b/tests/uniwidth/test-uc_width2.sh
@@ -32,11 +32,13 @@
 0604..060F	A
 0610..061A	0
 061B..064A	A
-064B..065E	0
-065F..066F	A
+064B..065F	0
+0660..066F	A
 0670		0
 0671..06D5	A
-06D6..06E4	0
+06D6..06DD	0
+06DE		A
+06DF..06E4	0
 06E5..06E6	A
 06E7..06E8	0
 06E9		A
@@ -59,17 +61,21 @@
 0825..0827	0
 0828		A
 0829..082D	0
-082E..08FF	A
+082E..0858	A
+0859..085B	0
+085C..08FF	A
 0900..0902	0
-0903..093B	A
+0903..0939	A
+093A		0
+093B		A
 093C		0
 093D..0940	A
 0941..0948	0
 0949..094C	A
 094D		0
 094E..0950	A
-0951..0955	0
-0956..0961	A
+0951..0957	0
+0958..0961	A
 0962..0963	0
 0964..0980	A
 0981		0
@@ -185,8 +191,8 @@
 0F80..0F84	0
 0F85		A
 0F86..0F87	0
-0F88..0F8F	A
-0F90..0F97	0
+0F88..0F8C	A
+0F8D..0F97	0
 0F98		A
 0F99..0FBC	0
 0FBD..0FC5	A
@@ -215,8 +221,8 @@
 109D		0
 109E..10FF	A
 1100..115F	2
-1160..135E	A
-135F		0
+1160..135C	A
+135D..135F	0
 1360..1711	A
 1712..1714	0
 1715..1731	A
@@ -281,7 +287,15 @@
 1BA2..1BA5	0
 1BA6..1BA7	A
 1BA8..1BA9	0
-1BAA..1C2B	A
+1BAA..1BE5	A
+1BE6		0
+1BE7		A
+1BE8..1BE9	0
+1BEA..1BEC	A
+1BED		0
+1BEE		A
+1BEF..1BF1	0
+1BF2..1C2B	A
 1C2C..1C33	0
 1C34..1C35	A
 1C36..1C37	0
@@ -295,8 +309,8 @@
 1CED		0
 1CEE..1DBF	A
 1DC0..1DE6	0
-1DE7..1DFC	A
-1DFD..1DFF	0
+1DE7..1DFB	A
+1DFC..1DFF	0
 1E00..200A	A
 200B..200F	0
 2010..2029	A
@@ -313,7 +327,9 @@
 2329..232A	2
 232B..2CEE	A
 2CEF..2CF1	0
-2CF2..2DDF	A
+2CF2..2D7E	A
+2D7F		0
+2D80..2DDF	A
 2DE0..2DFF	0
 2E00..2E7F	A
 2E80..3029	2
@@ -412,7 +428,11 @@
 10A38..10A3A	0
 10A3B..10A3E	1
 10A3F		0
-10A40..1107F	1
+10A40..11000	1
+11001		0
+11002..11037	1
+11038..11046	0
+11047..1107F	1
 11080..11081	0
 11082..110B2	1
 110B3..110B6	0
@@ -431,10 +451,8 @@
 1D1AE..1D241	1
 1D242..1D244	0
 1D245..1FFFF	1
-20000..2FFFD	2
-2FFFE..2FFFF	1
-30000..3FFFD	2
-3FFFE..E0000	1
+20000..3FFFF	2
+40000..E0000	1
 E0001		0
 E0002..E001F	1
 E0020..E007F	0