From 5a6e55c1886acd86b0deaa9d1d343471f61d3ded Mon Sep 17 00:00:00 2001 From: Bruno Haible Date: Tue, 13 Nov 2007 00:15:53 +0100 Subject: [PATCH] Unicode character classification functions. --- ChangeLog | 475 ++ lib/unictype.h | 714 +++ lib/unictype/3level.h | 327 ++ lib/unictype/3levelbit.h | 317 ++ lib/unictype/Makefile | 20 + lib/unictype/bidi_byname.c | 171 + lib/unictype/bidi_name.c | 35 + lib/unictype/bidi_of.c | 52 + lib/unictype/bidi_of.h | 734 +++ lib/unictype/bidi_test.c | 27 + lib/unictype/bitmap.h | 47 + lib/unictype/block_test.c | 31 + lib/unictype/blocks.c | 62 + lib/unictype/blocks.h | 935 ++++ lib/unictype/categ_C.c | 27 + lib/unictype/categ_C.h | 882 ++++ lib/unictype/categ_Cc.c | 27 + lib/unictype/categ_Cc.h | 156 + lib/unictype/categ_Cf.c | 27 + lib/unictype/categ_Cf.h | 452 ++ lib/unictype/categ_Cn.c | 27 + lib/unictype/categ_Cn.h | 1006 ++++ lib/unictype/categ_Co.c | 27 + lib/unictype/categ_Co.h | 310 ++ lib/unictype/categ_Cs.c | 30 + lib/unictype/categ_Cs.h | 156 + lib/unictype/categ_L.c | 27 + lib/unictype/categ_L.h | 572 +++ lib/unictype/categ_Ll.c | 27 + lib/unictype/categ_Ll.h | 331 ++ lib/unictype/categ_Lm.c | 27 + lib/unictype/categ_Lm.h | 208 + lib/unictype/categ_Lo.c | 27 + lib/unictype/categ_Lo.h | 556 +++ lib/unictype/categ_Lt.c | 27 + lib/unictype/categ_Lt.h | 160 + lib/unictype/categ_Lu.c | 27 + lib/unictype/categ_Lu.h | 327 ++ lib/unictype/categ_M.c | 27 + lib/unictype/categ_M.h | 512 ++ lib/unictype/categ_Mc.c | 27 + lib/unictype/categ_Mc.h | 323 ++ lib/unictype/categ_Me.c | 27 + lib/unictype/categ_Me.h | 164 + lib/unictype/categ_Mn.c | 27 + lib/unictype/categ_Mn.h | 512 ++ lib/unictype/categ_N.c | 27 + lib/unictype/categ_N.h | 387 ++ lib/unictype/categ_Nd.c | 27 + lib/unictype/categ_Nd.h | 335 ++ lib/unictype/categ_Nl.c | 27 + lib/unictype/categ_Nl.h | 307 ++ lib/unictype/categ_No.c | 27 + lib/unictype/categ_No.h | 351 ++ lib/unictype/categ_P.c | 27 + lib/unictype/categ_P.h | 391 ++ lib/unictype/categ_Pc.c | 27 + lib/unictype/categ_Pc.h | 164 + lib/unictype/categ_Pd.c | 27 + lib/unictype/categ_Pd.h | 180 + lib/unictype/categ_Pe.c | 27 + lib/unictype/categ_Pe.h | 192 + lib/unictype/categ_Pf.c | 27 + lib/unictype/categ_Pf.h | 164 + lib/unictype/categ_Pi.c | 27 + lib/unictype/categ_Pi.h | 164 + lib/unictype/categ_Po.c | 27 + lib/unictype/categ_Po.h | 375 ++ lib/unictype/categ_Ps.c | 27 + lib/unictype/categ_Ps.h | 192 + lib/unictype/categ_S.c | 27 + lib/unictype/categ_S.h | 419 ++ lib/unictype/categ_Sc.c | 27 + lib/unictype/categ_Sc.h | 188 + lib/unictype/categ_Sk.c | 27 + lib/unictype/categ_Sk.h | 176 + lib/unictype/categ_Sm.c | 27 + lib/unictype/categ_Sm.h | 327 ++ lib/unictype/categ_So.c | 27 + lib/unictype/categ_So.h | 395 ++ lib/unictype/categ_Z.c | 27 + lib/unictype/categ_Z.h | 172 + lib/unictype/categ_Zl.c | 30 + lib/unictype/categ_Zl.h | 156 + lib/unictype/categ_Zp.c | 30 + lib/unictype/categ_Zp.h | 156 + lib/unictype/categ_Zs.c | 27 + lib/unictype/categ_Zs.h | 172 + lib/unictype/categ_and.c | 45 + lib/unictype/categ_and_not.c | 42 + lib/unictype/categ_byname.c | 105 + lib/unictype/categ_name.c | 77 + lib/unictype/categ_none.c | 30 + lib/unictype/categ_of.c | 81 + lib/unictype/categ_of.h | 1033 ++++ lib/unictype/categ_or.c | 42 + lib/unictype/categ_test.c | 32 + lib/unictype/combining.c | 47 + lib/unictype/combining.h | 711 +++ lib/unictype/ctype_alnum.c | 32 + lib/unictype/ctype_alnum.h | 580 +++ lib/unictype/ctype_alpha.c | 32 + lib/unictype/ctype_alpha.h | 580 +++ lib/unictype/ctype_blank.c | 32 + lib/unictype/ctype_blank.h | 172 + lib/unictype/ctype_cntrl.c | 32 + lib/unictype/ctype_cntrl.h | 160 + lib/unictype/ctype_digit.c | 32 + lib/unictype/ctype_digit.h | 156 + lib/unictype/ctype_graph.c | 32 + lib/unictype/ctype_graph.h | 882 ++++ lib/unictype/ctype_lower.c | 32 + lib/unictype/ctype_lower.h | 323 ++ lib/unictype/ctype_print.c | 32 + lib/unictype/ctype_print.h | 882 ++++ lib/unictype/ctype_punct.c | 32 + lib/unictype/ctype_punct.h | 726 +++ lib/unictype/ctype_space.c | 32 + lib/unictype/ctype_space.h | 172 + lib/unictype/ctype_upper.c | 32 + lib/unictype/ctype_upper.h | 323 ++ lib/unictype/ctype_xdigit.c | 32 + lib/unictype/ctype_xdigit.h | 156 + lib/unictype/decdigit.c | 49 + lib/unictype/decdigit.h | 231 + lib/unictype/digit.c | 49 + lib/unictype/digit.h | 303 ++ lib/unictype/gen-ctype.c | 5135 ++++++++++++++++++++ lib/unictype/identsyntaxmap.h | 42 + lib/unictype/mirror.c | 49 + lib/unictype/mirror.h | 503 ++ lib/unictype/numeric.c | 55 + lib/unictype/numeric.h | 528 ++ lib/unictype/pr_alphabetic.c | 35 + lib/unictype/pr_alphabetic.h | 580 +++ lib/unictype/pr_ascii_hex_digit.c | 35 + lib/unictype/pr_ascii_hex_digit.h | 156 + lib/unictype/pr_bidi_arabic_digit.c | 47 + lib/unictype/pr_bidi_arabic_digit.h | 156 + lib/unictype/pr_bidi_arabic_right_to_left.c | 47 + lib/unictype/pr_bidi_arabic_right_to_left.h | 172 + lib/unictype/pr_bidi_block_separator.c | 47 + lib/unictype/pr_bidi_block_separator.h | 160 + lib/unictype/pr_bidi_boundary_neutral.c | 47 + lib/unictype/pr_bidi_boundary_neutral.h | 590 +++ lib/unictype/pr_bidi_common_separator.c | 47 + lib/unictype/pr_bidi_common_separator.h | 168 + lib/unictype/pr_bidi_control.c | 35 + lib/unictype/pr_bidi_control.h | 156 + lib/unictype/pr_bidi_embedding_or_override.c | 49 + lib/unictype/pr_bidi_embedding_or_override.h | 156 + lib/unictype/pr_bidi_eur_num_separator.c | 47 + lib/unictype/pr_bidi_eur_num_separator.h | 172 + lib/unictype/pr_bidi_eur_num_terminator.c | 47 + lib/unictype/pr_bidi_eur_num_terminator.h | 188 + lib/unictype/pr_bidi_european_digit.c | 47 + lib/unictype/pr_bidi_european_digit.h | 307 ++ lib/unictype/pr_bidi_hebrew_right_to_left.c | 47 + lib/unictype/pr_bidi_hebrew_right_to_left.h | 315 ++ lib/unictype/pr_bidi_left_to_right.c | 47 + lib/unictype/pr_bidi_left_to_right.h | 698 +++ lib/unictype/pr_bidi_non_spacing_mark.c | 47 + lib/unictype/pr_bidi_non_spacing_mark.h | 512 ++ lib/unictype/pr_bidi_other_neutral.c | 47 + lib/unictype/pr_bidi_other_neutral.h | 403 ++ lib/unictype/pr_bidi_pdf.c | 47 + lib/unictype/pr_bidi_pdf.h | 156 + lib/unictype/pr_bidi_segment_separator.c | 47 + lib/unictype/pr_bidi_segment_separator.h | 156 + lib/unictype/pr_bidi_whitespace.c | 47 + lib/unictype/pr_bidi_whitespace.h | 172 + lib/unictype/pr_byname.c | 59 + lib/unictype/pr_byname.gperf | 89 + lib/unictype/pr_combining.c | 35 + lib/unictype/pr_combining.h | 512 ++ lib/unictype/pr_composite.c | 35 + lib/unictype/pr_composite.h | 375 ++ lib/unictype/pr_currency_symbol.c | 47 + lib/unictype/pr_currency_symbol.h | 188 + lib/unictype/pr_dash.c | 35 + lib/unictype/pr_dash.h | 184 + lib/unictype/pr_decimal_digit.c | 47 + lib/unictype/pr_decimal_digit.h | 335 ++ lib/unictype/pr_default_ignorable_code_point.c | 35 + lib/unictype/pr_default_ignorable_code_point.h | 606 +++ lib/unictype/pr_deprecated.c | 35 + lib/unictype/pr_deprecated.h | 164 + lib/unictype/pr_diacritic.c | 35 + lib/unictype/pr_diacritic.h | 359 ++ lib/unictype/pr_extender.c | 35 + lib/unictype/pr_extender.h | 184 + lib/unictype/pr_format_control.c | 35 + lib/unictype/pr_format_control.h | 444 ++ lib/unictype/pr_grapheme_base.c | 35 + lib/unictype/pr_grapheme_base.h | 608 +++ lib/unictype/pr_grapheme_extend.c | 35 + lib/unictype/pr_grapheme_extend.h | 512 ++ lib/unictype/pr_grapheme_link.c | 35 + lib/unictype/pr_grapheme_link.h | 319 ++ lib/unictype/pr_hex_digit.c | 35 + lib/unictype/pr_hex_digit.h | 160 + lib/unictype/pr_hyphen.c | 35 + lib/unictype/pr_hyphen.h | 180 + lib/unictype/pr_id_continue.c | 35 + lib/unictype/pr_id_continue.h | 728 +++ lib/unictype/pr_id_start.c | 35 + lib/unictype/pr_id_start.h | 576 +++ lib/unictype/pr_ideographic.c | 35 + lib/unictype/pr_ideographic.h | 316 ++ lib/unictype/pr_ids_binary_operator.c | 35 + lib/unictype/pr_ids_binary_operator.h | 156 + lib/unictype/pr_ids_trinary_operator.c | 35 + lib/unictype/pr_ids_trinary_operator.h | 156 + lib/unictype/pr_ignorable_control.c | 35 + lib/unictype/pr_ignorable_control.h | 452 ++ lib/unictype/pr_iso_control.c | 47 + lib/unictype/pr_iso_control.h | 156 + lib/unictype/pr_join_control.c | 47 + lib/unictype/pr_join_control.h | 156 + lib/unictype/pr_left_of_pair.c | 35 + lib/unictype/pr_left_of_pair.h | 184 + lib/unictype/pr_line_separator.c | 55 + lib/unictype/pr_line_separator.h | 156 + lib/unictype/pr_logical_order_exception.c | 35 + lib/unictype/pr_logical_order_exception.h | 156 + lib/unictype/pr_lowercase.c | 35 + lib/unictype/pr_lowercase.h | 335 ++ lib/unictype/pr_math.c | 35 + lib/unictype/pr_math.h | 331 ++ lib/unictype/pr_non_break.c | 35 + lib/unictype/pr_non_break.h | 172 + lib/unictype/pr_not_a_character.c | 35 + lib/unictype/pr_not_a_character.h | 306 ++ lib/unictype/pr_numeric.c | 35 + lib/unictype/pr_numeric.h | 387 ++ lib/unictype/pr_other_alphabetic.c | 35 + lib/unictype/pr_other_alphabetic.h | 347 ++ .../pr_other_default_ignorable_code_point.c | 35 + .../pr_other_default_ignorable_code_point.h | 324 ++ lib/unictype/pr_other_grapheme_extend.c | 35 + lib/unictype/pr_other_grapheme_extend.h | 303 ++ lib/unictype/pr_other_id_continue.c | 35 + lib/unictype/pr_other_id_continue.h | 156 + lib/unictype/pr_other_id_start.c | 35 + lib/unictype/pr_other_id_start.h | 160 + lib/unictype/pr_other_lowercase.c | 35 + lib/unictype/pr_other_lowercase.h | 168 + lib/unictype/pr_other_math.c | 35 + lib/unictype/pr_other_math.h | 319 ++ lib/unictype/pr_other_uppercase.c | 35 + lib/unictype/pr_other_uppercase.h | 160 + lib/unictype/pr_paired_punctuation.c | 35 + lib/unictype/pr_paired_punctuation.h | 184 + lib/unictype/pr_paragraph_separator.c | 55 + lib/unictype/pr_paragraph_separator.h | 156 + lib/unictype/pr_pattern_syntax.c | 35 + lib/unictype/pr_pattern_syntax.h | 188 + lib/unictype/pr_pattern_white_space.c | 35 + lib/unictype/pr_pattern_white_space.h | 160 + lib/unictype/pr_private_use.c | 49 + lib/unictype/pr_private_use.h | 310 ++ lib/unictype/pr_punctuation.c | 47 + lib/unictype/pr_punctuation.h | 391 ++ lib/unictype/pr_quotation_mark.c | 35 + lib/unictype/pr_quotation_mark.h | 168 + lib/unictype/pr_radical.c | 35 + lib/unictype/pr_radical.h | 156 + lib/unictype/pr_sentence_terminal.c | 35 + lib/unictype/pr_sentence_terminal.h | 204 + lib/unictype/pr_soft_dotted.c | 35 + lib/unictype/pr_soft_dotted.h | 315 ++ lib/unictype/pr_space.c | 47 + lib/unictype/pr_space.h | 172 + lib/unictype/pr_terminal_punctuation.c | 35 + lib/unictype/pr_terminal_punctuation.h | 355 ++ lib/unictype/pr_test.c | 27 + lib/unictype/pr_titlecase.c | 47 + lib/unictype/pr_titlecase.h | 160 + lib/unictype/pr_unassigned_code_value.c | 35 + lib/unictype/pr_unassigned_code_value.h | 876 ++++ lib/unictype/pr_unified_ideograph.c | 35 + lib/unictype/pr_unified_ideograph.h | 304 ++ lib/unictype/pr_uppercase.c | 35 + lib/unictype/pr_uppercase.h | 331 ++ lib/unictype/pr_variation_selector.c | 35 + lib/unictype/pr_variation_selector.h | 308 ++ lib/unictype/pr_white_space.c | 35 + lib/unictype/pr_white_space.h | 172 + lib/unictype/pr_xid_continue.c | 35 + lib/unictype/pr_xid_continue.h | 728 +++ lib/unictype/pr_xid_start.c | 35 + lib/unictype/pr_xid_start.h | 576 +++ lib/unictype/pr_zero_width.c | 35 + lib/unictype/pr_zero_width.h | 452 ++ lib/unictype/scripts.c | 75 + lib/unictype/scripts.h | 3400 +++++++++++++ lib/unictype/scripts_byname.gperf | 78 + lib/unictype/sy_c_ident.c | 31 + lib/unictype/sy_c_ident.h | 140 + lib/unictype/sy_c_whitespace.c | 27 + lib/unictype/sy_c_whitespace.h | 156 + lib/unictype/sy_java_ident.c | 31 + lib/unictype/sy_java_ident.h | 323 ++ lib/unictype/sy_java_whitespace.c | 27 + lib/unictype/sy_java_whitespace.h | 156 + modules/unictype/base | 23 + modules/unictype/bidicategory-all | 25 + modules/unictype/bidicategory-byname | 23 + modules/unictype/bidicategory-name | 23 + modules/unictype/bidicategory-of | 24 + modules/unictype/bidicategory-test | 24 + modules/unictype/block-all | 23 + modules/unictype/block-list | 24 + modules/unictype/block-of | 22 + modules/unictype/block-test | 23 + modules/unictype/category-C | 24 + modules/unictype/category-Cc | 24 + modules/unictype/category-Cf | 24 + modules/unictype/category-Cn | 24 + modules/unictype/category-Co | 24 + modules/unictype/category-Cs | 24 + modules/unictype/category-L | 24 + modules/unictype/category-Ll | 24 + modules/unictype/category-Lm | 24 + modules/unictype/category-Lo | 24 + modules/unictype/category-Lt | 24 + modules/unictype/category-Lu | 24 + modules/unictype/category-M | 24 + modules/unictype/category-Mc | 24 + modules/unictype/category-Me | 24 + modules/unictype/category-Mn | 24 + modules/unictype/category-N | 24 + modules/unictype/category-Nd | 24 + modules/unictype/category-Nl | 24 + modules/unictype/category-No | 24 + modules/unictype/category-P | 24 + modules/unictype/category-Pc | 24 + modules/unictype/category-Pd | 24 + modules/unictype/category-Pe | 24 + modules/unictype/category-Pf | 24 + modules/unictype/category-Pi | 24 + modules/unictype/category-Po | 24 + modules/unictype/category-Ps | 24 + modules/unictype/category-S | 24 + modules/unictype/category-Sc | 24 + modules/unictype/category-Sk | 24 + modules/unictype/category-Sm | 24 + modules/unictype/category-So | 24 + modules/unictype/category-Z | 24 + modules/unictype/category-Zl | 24 + modules/unictype/category-Zp | 24 + modules/unictype/category-Zs | 24 + modules/unictype/category-all | 65 + modules/unictype/category-and | 25 + modules/unictype/category-and-not | 25 + modules/unictype/category-byname | 61 + modules/unictype/category-name | 23 + modules/unictype/category-none | 23 + modules/unictype/category-of | 25 + modules/unictype/category-or | 24 + modules/unictype/category-test | 25 + modules/unictype/category-test-withtable | 22 + modules/unictype/combining-class | 24 + modules/unictype/ctype-alnum | 26 + modules/unictype/ctype-alpha | 26 + modules/unictype/ctype-blank | 26 + modules/unictype/ctype-cntrl | 26 + modules/unictype/ctype-digit | 26 + modules/unictype/ctype-graph | 26 + modules/unictype/ctype-lower | 26 + modules/unictype/ctype-print | 26 + modules/unictype/ctype-punct | 26 + modules/unictype/ctype-space | 26 + modules/unictype/ctype-upper | 26 + modules/unictype/ctype-xdigit | 26 + modules/unictype/decimal-digit | 24 + modules/unictype/digit | 24 + modules/unictype/mirror | 24 + modules/unictype/numeric | 24 + modules/unictype/property-all | 101 + modules/unictype/property-alphabetic | 26 + modules/unictype/property-ascii-hex-digit | 26 + modules/unictype/property-bidi-arabic-digit | 27 + .../unictype/property-bidi-arabic-right-to-left | 27 + modules/unictype/property-bidi-block-separator | 27 + modules/unictype/property-bidi-boundary-neutral | 27 + modules/unictype/property-bidi-common-separator | 27 + modules/unictype/property-bidi-control | 27 + .../unictype/property-bidi-embedding-or-override | 27 + modules/unictype/property-bidi-eur-num-separator | 27 + modules/unictype/property-bidi-eur-num-terminator | 27 + modules/unictype/property-bidi-european-digit | 27 + .../unictype/property-bidi-hebrew-right-to-left | 27 + modules/unictype/property-bidi-left-to-right | 27 + modules/unictype/property-bidi-non-spacing-mark | 27 + modules/unictype/property-bidi-other-neutral | 27 + modules/unictype/property-bidi-pdf | 27 + modules/unictype/property-bidi-segment-separator | 27 + modules/unictype/property-bidi-whitespace | 27 + modules/unictype/property-byname | 112 + modules/unictype/property-combining | 26 + modules/unictype/property-composite | 26 + modules/unictype/property-currency-symbol | 28 + modules/unictype/property-dash | 26 + modules/unictype/property-decimal-digit | 28 + .../unictype/property-default-ignorable-code-point | 26 + modules/unictype/property-deprecated | 26 + modules/unictype/property-diacritic | 26 + modules/unictype/property-extender | 26 + modules/unictype/property-format-control | 26 + modules/unictype/property-grapheme-base | 26 + modules/unictype/property-grapheme-extend | 26 + modules/unictype/property-grapheme-link | 26 + modules/unictype/property-hex-digit | 26 + modules/unictype/property-hyphen | 26 + modules/unictype/property-id-continue | 26 + modules/unictype/property-id-start | 26 + modules/unictype/property-ideographic | 26 + modules/unictype/property-ids-binary-operator | 26 + modules/unictype/property-ids-trinary-operator | 26 + modules/unictype/property-ignorable-control | 26 + modules/unictype/property-iso-control | 28 + modules/unictype/property-join-control | 26 + modules/unictype/property-left-of-pair | 26 + modules/unictype/property-line-separator | 26 + modules/unictype/property-logical-order-exception | 26 + modules/unictype/property-lowercase | 26 + modules/unictype/property-math | 26 + modules/unictype/property-non-break | 26 + modules/unictype/property-not-a-character | 26 + modules/unictype/property-numeric | 26 + modules/unictype/property-other-alphabetic | 26 + .../property-other-default-ignorable-code-point | 26 + modules/unictype/property-other-grapheme-extend | 26 + modules/unictype/property-other-id-continue | 26 + modules/unictype/property-other-id-start | 26 + modules/unictype/property-other-lowercase | 26 + modules/unictype/property-other-math | 26 + modules/unictype/property-other-uppercase | 26 + modules/unictype/property-paired-punctuation | 26 + modules/unictype/property-paragraph-separator | 26 + modules/unictype/property-pattern-syntax | 26 + modules/unictype/property-pattern-white-space | 26 + modules/unictype/property-private-use | 26 + modules/unictype/property-punctuation | 28 + modules/unictype/property-quotation-mark | 26 + modules/unictype/property-radical | 26 + modules/unictype/property-sentence-terminal | 26 + modules/unictype/property-soft-dotted | 26 + modules/unictype/property-space | 28 + modules/unictype/property-terminal-punctuation | 26 + modules/unictype/property-test | 23 + modules/unictype/property-titlecase | 28 + modules/unictype/property-unassigned-code-value | 26 + modules/unictype/property-unified-ideograph | 26 + modules/unictype/property-uppercase | 26 + modules/unictype/property-variation-selector | 26 + modules/unictype/property-white-space | 26 + modules/unictype/property-xid-continue | 26 + modules/unictype/property-xid-start | 26 + modules/unictype/property-zero-width | 26 + modules/unictype/scripts | 34 + modules/unictype/scripts-all | 21 + modules/unictype/syntax-c-ident | 26 + modules/unictype/syntax-c-whitespace | 23 + modules/unictype/syntax-java-ident | 26 + modules/unictype/syntax-java-whitespace | 23 + 467 files changed, 67519 insertions(+) create mode 100644 lib/unictype.h create mode 100644 lib/unictype/3level.h create mode 100644 lib/unictype/3levelbit.h create mode 100644 lib/unictype/Makefile create mode 100644 lib/unictype/bidi_byname.c create mode 100644 lib/unictype/bidi_name.c create mode 100644 lib/unictype/bidi_of.c create mode 100644 lib/unictype/bidi_of.h create mode 100644 lib/unictype/bidi_test.c create mode 100644 lib/unictype/bitmap.h create mode 100644 lib/unictype/block_test.c create mode 100644 lib/unictype/blocks.c create mode 100644 lib/unictype/blocks.h create mode 100644 lib/unictype/categ_C.c create mode 100644 lib/unictype/categ_C.h create mode 100644 lib/unictype/categ_Cc.c create mode 100644 lib/unictype/categ_Cc.h create mode 100644 lib/unictype/categ_Cf.c create mode 100644 lib/unictype/categ_Cf.h create mode 100644 lib/unictype/categ_Cn.c create mode 100644 lib/unictype/categ_Cn.h create mode 100644 lib/unictype/categ_Co.c create mode 100644 lib/unictype/categ_Co.h create mode 100644 lib/unictype/categ_Cs.c create mode 100644 lib/unictype/categ_Cs.h create mode 100644 lib/unictype/categ_L.c create mode 100644 lib/unictype/categ_L.h create mode 100644 lib/unictype/categ_Ll.c create mode 100644 lib/unictype/categ_Ll.h create mode 100644 lib/unictype/categ_Lm.c create mode 100644 lib/unictype/categ_Lm.h create mode 100644 lib/unictype/categ_Lo.c create mode 100644 lib/unictype/categ_Lo.h create mode 100644 lib/unictype/categ_Lt.c create mode 100644 lib/unictype/categ_Lt.h create mode 100644 lib/unictype/categ_Lu.c create mode 100644 lib/unictype/categ_Lu.h create mode 100644 lib/unictype/categ_M.c create mode 100644 lib/unictype/categ_M.h create mode 100644 lib/unictype/categ_Mc.c create mode 100644 lib/unictype/categ_Mc.h create mode 100644 lib/unictype/categ_Me.c create mode 100644 lib/unictype/categ_Me.h create mode 100644 lib/unictype/categ_Mn.c create mode 100644 lib/unictype/categ_Mn.h create mode 100644 lib/unictype/categ_N.c create mode 100644 lib/unictype/categ_N.h create mode 100644 lib/unictype/categ_Nd.c create mode 100644 lib/unictype/categ_Nd.h create mode 100644 lib/unictype/categ_Nl.c create mode 100644 lib/unictype/categ_Nl.h create mode 100644 lib/unictype/categ_No.c create mode 100644 lib/unictype/categ_No.h create mode 100644 lib/unictype/categ_P.c create mode 100644 lib/unictype/categ_P.h create mode 100644 lib/unictype/categ_Pc.c create mode 100644 lib/unictype/categ_Pc.h create mode 100644 lib/unictype/categ_Pd.c create mode 100644 lib/unictype/categ_Pd.h create mode 100644 lib/unictype/categ_Pe.c create mode 100644 lib/unictype/categ_Pe.h create mode 100644 lib/unictype/categ_Pf.c create mode 100644 lib/unictype/categ_Pf.h create mode 100644 lib/unictype/categ_Pi.c create mode 100644 lib/unictype/categ_Pi.h create mode 100644 lib/unictype/categ_Po.c create mode 100644 lib/unictype/categ_Po.h create mode 100644 lib/unictype/categ_Ps.c create mode 100644 lib/unictype/categ_Ps.h create mode 100644 lib/unictype/categ_S.c create mode 100644 lib/unictype/categ_S.h create mode 100644 lib/unictype/categ_Sc.c create mode 100644 lib/unictype/categ_Sc.h create mode 100644 lib/unictype/categ_Sk.c create mode 100644 lib/unictype/categ_Sk.h create mode 100644 lib/unictype/categ_Sm.c create mode 100644 lib/unictype/categ_Sm.h create mode 100644 lib/unictype/categ_So.c create mode 100644 lib/unictype/categ_So.h create mode 100644 lib/unictype/categ_Z.c create mode 100644 lib/unictype/categ_Z.h create mode 100644 lib/unictype/categ_Zl.c create mode 100644 lib/unictype/categ_Zl.h create mode 100644 lib/unictype/categ_Zp.c create mode 100644 lib/unictype/categ_Zp.h create mode 100644 lib/unictype/categ_Zs.c create mode 100644 lib/unictype/categ_Zs.h create mode 100644 lib/unictype/categ_and.c create mode 100644 lib/unictype/categ_and_not.c create mode 100644 lib/unictype/categ_byname.c create mode 100644 lib/unictype/categ_name.c create mode 100644 lib/unictype/categ_none.c create mode 100644 lib/unictype/categ_of.c create mode 100644 lib/unictype/categ_of.h create mode 100644 lib/unictype/categ_or.c create mode 100644 lib/unictype/categ_test.c create mode 100644 lib/unictype/combining.c create mode 100644 lib/unictype/combining.h create mode 100644 lib/unictype/ctype_alnum.c create mode 100644 lib/unictype/ctype_alnum.h create mode 100644 lib/unictype/ctype_alpha.c create mode 100644 lib/unictype/ctype_alpha.h create mode 100644 lib/unictype/ctype_blank.c create mode 100644 lib/unictype/ctype_blank.h create mode 100644 lib/unictype/ctype_cntrl.c create mode 100644 lib/unictype/ctype_cntrl.h create mode 100644 lib/unictype/ctype_digit.c create mode 100644 lib/unictype/ctype_digit.h create mode 100644 lib/unictype/ctype_graph.c create mode 100644 lib/unictype/ctype_graph.h create mode 100644 lib/unictype/ctype_lower.c create mode 100644 lib/unictype/ctype_lower.h create mode 100644 lib/unictype/ctype_print.c create mode 100644 lib/unictype/ctype_print.h create mode 100644 lib/unictype/ctype_punct.c create mode 100644 lib/unictype/ctype_punct.h create mode 100644 lib/unictype/ctype_space.c create mode 100644 lib/unictype/ctype_space.h create mode 100644 lib/unictype/ctype_upper.c create mode 100644 lib/unictype/ctype_upper.h create mode 100644 lib/unictype/ctype_xdigit.c create mode 100644 lib/unictype/ctype_xdigit.h create mode 100644 lib/unictype/decdigit.c create mode 100644 lib/unictype/decdigit.h create mode 100644 lib/unictype/digit.c create mode 100644 lib/unictype/digit.h create mode 100644 lib/unictype/gen-ctype.c create mode 100644 lib/unictype/identsyntaxmap.h create mode 100644 lib/unictype/mirror.c create mode 100644 lib/unictype/mirror.h create mode 100644 lib/unictype/numeric.c create mode 100644 lib/unictype/numeric.h create mode 100644 lib/unictype/pr_alphabetic.c create mode 100644 lib/unictype/pr_alphabetic.h create mode 100644 lib/unictype/pr_ascii_hex_digit.c create mode 100644 lib/unictype/pr_ascii_hex_digit.h create mode 100644 lib/unictype/pr_bidi_arabic_digit.c create mode 100644 lib/unictype/pr_bidi_arabic_digit.h create mode 100644 lib/unictype/pr_bidi_arabic_right_to_left.c create mode 100644 lib/unictype/pr_bidi_arabic_right_to_left.h create mode 100644 lib/unictype/pr_bidi_block_separator.c create mode 100644 lib/unictype/pr_bidi_block_separator.h create mode 100644 lib/unictype/pr_bidi_boundary_neutral.c create mode 100644 lib/unictype/pr_bidi_boundary_neutral.h create mode 100644 lib/unictype/pr_bidi_common_separator.c create mode 100644 lib/unictype/pr_bidi_common_separator.h create mode 100644 lib/unictype/pr_bidi_control.c create mode 100644 lib/unictype/pr_bidi_control.h create mode 100644 lib/unictype/pr_bidi_embedding_or_override.c create mode 100644 lib/unictype/pr_bidi_embedding_or_override.h create mode 100644 lib/unictype/pr_bidi_eur_num_separator.c create mode 100644 lib/unictype/pr_bidi_eur_num_separator.h create mode 100644 lib/unictype/pr_bidi_eur_num_terminator.c create mode 100644 lib/unictype/pr_bidi_eur_num_terminator.h create mode 100644 lib/unictype/pr_bidi_european_digit.c create mode 100644 lib/unictype/pr_bidi_european_digit.h create mode 100644 lib/unictype/pr_bidi_hebrew_right_to_left.c create mode 100644 lib/unictype/pr_bidi_hebrew_right_to_left.h create mode 100644 lib/unictype/pr_bidi_left_to_right.c create mode 100644 lib/unictype/pr_bidi_left_to_right.h create mode 100644 lib/unictype/pr_bidi_non_spacing_mark.c create mode 100644 lib/unictype/pr_bidi_non_spacing_mark.h create mode 100644 lib/unictype/pr_bidi_other_neutral.c create mode 100644 lib/unictype/pr_bidi_other_neutral.h create mode 100644 lib/unictype/pr_bidi_pdf.c create mode 100644 lib/unictype/pr_bidi_pdf.h create mode 100644 lib/unictype/pr_bidi_segment_separator.c create mode 100644 lib/unictype/pr_bidi_segment_separator.h create mode 100644 lib/unictype/pr_bidi_whitespace.c create mode 100644 lib/unictype/pr_bidi_whitespace.h create mode 100644 lib/unictype/pr_byname.c create mode 100644 lib/unictype/pr_byname.gperf create mode 100644 lib/unictype/pr_combining.c create mode 100644 lib/unictype/pr_combining.h create mode 100644 lib/unictype/pr_composite.c create mode 100644 lib/unictype/pr_composite.h create mode 100644 lib/unictype/pr_currency_symbol.c create mode 100644 lib/unictype/pr_currency_symbol.h create mode 100644 lib/unictype/pr_dash.c create mode 100644 lib/unictype/pr_dash.h create mode 100644 lib/unictype/pr_decimal_digit.c create mode 100644 lib/unictype/pr_decimal_digit.h create mode 100644 lib/unictype/pr_default_ignorable_code_point.c create mode 100644 lib/unictype/pr_default_ignorable_code_point.h create mode 100644 lib/unictype/pr_deprecated.c create mode 100644 lib/unictype/pr_deprecated.h create mode 100644 lib/unictype/pr_diacritic.c create mode 100644 lib/unictype/pr_diacritic.h create mode 100644 lib/unictype/pr_extender.c create mode 100644 lib/unictype/pr_extender.h create mode 100644 lib/unictype/pr_format_control.c create mode 100644 lib/unictype/pr_format_control.h create mode 100644 lib/unictype/pr_grapheme_base.c create mode 100644 lib/unictype/pr_grapheme_base.h create mode 100644 lib/unictype/pr_grapheme_extend.c create mode 100644 lib/unictype/pr_grapheme_extend.h create mode 100644 lib/unictype/pr_grapheme_link.c create mode 100644 lib/unictype/pr_grapheme_link.h create mode 100644 lib/unictype/pr_hex_digit.c create mode 100644 lib/unictype/pr_hex_digit.h create mode 100644 lib/unictype/pr_hyphen.c create mode 100644 lib/unictype/pr_hyphen.h create mode 100644 lib/unictype/pr_id_continue.c create mode 100644 lib/unictype/pr_id_continue.h create mode 100644 lib/unictype/pr_id_start.c create mode 100644 lib/unictype/pr_id_start.h create mode 100644 lib/unictype/pr_ideographic.c create mode 100644 lib/unictype/pr_ideographic.h create mode 100644 lib/unictype/pr_ids_binary_operator.c create mode 100644 lib/unictype/pr_ids_binary_operator.h create mode 100644 lib/unictype/pr_ids_trinary_operator.c create mode 100644 lib/unictype/pr_ids_trinary_operator.h create mode 100644 lib/unictype/pr_ignorable_control.c create mode 100644 lib/unictype/pr_ignorable_control.h create mode 100644 lib/unictype/pr_iso_control.c create mode 100644 lib/unictype/pr_iso_control.h create mode 100644 lib/unictype/pr_join_control.c create mode 100644 lib/unictype/pr_join_control.h create mode 100644 lib/unictype/pr_left_of_pair.c create mode 100644 lib/unictype/pr_left_of_pair.h create mode 100644 lib/unictype/pr_line_separator.c create mode 100644 lib/unictype/pr_line_separator.h create mode 100644 lib/unictype/pr_logical_order_exception.c create mode 100644 lib/unictype/pr_logical_order_exception.h create mode 100644 lib/unictype/pr_lowercase.c create mode 100644 lib/unictype/pr_lowercase.h create mode 100644 lib/unictype/pr_math.c create mode 100644 lib/unictype/pr_math.h create mode 100644 lib/unictype/pr_non_break.c create mode 100644 lib/unictype/pr_non_break.h create mode 100644 lib/unictype/pr_not_a_character.c create mode 100644 lib/unictype/pr_not_a_character.h create mode 100644 lib/unictype/pr_numeric.c create mode 100644 lib/unictype/pr_numeric.h create mode 100644 lib/unictype/pr_other_alphabetic.c create mode 100644 lib/unictype/pr_other_alphabetic.h create mode 100644 lib/unictype/pr_other_default_ignorable_code_point.c create mode 100644 lib/unictype/pr_other_default_ignorable_code_point.h create mode 100644 lib/unictype/pr_other_grapheme_extend.c create mode 100644 lib/unictype/pr_other_grapheme_extend.h create mode 100644 lib/unictype/pr_other_id_continue.c create mode 100644 lib/unictype/pr_other_id_continue.h create mode 100644 lib/unictype/pr_other_id_start.c create mode 100644 lib/unictype/pr_other_id_start.h create mode 100644 lib/unictype/pr_other_lowercase.c create mode 100644 lib/unictype/pr_other_lowercase.h create mode 100644 lib/unictype/pr_other_math.c create mode 100644 lib/unictype/pr_other_math.h create mode 100644 lib/unictype/pr_other_uppercase.c create mode 100644 lib/unictype/pr_other_uppercase.h create mode 100644 lib/unictype/pr_paired_punctuation.c create mode 100644 lib/unictype/pr_paired_punctuation.h create mode 100644 lib/unictype/pr_paragraph_separator.c create mode 100644 lib/unictype/pr_paragraph_separator.h create mode 100644 lib/unictype/pr_pattern_syntax.c create mode 100644 lib/unictype/pr_pattern_syntax.h create mode 100644 lib/unictype/pr_pattern_white_space.c create mode 100644 lib/unictype/pr_pattern_white_space.h create mode 100644 lib/unictype/pr_private_use.c create mode 100644 lib/unictype/pr_private_use.h create mode 100644 lib/unictype/pr_punctuation.c create mode 100644 lib/unictype/pr_punctuation.h create mode 100644 lib/unictype/pr_quotation_mark.c create mode 100644 lib/unictype/pr_quotation_mark.h create mode 100644 lib/unictype/pr_radical.c create mode 100644 lib/unictype/pr_radical.h create mode 100644 lib/unictype/pr_sentence_terminal.c create mode 100644 lib/unictype/pr_sentence_terminal.h create mode 100644 lib/unictype/pr_soft_dotted.c create mode 100644 lib/unictype/pr_soft_dotted.h create mode 100644 lib/unictype/pr_space.c create mode 100644 lib/unictype/pr_space.h create mode 100644 lib/unictype/pr_terminal_punctuation.c create mode 100644 lib/unictype/pr_terminal_punctuation.h create mode 100644 lib/unictype/pr_test.c create mode 100644 lib/unictype/pr_titlecase.c create mode 100644 lib/unictype/pr_titlecase.h create mode 100644 lib/unictype/pr_unassigned_code_value.c create mode 100644 lib/unictype/pr_unassigned_code_value.h create mode 100644 lib/unictype/pr_unified_ideograph.c create mode 100644 lib/unictype/pr_unified_ideograph.h create mode 100644 lib/unictype/pr_uppercase.c create mode 100644 lib/unictype/pr_uppercase.h create mode 100644 lib/unictype/pr_variation_selector.c create mode 100644 lib/unictype/pr_variation_selector.h create mode 100644 lib/unictype/pr_white_space.c create mode 100644 lib/unictype/pr_white_space.h create mode 100644 lib/unictype/pr_xid_continue.c create mode 100644 lib/unictype/pr_xid_continue.h create mode 100644 lib/unictype/pr_xid_start.c create mode 100644 lib/unictype/pr_xid_start.h create mode 100644 lib/unictype/pr_zero_width.c create mode 100644 lib/unictype/pr_zero_width.h create mode 100644 lib/unictype/scripts.c create mode 100644 lib/unictype/scripts.h create mode 100644 lib/unictype/scripts_byname.gperf create mode 100644 lib/unictype/sy_c_ident.c create mode 100644 lib/unictype/sy_c_ident.h create mode 100644 lib/unictype/sy_c_whitespace.c create mode 100644 lib/unictype/sy_c_whitespace.h create mode 100644 lib/unictype/sy_java_ident.c create mode 100644 lib/unictype/sy_java_ident.h create mode 100644 lib/unictype/sy_java_whitespace.c create mode 100644 lib/unictype/sy_java_whitespace.h create mode 100644 modules/unictype/base create mode 100644 modules/unictype/bidicategory-all create mode 100644 modules/unictype/bidicategory-byname create mode 100644 modules/unictype/bidicategory-name create mode 100644 modules/unictype/bidicategory-of create mode 100644 modules/unictype/bidicategory-test create mode 100644 modules/unictype/block-all create mode 100644 modules/unictype/block-list create mode 100644 modules/unictype/block-of create mode 100644 modules/unictype/block-test create mode 100644 modules/unictype/category-C create mode 100644 modules/unictype/category-Cc create mode 100644 modules/unictype/category-Cf create mode 100644 modules/unictype/category-Cn create mode 100644 modules/unictype/category-Co create mode 100644 modules/unictype/category-Cs create mode 100644 modules/unictype/category-L create mode 100644 modules/unictype/category-Ll create mode 100644 modules/unictype/category-Lm create mode 100644 modules/unictype/category-Lo create mode 100644 modules/unictype/category-Lt create mode 100644 modules/unictype/category-Lu create mode 100644 modules/unictype/category-M create mode 100644 modules/unictype/category-Mc create mode 100644 modules/unictype/category-Me create mode 100644 modules/unictype/category-Mn create mode 100644 modules/unictype/category-N create mode 100644 modules/unictype/category-Nd create mode 100644 modules/unictype/category-Nl create mode 100644 modules/unictype/category-No create mode 100644 modules/unictype/category-P create mode 100644 modules/unictype/category-Pc create mode 100644 modules/unictype/category-Pd create mode 100644 modules/unictype/category-Pe create mode 100644 modules/unictype/category-Pf create mode 100644 modules/unictype/category-Pi create mode 100644 modules/unictype/category-Po create mode 100644 modules/unictype/category-Ps create mode 100644 modules/unictype/category-S create mode 100644 modules/unictype/category-Sc create mode 100644 modules/unictype/category-Sk create mode 100644 modules/unictype/category-Sm create mode 100644 modules/unictype/category-So create mode 100644 modules/unictype/category-Z create mode 100644 modules/unictype/category-Zl create mode 100644 modules/unictype/category-Zp create mode 100644 modules/unictype/category-Zs create mode 100644 modules/unictype/category-all create mode 100644 modules/unictype/category-and create mode 100644 modules/unictype/category-and-not create mode 100644 modules/unictype/category-byname create mode 100644 modules/unictype/category-name create mode 100644 modules/unictype/category-none create mode 100644 modules/unictype/category-of create mode 100644 modules/unictype/category-or create mode 100644 modules/unictype/category-test create mode 100644 modules/unictype/category-test-withtable create mode 100644 modules/unictype/combining-class create mode 100644 modules/unictype/ctype-alnum create mode 100644 modules/unictype/ctype-alpha create mode 100644 modules/unictype/ctype-blank create mode 100644 modules/unictype/ctype-cntrl create mode 100644 modules/unictype/ctype-digit create mode 100644 modules/unictype/ctype-graph create mode 100644 modules/unictype/ctype-lower create mode 100644 modules/unictype/ctype-print create mode 100644 modules/unictype/ctype-punct create mode 100644 modules/unictype/ctype-space create mode 100644 modules/unictype/ctype-upper create mode 100644 modules/unictype/ctype-xdigit create mode 100644 modules/unictype/decimal-digit create mode 100644 modules/unictype/digit create mode 100644 modules/unictype/mirror create mode 100644 modules/unictype/numeric create mode 100644 modules/unictype/property-all create mode 100644 modules/unictype/property-alphabetic create mode 100644 modules/unictype/property-ascii-hex-digit create mode 100644 modules/unictype/property-bidi-arabic-digit create mode 100644 modules/unictype/property-bidi-arabic-right-to-left create mode 100644 modules/unictype/property-bidi-block-separator create mode 100644 modules/unictype/property-bidi-boundary-neutral create mode 100644 modules/unictype/property-bidi-common-separator create mode 100644 modules/unictype/property-bidi-control create mode 100644 modules/unictype/property-bidi-embedding-or-override create mode 100644 modules/unictype/property-bidi-eur-num-separator create mode 100644 modules/unictype/property-bidi-eur-num-terminator create mode 100644 modules/unictype/property-bidi-european-digit create mode 100644 modules/unictype/property-bidi-hebrew-right-to-left create mode 100644 modules/unictype/property-bidi-left-to-right create mode 100644 modules/unictype/property-bidi-non-spacing-mark create mode 100644 modules/unictype/property-bidi-other-neutral create mode 100644 modules/unictype/property-bidi-pdf create mode 100644 modules/unictype/property-bidi-segment-separator create mode 100644 modules/unictype/property-bidi-whitespace create mode 100644 modules/unictype/property-byname create mode 100644 modules/unictype/property-combining create mode 100644 modules/unictype/property-composite create mode 100644 modules/unictype/property-currency-symbol create mode 100644 modules/unictype/property-dash create mode 100644 modules/unictype/property-decimal-digit create mode 100644 modules/unictype/property-default-ignorable-code-point create mode 100644 modules/unictype/property-deprecated create mode 100644 modules/unictype/property-diacritic create mode 100644 modules/unictype/property-extender create mode 100644 modules/unictype/property-format-control create mode 100644 modules/unictype/property-grapheme-base create mode 100644 modules/unictype/property-grapheme-extend create mode 100644 modules/unictype/property-grapheme-link create mode 100644 modules/unictype/property-hex-digit create mode 100644 modules/unictype/property-hyphen create mode 100644 modules/unictype/property-id-continue create mode 100644 modules/unictype/property-id-start create mode 100644 modules/unictype/property-ideographic create mode 100644 modules/unictype/property-ids-binary-operator create mode 100644 modules/unictype/property-ids-trinary-operator create mode 100644 modules/unictype/property-ignorable-control create mode 100644 modules/unictype/property-iso-control create mode 100644 modules/unictype/property-join-control create mode 100644 modules/unictype/property-left-of-pair create mode 100644 modules/unictype/property-line-separator create mode 100644 modules/unictype/property-logical-order-exception create mode 100644 modules/unictype/property-lowercase create mode 100644 modules/unictype/property-math create mode 100644 modules/unictype/property-non-break create mode 100644 modules/unictype/property-not-a-character create mode 100644 modules/unictype/property-numeric create mode 100644 modules/unictype/property-other-alphabetic create mode 100644 modules/unictype/property-other-default-ignorable-code-point create mode 100644 modules/unictype/property-other-grapheme-extend create mode 100644 modules/unictype/property-other-id-continue create mode 100644 modules/unictype/property-other-id-start create mode 100644 modules/unictype/property-other-lowercase create mode 100644 modules/unictype/property-other-math create mode 100644 modules/unictype/property-other-uppercase create mode 100644 modules/unictype/property-paired-punctuation create mode 100644 modules/unictype/property-paragraph-separator create mode 100644 modules/unictype/property-pattern-syntax create mode 100644 modules/unictype/property-pattern-white-space create mode 100644 modules/unictype/property-private-use create mode 100644 modules/unictype/property-punctuation create mode 100644 modules/unictype/property-quotation-mark create mode 100644 modules/unictype/property-radical create mode 100644 modules/unictype/property-sentence-terminal create mode 100644 modules/unictype/property-soft-dotted create mode 100644 modules/unictype/property-space create mode 100644 modules/unictype/property-terminal-punctuation create mode 100644 modules/unictype/property-test create mode 100644 modules/unictype/property-titlecase create mode 100644 modules/unictype/property-unassigned-code-value create mode 100644 modules/unictype/property-unified-ideograph create mode 100644 modules/unictype/property-uppercase create mode 100644 modules/unictype/property-variation-selector create mode 100644 modules/unictype/property-white-space create mode 100644 modules/unictype/property-xid-continue create mode 100644 modules/unictype/property-xid-start create mode 100644 modules/unictype/property-zero-width create mode 100644 modules/unictype/scripts create mode 100644 modules/unictype/scripts-all create mode 100644 modules/unictype/syntax-c-ident create mode 100644 modules/unictype/syntax-c-whitespace create mode 100644 modules/unictype/syntax-java-ident create mode 100644 modules/unictype/syntax-java-whitespace diff --git a/ChangeLog b/ChangeLog index 4d3ed92ee..1df3cf602 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,478 @@ +2007-11-12 Bruno Haible + + Unicode character classification functions. + * lib/unictype.h: New file. + * modules/unictype/base: New file. + * modules/unictype/category-L: New file. + * modules/unictype/category-Lu: New file. + * modules/unictype/category-Ll: New file. + * modules/unictype/category-Lt: New file. + * modules/unictype/category-Lm: New file. + * modules/unictype/category-Lo: New file. + * modules/unictype/category-M: New file. + * modules/unictype/category-Mn: New file. + * modules/unictype/category-Mc: New file. + * modules/unictype/category-Me: New file. + * modules/unictype/category-N: New file. + * modules/unictype/category-Nd: New file. + * modules/unictype/category-Nl: New file. + * modules/unictype/category-No: New file. + * modules/unictype/category-P: New file. + * modules/unictype/category-Pc: New file. + * modules/unictype/category-Pd: New file. + * modules/unictype/category-Ps: New file. + * modules/unictype/category-Pe: New file. + * modules/unictype/category-Pi: New file. + * modules/unictype/category-Pf: New file. + * modules/unictype/category-Po: New file. + * modules/unictype/category-S: New file. + * modules/unictype/category-Sm: New file. + * modules/unictype/category-Sc: New file. + * modules/unictype/category-Sk: New file. + * modules/unictype/category-So: New file. + * modules/unictype/category-Z: New file. + * modules/unictype/category-Zs: New file. + * modules/unictype/category-Zl: New file. + * modules/unictype/category-Zp: New file. + * modules/unictype/category-C: New file. + * modules/unictype/category-Cc: New file. + * modules/unictype/category-Cf: New file. + * modules/unictype/category-Cs: New file. + * modules/unictype/category-Co: New file. + * modules/unictype/category-Cn: New file. + * modules/unictype/category-or: New file. + * modules/unictype/category-of: New file. + * modules/unictype/category-test: New file. + * modules/unictype/category-test-withtable: New file. + * modules/unictype/category-byname: New file. + * modules/unictype/category-none: New file. + * modules/unictype/category-and: New file. + * modules/unictype/category-and-not: New file. + * modules/unictype/category-name: New file. + * modules/unictype/combining-class: New file. + * modules/unictype/category-all: New file. + * modules/unictype/bidicategory-all: New file. + * modules/unictype/bidicategory-byname: New file. + * modules/unictype/bidicategory-name: New file. + * modules/unictype/bidicategory-of: New file. + * modules/unictype/bidicategory-test: New file. + * modules/unictype/decimal-digit: New file. + * modules/unictype/digit: New file. + * modules/unictype/numeric: New file. + * modules/unictype/mirror: New file. + * modules/unictype/property-white-space: New file. + * modules/unictype/property-alphabetic: New file. + * modules/unictype/property-other-alphabetic: New file. + * modules/unictype/property-not-a-character: New file. + * modules/unictype/property-default-ignorable-code-point: New file. + * modules/unictype/property-other-default-ignorable-code-point: New + file. + * modules/unictype/property-deprecated: New file. + * modules/unictype/property-logical-order-exception: New file. + * modules/unictype/property-variation-selector: New file. + * modules/unictype/property-private-use: New file. + * modules/unictype/property-unassigned-code-value: New file. + * modules/unictype/property-uppercase: New file. + * modules/unictype/property-other-uppercase: New file. + * modules/unictype/property-lowercase: New file. + * modules/unictype/property-other-lowercase: New file. + * modules/unictype/property-titlecase: New file. + * modules/unictype/property-soft-dotted: New file. + * modules/unictype/property-id-start: New file. + * modules/unictype/property-other-id-start: New file. + * modules/unictype/property-id-continue: New file. + * modules/unictype/property-other-id-continue: New file. + * modules/unictype/property-xid-start: New file. + * modules/unictype/property-xid-continue: New file. + * modules/unictype/property-pattern-white-space: New file. + * modules/unictype/property-pattern-syntax: New file. + * modules/unictype/property-join-control: New file. + * modules/unictype/property-grapheme-base: New file. + * modules/unictype/property-grapheme-extend: New file. + * modules/unictype/property-other-grapheme-extend: New file. + * modules/unictype/property-grapheme-link: New file. + * modules/unictype/property-bidi-control: New file. + * modules/unictype/property-bidi-left-to-right: New file. + * modules/unictype/property-bidi-hebrew-right-to-left: New file. + * modules/unictype/property-bidi-arabic-right-to-left: New file. + * modules/unictype/property-bidi-european-digit: New file. + * modules/unictype/property-bidi-eur-num-separator: New file. + * modules/unictype/property-bidi-eur-num-terminator: New file. + * modules/unictype/property-bidi-arabic-digit: New file. + * modules/unictype/property-bidi-common-separator: New file. + * modules/unictype/property-bidi-block-separator: New file. + * modules/unictype/property-bidi-segment-separator: New file. + * modules/unictype/property-bidi-whitespace: New file. + * modules/unictype/property-bidi-non-spacing-mark: New file. + * modules/unictype/property-bidi-boundary-neutral: New file. + * modules/unictype/property-bidi-pdf: New file. + * modules/unictype/property-bidi-embedding-or-override: New file. + * modules/unictype/property-bidi-other-neutral: New file. + * modules/unictype/property-hex-digit: New file. + * modules/unictype/property-ascii-hex-digit: New file. + * modules/unictype/property-ideographic: New file. + * modules/unictype/property-unified-ideograph: New file. + * modules/unictype/property-radical: New file. + * modules/unictype/property-ids-binary-operator: New file. + * modules/unictype/property-ids-trinary-operator: New file. + * modules/unictype/property-zero-width: New file. + * modules/unictype/property-space: New file. + * modules/unictype/property-non-break: New file. + * modules/unictype/property-iso-control: New file. + * modules/unictype/property-format-control: New file. + * modules/unictype/property-dash: New file. + * modules/unictype/property-hyphen: New file. + * modules/unictype/property-punctuation: New file. + * modules/unictype/property-line-separator: New file. + * modules/unictype/property-paragraph-separator: New file. + * modules/unictype/property-quotation-mark: New file. + * modules/unictype/property-sentence-terminal: New file. + * modules/unictype/property-terminal-punctuation: New file. + * modules/unictype/property-currency-symbol: New file. + * modules/unictype/property-math: New file. + * modules/unictype/property-other-math: New file. + * modules/unictype/property-paired-punctuation: New file. + * modules/unictype/property-left-of-pair: New file. + * modules/unictype/property-combining: New file. + * modules/unictype/property-composite: New file. + * modules/unictype/property-decimal-digit: New file. + * modules/unictype/property-numeric: New file. + * modules/unictype/property-diacritic: New file. + * modules/unictype/property-extender: New file. + * modules/unictype/property-ignorable-control: New file. + * modules/unictype/property-test: New file. + * modules/unictype/property-byname: New file. + * modules/unictype/property-all: New file. + * modules/unictype/scripts: New file. + * modules/unictype/scripts-all: New file. + * modules/unictype/block-of: New file. + * modules/unictype/block-test: New file. + * modules/unictype/block-list: New file. + * modules/unictype/block-all: New file. + * modules/unictype/syntax-c-whitespace: New file. + * modules/unictype/syntax-java-whitespace: New file. + * modules/unictype/syntax-c-ident: New file. + * modules/unictype/syntax-java-ident: New file. + * modules/unictype/ctype-alnum: New file. + * modules/unictype/ctype-alpha: New file. + * modules/unictype/ctype-cntrl: New file. + * modules/unictype/ctype-digit: New file. + * modules/unictype/ctype-graph: New file. + * modules/unictype/ctype-lower: New file. + * modules/unictype/ctype-print: New file. + * modules/unictype/ctype-punct: New file. + * modules/unictype/ctype-space: New file. + * modules/unictype/ctype-upper: New file. + * modules/unictype/ctype-xdigit: New file. + * modules/unictype/ctype-blank: New file. + * lib/unictype/bidi_byname.c: New file. + * lib/unictype/bidi_name.c: New file. + * lib/unictype/bidi_of.c: New file. + * lib/unictype/bidi_test.c: New file. + * lib/unictype/bitmap.h: New file. + * lib/unictype/block_test.c: New file. + * lib/unictype/blocks.c: New file. + * lib/unictype/categ_C.c: New file. + * lib/unictype/categ_Cc.c: New file. + * lib/unictype/categ_Cf.c: New file. + * lib/unictype/categ_Cn.c: New file. + * lib/unictype/categ_Co.c: New file. + * lib/unictype/categ_Cs.c: New file. + * lib/unictype/categ_L.c: New file. + * lib/unictype/categ_Ll.c: New file. + * lib/unictype/categ_Lm.c: New file. + * lib/unictype/categ_Lo.c: New file. + * lib/unictype/categ_Lt.c: New file. + * lib/unictype/categ_Lu.c: New file. + * lib/unictype/categ_M.c: New file. + * lib/unictype/categ_Mc.c: New file. + * lib/unictype/categ_Me.c: New file. + * lib/unictype/categ_Mn.c: New file. + * lib/unictype/categ_N.c: New file. + * lib/unictype/categ_Nd.c: New file. + * lib/unictype/categ_Nl.c: New file. + * lib/unictype/categ_No.c: New file. + * lib/unictype/categ_P.c: New file. + * lib/unictype/categ_Pc.c: New file. + * lib/unictype/categ_Pd.c: New file. + * lib/unictype/categ_Pe.c: New file. + * lib/unictype/categ_Pf.c: New file. + * lib/unictype/categ_Pi.c: New file. + * lib/unictype/categ_Po.c: New file. + * lib/unictype/categ_Ps.c: New file. + * lib/unictype/categ_S.c: New file. + * lib/unictype/categ_Sc.c: New file. + * lib/unictype/categ_Sk.c: New file. + * lib/unictype/categ_Sm.c: New file. + * lib/unictype/categ_So.c: New file. + * lib/unictype/categ_Z.c: New file. + * lib/unictype/categ_Zl.c: New file. + * lib/unictype/categ_Zp.c: New file. + * lib/unictype/categ_Zs.c: New file. + * lib/unictype/categ_and.c: New file. + * lib/unictype/categ_and_not.c: New file. + * lib/unictype/categ_byname.c: New file. + * lib/unictype/categ_name.c: New file. + * lib/unictype/categ_none.c: New file. + * lib/unictype/categ_of.c: New file. + * lib/unictype/categ_or.c: New file. + * lib/unictype/categ_test.c: New file. + * lib/unictype/combining.c: New file. + * lib/unictype/ctype_alnum.c: New file. + * lib/unictype/ctype_alpha.c: New file. + * lib/unictype/ctype_blank.c: New file. + * lib/unictype/ctype_cntrl.c: New file. + * lib/unictype/ctype_digit.c: New file. + * lib/unictype/ctype_graph.c: New file. + * lib/unictype/ctype_lower.c: New file. + * lib/unictype/ctype_print.c: New file. + * lib/unictype/ctype_punct.c: New file. + * lib/unictype/ctype_space.c: New file. + * lib/unictype/ctype_upper.c: New file. + * lib/unictype/ctype_xdigit.c: New file. + * lib/unictype/decdigit.c: New file. + * lib/unictype/digit.c: New file. + * lib/unictype/identsyntaxmap.h: New file. + * lib/unictype/mirror.c: New file. + * lib/unictype/numeric.c: New file. + * lib/unictype/pr_alphabetic.c: New file. + * lib/unictype/pr_ascii_hex_digit.c: New file. + * lib/unictype/pr_bidi_arabic_digit.c: New file. + * lib/unictype/pr_bidi_arabic_right_to_left.c: New file. + * lib/unictype/pr_bidi_block_separator.c: New file. + * lib/unictype/pr_bidi_boundary_neutral.c: New file. + * lib/unictype/pr_bidi_common_separator.c: New file. + * lib/unictype/pr_bidi_control.c: New file. + * lib/unictype/pr_bidi_embedding_or_override.c: New file. + * lib/unictype/pr_bidi_eur_num_separator.c: New file. + * lib/unictype/pr_bidi_eur_num_terminator.c: New file. + * lib/unictype/pr_bidi_european_digit.c: New file. + * lib/unictype/pr_bidi_hebrew_right_to_left.c: New file. + * lib/unictype/pr_bidi_left_to_right.c: New file. + * lib/unictype/pr_bidi_non_spacing_mark.c: New file. + * lib/unictype/pr_bidi_other_neutral.c: New file. + * lib/unictype/pr_bidi_pdf.c: New file. + * lib/unictype/pr_bidi_segment_separator.c: New file. + * lib/unictype/pr_bidi_whitespace.c: New file. + * lib/unictype/pr_byname.c: New file. + * lib/unictype/pr_byname.gperf: New file. + * lib/unictype/pr_combining.c: New file. + * lib/unictype/pr_composite.c: New file. + * lib/unictype/pr_currency_symbol.c: New file. + * lib/unictype/pr_dash.c: New file. + * lib/unictype/pr_decimal_digit.c: New file. + * lib/unictype/pr_default_ignorable_code_point.c: New file. + * lib/unictype/pr_deprecated.c: New file. + * lib/unictype/pr_diacritic.c: New file. + * lib/unictype/pr_extender.c: New file. + * lib/unictype/pr_format_control.c: New file. + * lib/unictype/pr_grapheme_base.c: New file. + * lib/unictype/pr_grapheme_extend.c: New file. + * lib/unictype/pr_grapheme_link.c: New file. + * lib/unictype/pr_hex_digit.c: New file. + * lib/unictype/pr_hyphen.c: New file. + * lib/unictype/pr_id_continue.c: New file. + * lib/unictype/pr_id_start.c: New file. + * lib/unictype/pr_ideographic.c: New file. + * lib/unictype/pr_ids_binary_operator.c: New file. + * lib/unictype/pr_ids_trinary_operator.c: New file. + * lib/unictype/pr_ignorable_control.c: New file. + * lib/unictype/pr_iso_control.c: New file. + * lib/unictype/pr_join_control.c: New file. + * lib/unictype/pr_left_of_pair.c: New file. + * lib/unictype/pr_line_separator.c: New file. + * lib/unictype/pr_logical_order_exception.c: New file. + * lib/unictype/pr_lowercase.c: New file. + * lib/unictype/pr_math.c: New file. + * lib/unictype/pr_non_break.c: New file. + * lib/unictype/pr_not_a_character.c: New file. + * lib/unictype/pr_numeric.c: New file. + * lib/unictype/pr_other_alphabetic.c: New file. + * lib/unictype/pr_other_default_ignorable_code_point.c: New file. + * lib/unictype/pr_other_grapheme_extend.c: New file. + * lib/unictype/pr_other_id_continue.c: New file. + * lib/unictype/pr_other_id_start.c: New file. + * lib/unictype/pr_other_lowercase.c: New file. + * lib/unictype/pr_other_math.c: New file. + * lib/unictype/pr_other_uppercase.c: New file. + * lib/unictype/pr_paired_punctuation.c: New file. + * lib/unictype/pr_paragraph_separator.c: New file. + * lib/unictype/pr_pattern_syntax.c: New file. + * lib/unictype/pr_pattern_white_space.c: New file. + * lib/unictype/pr_private_use.c: New file. + * lib/unictype/pr_punctuation.c: New file. + * lib/unictype/pr_quotation_mark.c: New file. + * lib/unictype/pr_radical.c: New file. + * lib/unictype/pr_sentence_terminal.c: New file. + * lib/unictype/pr_soft_dotted.c: New file. + * lib/unictype/pr_space.c: New file. + * lib/unictype/pr_terminal_punctuation.c: New file. + * lib/unictype/pr_test.c: New file. + * lib/unictype/pr_titlecase.c: New file. + * lib/unictype/pr_unassigned_code_value.c: New file. + * lib/unictype/pr_unified_ideograph.c: New file. + * lib/unictype/pr_uppercase.c: New file. + * lib/unictype/pr_variation_selector.c: New file. + * lib/unictype/pr_white_space.c: New file. + * lib/unictype/pr_xid_continue.c: New file. + * lib/unictype/pr_xid_start.c: New file. + * lib/unictype/pr_zero_width.c: New file. + * lib/unictype/scripts.c: New file. + * lib/unictype/sy_c_ident.c: New file. + * lib/unictype/sy_c_whitespace.c: New file. + * lib/unictype/sy_java_ident.c: New file. + * lib/unictype/sy_java_whitespace.c: New file. + + * lib/unictype/bidi_of.h: New file, generated from gen-ctype.c for + Unicode 5.0.0. + * lib/unictype/blocks.h: Likewise. + * lib/unictype/categ_C.h: Likewise. + * lib/unictype/categ_Cc.h: Likewise. + * lib/unictype/categ_Cf.h: Likewise. + * lib/unictype/categ_Cn.h: Likewise. + * lib/unictype/categ_Co.h: Likewise. + * lib/unictype/categ_Cs.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_Lt.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_Nl.h: Likewise. + * lib/unictype/categ_No.h: Likewise. + * lib/unictype/categ_P.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_Po.h: Likewise. + * lib/unictype/categ_Ps.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_Z.h: Likewise. + * lib/unictype/categ_Zl.h: Likewise. + * lib/unictype/categ_Zp.h: Likewise. + * lib/unictype/categ_Zs.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_blank.h: Likewise. + * lib/unictype/ctype_cntrl.h: Likewise. + * lib/unictype/ctype_digit.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_space.h: Likewise. + * lib/unictype/ctype_upper.h: Likewise. + * lib/unictype/ctype_xdigit.h: Likewise. + * lib/unictype/decdigit.h: Likewise. + * lib/unictype/digit.h: Likewise. + * lib/unictype/mirror.h: Likewise. + * lib/unictype/numeric.h: Likewise. + * lib/unictype/pr_alphabetic.h: Likewise. + * lib/unictype/pr_ascii_hex_digit.h: Likewise. + * lib/unictype/pr_bidi_arabic_digit.h: Likewise. + * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise. + * lib/unictype/pr_bidi_block_separator.h: Likewise. + * lib/unictype/pr_bidi_boundary_neutral.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_eur_num_terminator.h: Likewise. + * lib/unictype/pr_bidi_european_digit.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_bidi_pdf.h: Likewise. + * lib/unictype/pr_bidi_segment_separator.h: Likewise. + * lib/unictype/pr_bidi_whitespace.h: Likewise. + * lib/unictype/pr_combining.h: Likewise. + * lib/unictype/pr_composite.h: Likewise. + * lib/unictype/pr_currency_symbol.h: Likewise. + * lib/unictype/pr_dash.h: Likewise. + * lib/unictype/pr_decimal_digit.h: Likewise. + * lib/unictype/pr_default_ignorable_code_point.h: Likewise. + * lib/unictype/pr_deprecated.h: Likewise. + * lib/unictype/pr_diacritic.h: Likewise. + * lib/unictype/pr_extender.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_hex_digit.h: Likewise. + * lib/unictype/pr_hyphen.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_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_lowercase.h: Likewise. + * lib/unictype/pr_math.h: Likewise. + * lib/unictype/pr_non_break.h: Likewise. + * lib/unictype/pr_not_a_character.h: Likewise. + * lib/unictype/pr_numeric.h: Likewise. + * lib/unictype/pr_other_alphabetic.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_continue.h: Likewise. + * lib/unictype/pr_other_id_start.h: Likewise. + * lib/unictype/pr_other_lowercase.h: Likewise. + * lib/unictype/pr_other_math.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_punctuation.h: Likewise. + * lib/unictype/pr_quotation_mark.h: Likewise. + * lib/unictype/pr_radical.h: Likewise. + * lib/unictype/pr_sentence_terminal.h: Likewise. + * lib/unictype/pr_soft_dotted.h: Likewise. + * lib/unictype/pr_space.h: Likewise. + * lib/unictype/pr_terminal_punctuation.h: Likewise. + * lib/unictype/pr_titlecase.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_variation_selector.h: Likewise. + * lib/unictype/pr_white_space.h: Likewise. + * lib/unictype/pr_xid_continue.h: Likewise. + * lib/unictype/pr_xid_start.h: Likewise. + * lib/unictype/pr_zero_width.h: Likewise. + * lib/unictype/scripts.h: Likewise. + * lib/unictype/scripts_byname.gperf: Likewise. + * lib/unictype/sy_c_ident.h: Likewise. + * lib/unictype/sy_c_whitespace.h: Likewise. + * lib/unictype/sy_java_ident.h: Likewise. + * lib/unictype/sy_java_whitespace.h: Likewise. + + * lib/unictype/Makefile: New file. + * lib/unictype/gen-ctype.c: New file, based on gen-unicode-ctype.c in + glibc. + * lib/unictype/3level.h: New file, copied from glibc. + * lib/unictype/3levelbit.h: New file. + 2007-11-11 Bruno Haible * modules/gperf: New file. diff --git a/lib/unictype.h b/lib/unictype.h new file mode 100644 index 000000000..b4cee6507 --- /dev/null +++ b/lib/unictype.h @@ -0,0 +1,714 @@ +/* Unicode character classification and properties. + Copyright (C) 2002, 2005-2007 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#ifndef _UNICTYPE_H +#define _UNICTYPE_H + +#include "unitypes.h" + +/* Get bool. */ +#include + +/* Get size_t. */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* ========================================================================= */ + +/* Field 1 of Unicode Character Database: Character name. + See "uniname.h". */ + +/* ========================================================================= */ + +/* Field 2 of Unicode Character Database: General category. */ + +/* Data type denoting a General category value. This is not just a bitmask, + but rather a bitmask and a pointer to the lookup table, so that programs + that use only the predefined bitmasks (i.e. don't combine bitmasks with & + and |) don't have a link-time dependency towards the big general table. */ +typedef struct +{ + uint32_t bitmask : 31; + /*bool*/ unsigned int generic : 1; + union + { + const void *table; /* when generic is 0 */ + bool (*lookup_fn) (ucs4_t uc, uint32_t bitmask); /* when generic is 1 */ + } lookup; +} +uc_general_category_t; + +/* Bits and bit masks denoting General category values. UnicodeData-3.2.0.html + says a 32-bit integer will always suffice to represent them. + These bit masks are just informative; you cannot use them in any API. */ +enum +{ + UC_CATEGORY_MASK_L = 0x0000001f, + UC_CATEGORY_MASK_Lu = 0x00000001, + UC_CATEGORY_MASK_Ll = 0x00000002, + UC_CATEGORY_MASK_Lt = 0x00000004, + UC_CATEGORY_MASK_Lm = 0x00000008, + UC_CATEGORY_MASK_Lo = 0x00000010, + UC_CATEGORY_MASK_M = 0x000000e0, + UC_CATEGORY_MASK_Mn = 0x00000020, + UC_CATEGORY_MASK_Mc = 0x00000040, + UC_CATEGORY_MASK_Me = 0x00000080, + UC_CATEGORY_MASK_N = 0x00000700, + UC_CATEGORY_MASK_Nd = 0x00000100, + UC_CATEGORY_MASK_Nl = 0x00000200, + UC_CATEGORY_MASK_No = 0x00000400, + UC_CATEGORY_MASK_P = 0x0003f800, + UC_CATEGORY_MASK_Pc = 0x00000800, + UC_CATEGORY_MASK_Pd = 0x00001000, + UC_CATEGORY_MASK_Ps = 0x00002000, + UC_CATEGORY_MASK_Pe = 0x00004000, + UC_CATEGORY_MASK_Pi = 0x00008000, + UC_CATEGORY_MASK_Pf = 0x00010000, + UC_CATEGORY_MASK_Po = 0x00020000, + UC_CATEGORY_MASK_S = 0x003c0000, + UC_CATEGORY_MASK_Sm = 0x00040000, + UC_CATEGORY_MASK_Sc = 0x00080000, + UC_CATEGORY_MASK_Sk = 0x00100000, + UC_CATEGORY_MASK_So = 0x00200000, + UC_CATEGORY_MASK_Z = 0x01c00000, + UC_CATEGORY_MASK_Zs = 0x00400000, + UC_CATEGORY_MASK_Zl = 0x00800000, + UC_CATEGORY_MASK_Zp = 0x01000000, + UC_CATEGORY_MASK_C = 0x3e000000, + UC_CATEGORY_MASK_Cc = 0x02000000, + UC_CATEGORY_MASK_Cf = 0x04000000, + UC_CATEGORY_MASK_Cs = 0x08000000, + UC_CATEGORY_MASK_Co = 0x10000000, + UC_CATEGORY_MASK_Cn = 0x20000000 +}; + +/* Predefined General category values. */ +extern const uc_general_category_t UC_CATEGORY_L; +extern const uc_general_category_t UC_CATEGORY_Lu; +extern const uc_general_category_t UC_CATEGORY_Ll; +extern const uc_general_category_t UC_CATEGORY_Lt; +extern const uc_general_category_t UC_CATEGORY_Lm; +extern const uc_general_category_t UC_CATEGORY_Lo; +extern const uc_general_category_t UC_CATEGORY_M; +extern const uc_general_category_t UC_CATEGORY_Mn; +extern const uc_general_category_t UC_CATEGORY_Mc; +extern const uc_general_category_t UC_CATEGORY_Me; +extern const uc_general_category_t UC_CATEGORY_N; +extern const uc_general_category_t UC_CATEGORY_Nd; +extern const uc_general_category_t UC_CATEGORY_Nl; +extern const uc_general_category_t UC_CATEGORY_No; +extern const uc_general_category_t UC_CATEGORY_P; +extern const uc_general_category_t UC_CATEGORY_Pc; +extern const uc_general_category_t UC_CATEGORY_Pd; +extern const uc_general_category_t UC_CATEGORY_Ps; +extern const uc_general_category_t UC_CATEGORY_Pe; +extern const uc_general_category_t UC_CATEGORY_Pi; +extern const uc_general_category_t UC_CATEGORY_Pf; +extern const uc_general_category_t UC_CATEGORY_Po; +extern const uc_general_category_t UC_CATEGORY_S; +extern const uc_general_category_t UC_CATEGORY_Sm; +extern const uc_general_category_t UC_CATEGORY_Sc; +extern const uc_general_category_t UC_CATEGORY_Sk; +extern const uc_general_category_t UC_CATEGORY_So; +extern const uc_general_category_t UC_CATEGORY_Z; +extern const uc_general_category_t UC_CATEGORY_Zs; +extern const uc_general_category_t UC_CATEGORY_Zl; +extern const uc_general_category_t UC_CATEGORY_Zp; +extern const uc_general_category_t UC_CATEGORY_C; +extern const uc_general_category_t UC_CATEGORY_Cc; +extern const uc_general_category_t UC_CATEGORY_Cf; +extern const uc_general_category_t UC_CATEGORY_Cs; +extern const uc_general_category_t UC_CATEGORY_Co; +extern const uc_general_category_t UC_CATEGORY_Cn; +/* Non-public. */ +extern const uc_general_category_t _UC_CATEGORY_NONE; + +/* Alias names for predefined General category values. */ +#define UC_LETTER UC_CATEGORY_L +#define UC_UPPERCASE_LETTER UC_CATEGORY_Lu +#define UC_LOWERCASE_LETTER UC_CATEGORY_Ll +#define UC_TITLECASE_LETTER UC_CATEGORY_Lt +#define UC_MODIFIER_LETTER UC_CATEGORY_Lm +#define UC_OTHER_LETTER UC_CATEGORY_Lo +#define UC_MARK UC_CATEGORY_M +#define UC_NON_SPACING_MARK UC_CATEGORY_Mn +#define UC_COMBINING_SPACING_MARK UC_CATEGORY_Mc +#define UC_ENCLOSING_MARK UC_CATEGORY_Me +#define UC_NUMBER UC_CATEGORY_N +#define UC_DECIMAL_DIGIT_NUMBER UC_CATEGORY_Nd +#define UC_LETTER_NUMBER UC_CATEGORY_Nl +#define UC_OTHER_NUMBER UC_CATEGORY_No +#define UC_PUNCTUATION UC_CATEGORY_P +#define UC_CONNECTOR_PUNCTUATION UC_CATEGORY_Pc +#define UC_DASH_PUNCTUATION UC_CATEGORY_Pd +#define UC_OPEN_PUNCTUATION UC_CATEGORY_Ps /* a.k.a. UC_START_PUNCTUATION */ +#define UC_CLOSE_PUNCTUATION UC_CATEGORY_Pe /* a.k.a. UC_END_PUNCTUATION */ +#define UC_INITIAL_QUOTE_PUNCTUATION UC_CATEGORY_Pi +#define UC_FINAL_QUOTE_PUNCTUATION UC_CATEGORY_Pf +#define UC_OTHER_PUNCTUATION UC_CATEGORY_Po +#define UC_SYMBOL UC_CATEGORY_S +#define UC_MATH_SYMBOL UC_CATEGORY_Sm +#define UC_CURRENCY_SYMBOL UC_CATEGORY_Sc +#define UC_MODIFIER_SYMBOL UC_CATEGORY_Sk +#define UC_OTHER_SYMBOL UC_CATEGORY_So +#define UC_SEPARATOR UC_CATEGORY_Z +#define UC_SPACE_SEPARATOR UC_CATEGORY_Zs +#define UC_LINE_SEPARATOR UC_CATEGORY_Zl +#define UC_PARAGRAPH_SEPARATOR UC_CATEGORY_Zp +#define UC_OTHER UC_CATEGORY_C +#define UC_CONTROL UC_CATEGORY_Cc +#define UC_FORMAT UC_CATEGORY_Cf +#define UC_SURROGATE UC_CATEGORY_Cs /* all of them are invalid characters */ +#define UC_PRIVATE_USE UC_CATEGORY_Co +#define UC_UNASSIGNED UC_CATEGORY_Cn /* some of them are invalid characters */ + +/* Return the union of two general categories. + This corresponds to the unions of the two sets of characters. */ +extern uc_general_category_t + uc_general_category_or (uc_general_category_t category1, + uc_general_category_t category2); + +/* Return the intersection of two general categories as bit masks. + This *does*not* correspond to the intersection of the two sets of + characters. */ +extern uc_general_category_t + uc_general_category_and (uc_general_category_t category1, + uc_general_category_t category2); + +/* Return the intersection of a general category with the complement of a + second general category, as bit masks. + This *does*not* correspond to the intersection with complement, when + viewing the categories as sets of characters. */ +extern uc_general_category_t + uc_general_category_and_not (uc_general_category_t category1, + uc_general_category_t category2); + +/* Return the name of a general category. */ +extern const char * + uc_general_category_name (uc_general_category_t category); + +/* Return the general category given by name, e.g. "Lu". */ +extern uc_general_category_t + uc_general_category_byname (const char *category_name); + +/* Return the general category of a Unicode character. */ +extern uc_general_category_t + uc_general_category (ucs4_t uc); + +/* Test whether a Unicode character belongs to a given category. + The CATEGORY argument can be the combination of several built-in + general categories. */ +extern bool + uc_is_general_category (ucs4_t uc, uc_general_category_t category); +/* Likewise. This function uses a big table comprising all categories. */ +extern bool + uc_is_general_category_withtable (ucs4_t uc, uint32_t bitmask); + +/* ========================================================================= */ + +/* Field 3 of Unicode Character Database: Canonical combining class. */ + +/* The possible results of uc_combining_class (0..255) are described in + UCD.html. The list here is not definitive; more values can be added + in future versions. */ +enum +{ + UC_CCC_NR = 0, /* Not Reordered */ + UC_CCC_OV = 1, /* Overlay */ + UC_CCC_NK = 7, /* Nukta */ + UC_CCC_KV = 8, /* Kana Voicing */ + UC_CCC_VR = 9, /* Virama */ + UC_CCC_ATBL = 200, /* Attached Below Left */ + UC_CCC_ATB = 202, /* Attached Below */ + UC_CCC_ATAR = 216, /* Attached Above Right */ + UC_CCC_BL = 218, /* Below Left */ + UC_CCC_B = 220, /* Below */ + UC_CCC_BR = 222, /* Below Right */ + UC_CCC_L = 224, /* Left */ + UC_CCC_R = 226, /* Right */ + UC_CCC_AL = 228, /* Above Left */ + UC_CCC_A = 230, /* Above */ + UC_CCC_AR = 232, /* Above Right */ + UC_CCC_DB = 233, /* Double Below */ + UC_CCC_DA = 234, /* Double Above */ + UC_CCC_IS = 240, /* Iota Subscript */ +}; + +/* Return the canonical combining class of a Unicode character. */ +extern int + uc_combining_class (ucs4_t uc); + +/* ========================================================================= */ + +/* Field 4 of Unicode Character Database: Bidirectional category. */ + +enum +{ + UC_BIDI_L, /* Left-to-Right */ + UC_BIDI_LRE, /* Left-to-Right Embedding */ + UC_BIDI_LRO, /* Left-to-Right Override */ + UC_BIDI_R, /* Right-to-Left */ + UC_BIDI_AL, /* Right-to-Left Arabic */ + UC_BIDI_RLE, /* Right-to-Left Embedding */ + UC_BIDI_RLO, /* Right-to-Left Override */ + UC_BIDI_PDF, /* Pop Directional Format */ + UC_BIDI_EN, /* European Number */ + UC_BIDI_ES, /* European Number Separator */ + UC_BIDI_ET, /* European Number Terminator */ + UC_BIDI_AN, /* Arabic Number */ + UC_BIDI_CS, /* Common Number Separator */ + UC_BIDI_NSM, /* Non-Spacing Mark */ + UC_BIDI_BN, /* Boundary Neutral */ + UC_BIDI_B, /* Paragraph Separator */ + UC_BIDI_S, /* Segment Separator */ + UC_BIDI_WS, /* Whitespace */ + UC_BIDI_ON /* Other Neutral */ +}; + +/* Return the name of a bidirectional category. */ +extern const char * + uc_bidi_category_name (int category); + +/* Return the bidirectional category given by name, e.g. "LRE". */ +extern int + uc_bidi_category_byname (const char *category_name); + +/* Return the bidirectional category of a Unicode character. */ +extern int + uc_bidi_category (ucs4_t uc); + +/* Test whether a Unicode character belongs to a given bidirectional + category. */ +extern bool + uc_is_bidi_category (ucs4_t uc, int category); + +/* ========================================================================= */ + +/* Field 5 of Unicode Character Database: Character decomposition mapping. + See "unicomp.h". */ + +/* ========================================================================= */ + +/* Field 6 of Unicode Character Database: Decimal digit value. */ + +/* Return the decimal digit value of a Unicode character. */ +extern int + uc_decimal_value (ucs4_t uc); + +/* ========================================================================= */ + +/* Field 7 of Unicode Character Database: Digit value. */ + +/* Return the digit value of a Unicode character. */ +extern int + uc_digit_value (ucs4_t uc); + +/* ========================================================================= */ + +/* Field 8 of Unicode Character Database: Numeric value. */ + +/* Return the numeric value of a Unicode character. */ +typedef struct +{ + int numerator; + int denominator; +} +uc_fraction_t; +extern uc_fraction_t + uc_numeric_value (ucs4_t uc); + +/* ========================================================================= */ + +/* Field 9 of Unicode Character Database: Mirrored. */ + +/* Return the mirrored character of a Unicode character UC in *PUC. */ +extern bool + uc_mirror_char (ucs4_t uc, ucs4_t *puc); + +/* ========================================================================= */ + +/* Field 10 of Unicode Character Database: Unicode 1.0 Name. + Not available in this library. */ + +/* ========================================================================= */ + +/* Field 11 of Unicode Character Database: ISO 10646 comment. + Not available in this library. */ + +/* ========================================================================= */ + +/* Field 12, 13, 14 of Unicode Character Database: Uppercase mapping, + lowercase mapping, titlecase mapping. See "unicase.h". */ + +/* ========================================================================= */ + +/* Common API for properties. */ + +/* Data type denoting a property. This is not just a number, but rather a + pointer to the test functions, so that programs that use only few of the + properties don't have a link-time dependency towards all the tables. */ +typedef struct +{ + bool (*test_fn) (ucs4_t uc); +} +uc_property_t; + +/* Predefined properties. */ +/* General. */ +extern const uc_property_t UC_PROPERTY_WHITE_SPACE; +extern const uc_property_t UC_PROPERTY_ALPHABETIC; +extern const uc_property_t UC_PROPERTY_OTHER_ALPHABETIC; +extern const uc_property_t UC_PROPERTY_NOT_A_CHARACTER; +extern const uc_property_t UC_PROPERTY_DEFAULT_IGNORABLE_CODE_POINT; +extern const uc_property_t UC_PROPERTY_OTHER_DEFAULT_IGNORABLE_CODE_POINT; +extern const uc_property_t UC_PROPERTY_DEPRECATED; +extern const uc_property_t UC_PROPERTY_LOGICAL_ORDER_EXCEPTION; +extern const uc_property_t UC_PROPERTY_VARIATION_SELECTOR; +extern const uc_property_t UC_PROPERTY_PRIVATE_USE; +extern const uc_property_t UC_PROPERTY_UNASSIGNED_CODE_VALUE; +/* Case. */ +extern const uc_property_t UC_PROPERTY_UPPERCASE; +extern const uc_property_t UC_PROPERTY_OTHER_UPPERCASE; +extern const uc_property_t UC_PROPERTY_LOWERCASE; +extern const uc_property_t UC_PROPERTY_OTHER_LOWERCASE; +extern const uc_property_t UC_PROPERTY_TITLECASE; +extern const uc_property_t UC_PROPERTY_SOFT_DOTTED; +/* Identifiers. */ +extern const uc_property_t UC_PROPERTY_ID_START; +extern const uc_property_t UC_PROPERTY_OTHER_ID_START; +extern const uc_property_t UC_PROPERTY_ID_CONTINUE; +extern const uc_property_t UC_PROPERTY_OTHER_ID_CONTINUE; +extern const uc_property_t UC_PROPERTY_XID_START; +extern const uc_property_t UC_PROPERTY_XID_CONTINUE; +extern const uc_property_t UC_PROPERTY_PATTERN_WHITE_SPACE; +extern const uc_property_t UC_PROPERTY_PATTERN_SYNTAX; +/* Shaping and rendering. */ +extern const uc_property_t UC_PROPERTY_JOIN_CONTROL; +extern const uc_property_t UC_PROPERTY_GRAPHEME_BASE; +extern const uc_property_t UC_PROPERTY_GRAPHEME_EXTEND; +extern const uc_property_t UC_PROPERTY_OTHER_GRAPHEME_EXTEND; +extern const uc_property_t UC_PROPERTY_GRAPHEME_LINK; +/* Bidi. */ +extern const uc_property_t UC_PROPERTY_BIDI_CONTROL; +extern const uc_property_t UC_PROPERTY_BIDI_LEFT_TO_RIGHT; +extern const uc_property_t UC_PROPERTY_BIDI_HEBREW_RIGHT_TO_LEFT; +extern const uc_property_t UC_PROPERTY_BIDI_ARABIC_RIGHT_TO_LEFT; +extern const uc_property_t UC_PROPERTY_BIDI_EUROPEAN_DIGIT; +extern const uc_property_t UC_PROPERTY_BIDI_EUR_NUM_SEPARATOR; +extern const uc_property_t UC_PROPERTY_BIDI_EUR_NUM_TERMINATOR; +extern const uc_property_t UC_PROPERTY_BIDI_ARABIC_DIGIT; +extern const uc_property_t UC_PROPERTY_BIDI_COMMON_SEPARATOR; +extern const uc_property_t UC_PROPERTY_BIDI_BLOCK_SEPARATOR; +extern const uc_property_t UC_PROPERTY_BIDI_SEGMENT_SEPARATOR; +extern const uc_property_t UC_PROPERTY_BIDI_WHITESPACE; +extern const uc_property_t UC_PROPERTY_BIDI_NON_SPACING_MARK; +extern const uc_property_t UC_PROPERTY_BIDI_BOUNDARY_NEUTRAL; +extern const uc_property_t UC_PROPERTY_BIDI_PDF; +extern const uc_property_t UC_PROPERTY_BIDI_EMBEDDING_OR_OVERRIDE; +extern const uc_property_t UC_PROPERTY_BIDI_OTHER_NEUTRAL; +/* Numeric. */ +extern const uc_property_t UC_PROPERTY_HEX_DIGIT; +extern const uc_property_t UC_PROPERTY_ASCII_HEX_DIGIT; +/* CJK. */ +extern const uc_property_t UC_PROPERTY_IDEOGRAPHIC; +extern const uc_property_t UC_PROPERTY_UNIFIED_IDEOGRAPH; +extern const uc_property_t UC_PROPERTY_RADICAL; +extern const uc_property_t UC_PROPERTY_IDS_BINARY_OPERATOR; +extern const uc_property_t UC_PROPERTY_IDS_TRINARY_OPERATOR; +/* Misc. */ +extern const uc_property_t UC_PROPERTY_ZERO_WIDTH; +extern const uc_property_t UC_PROPERTY_SPACE; +extern const uc_property_t UC_PROPERTY_NON_BREAK; +extern const uc_property_t UC_PROPERTY_ISO_CONTROL; +extern const uc_property_t UC_PROPERTY_FORMAT_CONTROL; +extern const uc_property_t UC_PROPERTY_DASH; +extern const uc_property_t UC_PROPERTY_HYPHEN; +extern const uc_property_t UC_PROPERTY_PUNCTUATION; +extern const uc_property_t UC_PROPERTY_LINE_SEPARATOR; +extern const uc_property_t UC_PROPERTY_PARAGRAPH_SEPARATOR; +extern const uc_property_t UC_PROPERTY_QUOTATION_MARK; +extern const uc_property_t UC_PROPERTY_SENTENCE_TERMINAL; +extern const uc_property_t UC_PROPERTY_TERMINAL_PUNCTUATION; +extern const uc_property_t UC_PROPERTY_CURRENCY_SYMBOL; +extern const uc_property_t UC_PROPERTY_MATH; +extern const uc_property_t UC_PROPERTY_OTHER_MATH; +extern const uc_property_t UC_PROPERTY_PAIRED_PUNCTUATION; +extern const uc_property_t UC_PROPERTY_LEFT_OF_PAIR; +extern const uc_property_t UC_PROPERTY_COMBINING; +extern const uc_property_t UC_PROPERTY_COMPOSITE; +extern const uc_property_t UC_PROPERTY_DECIMAL_DIGIT; +extern const uc_property_t UC_PROPERTY_NUMERIC; +extern const uc_property_t UC_PROPERTY_DIACRITIC; +extern const uc_property_t UC_PROPERTY_EXTENDER; +extern const uc_property_t UC_PROPERTY_IGNORABLE_CONTROL; + +/* Return the property given by name, e.g. "White space". */ +extern uc_property_t + uc_property_byname (const char *property_name); + +/* Test whether a Unicode character has a given property. */ +extern bool + uc_is_property (ucs4_t uc, uc_property_t property); +extern bool uc_is_property_white_space (ucs4_t uc); +extern bool uc_is_property_alphabetic (ucs4_t uc); +extern bool uc_is_property_other_alphabetic (ucs4_t uc); +extern bool uc_is_property_not_a_character (ucs4_t uc); +extern bool uc_is_property_default_ignorable_code_point (ucs4_t uc); +extern bool uc_is_property_other_default_ignorable_code_point (ucs4_t uc); +extern bool uc_is_property_deprecated (ucs4_t uc); +extern bool uc_is_property_logical_order_exception (ucs4_t uc); +extern bool uc_is_property_variation_selector (ucs4_t uc); +extern bool uc_is_property_private_use (ucs4_t uc); +extern bool uc_is_property_unassigned_code_value (ucs4_t uc); +extern bool uc_is_property_uppercase (ucs4_t uc); +extern bool uc_is_property_other_uppercase (ucs4_t uc); +extern bool uc_is_property_lowercase (ucs4_t uc); +extern bool uc_is_property_other_lowercase (ucs4_t uc); +extern bool uc_is_property_titlecase (ucs4_t uc); +extern bool uc_is_property_soft_dotted (ucs4_t uc); +extern bool uc_is_property_id_start (ucs4_t uc); +extern bool uc_is_property_other_id_start (ucs4_t uc); +extern bool uc_is_property_id_continue (ucs4_t uc); +extern bool uc_is_property_other_id_continue (ucs4_t uc); +extern bool uc_is_property_xid_start (ucs4_t uc); +extern bool uc_is_property_xid_continue (ucs4_t uc); +extern bool uc_is_property_pattern_white_space (ucs4_t uc); +extern bool uc_is_property_pattern_syntax (ucs4_t uc); +extern bool uc_is_property_join_control (ucs4_t uc); +extern bool uc_is_property_grapheme_base (ucs4_t uc); +extern bool uc_is_property_grapheme_extend (ucs4_t uc); +extern bool uc_is_property_other_grapheme_extend (ucs4_t uc); +extern bool uc_is_property_grapheme_link (ucs4_t uc); +extern bool uc_is_property_bidi_control (ucs4_t uc); +extern bool uc_is_property_bidi_left_to_right (ucs4_t uc); +extern bool uc_is_property_bidi_hebrew_right_to_left (ucs4_t uc); +extern bool uc_is_property_bidi_arabic_right_to_left (ucs4_t uc); +extern bool uc_is_property_bidi_european_digit (ucs4_t uc); +extern bool uc_is_property_bidi_eur_num_separator (ucs4_t uc); +extern bool uc_is_property_bidi_eur_num_terminator (ucs4_t uc); +extern bool uc_is_property_bidi_arabic_digit (ucs4_t uc); +extern bool uc_is_property_bidi_common_separator (ucs4_t uc); +extern bool uc_is_property_bidi_block_separator (ucs4_t uc); +extern bool uc_is_property_bidi_segment_separator (ucs4_t uc); +extern bool uc_is_property_bidi_whitespace (ucs4_t uc); +extern bool uc_is_property_bidi_non_spacing_mark (ucs4_t uc); +extern bool uc_is_property_bidi_boundary_neutral (ucs4_t uc); +extern bool uc_is_property_bidi_pdf (ucs4_t uc); +extern bool uc_is_property_bidi_embedding_or_override (ucs4_t uc); +extern bool uc_is_property_bidi_other_neutral (ucs4_t uc); +extern bool uc_is_property_hex_digit (ucs4_t uc); +extern bool uc_is_property_ascii_hex_digit (ucs4_t uc); +extern bool uc_is_property_ideographic (ucs4_t uc); +extern bool uc_is_property_unified_ideograph (ucs4_t uc); +extern bool uc_is_property_radical (ucs4_t uc); +extern bool uc_is_property_ids_binary_operator (ucs4_t uc); +extern bool uc_is_property_ids_trinary_operator (ucs4_t uc); +extern bool uc_is_property_zero_width (ucs4_t uc); +extern bool uc_is_property_space (ucs4_t uc); +extern bool uc_is_property_non_break (ucs4_t uc); +extern bool uc_is_property_iso_control (ucs4_t uc); +extern bool uc_is_property_format_control (ucs4_t uc); +extern bool uc_is_property_dash (ucs4_t uc); +extern bool uc_is_property_hyphen (ucs4_t uc); +extern bool uc_is_property_punctuation (ucs4_t uc); +extern bool uc_is_property_line_separator (ucs4_t uc); +extern bool uc_is_property_paragraph_separator (ucs4_t uc); +extern bool uc_is_property_quotation_mark (ucs4_t uc); +extern bool uc_is_property_sentence_terminal (ucs4_t uc); +extern bool uc_is_property_terminal_punctuation (ucs4_t uc); +extern bool uc_is_property_currency_symbol (ucs4_t uc); +extern bool uc_is_property_math (ucs4_t uc); +extern bool uc_is_property_other_math (ucs4_t uc); +extern bool uc_is_property_paired_punctuation (ucs4_t uc); +extern bool uc_is_property_left_of_pair (ucs4_t uc); +extern bool uc_is_property_combining (ucs4_t uc); +extern bool uc_is_property_composite (ucs4_t uc); +extern bool uc_is_property_decimal_digit (ucs4_t uc); +extern bool uc_is_property_numeric (ucs4_t uc); +extern bool uc_is_property_diacritic (ucs4_t uc); +extern bool uc_is_property_extender (ucs4_t uc); +extern bool uc_is_property_ignorable_control (ucs4_t uc); + +/* ========================================================================= */ + +/* Subdivision of the the Unicode characters into scripts. */ + +typedef struct +{ + unsigned int code : 21; + unsigned int start : 1; + unsigned int end : 1; +} +uc_interval_t; +typedef struct +{ + unsigned int nintervals; + const uc_interval_t *intervals; + const char *name; +} +uc_script_t; + +/* Return the script of a Unicode character. */ +extern const uc_script_t * + uc_script (ucs4_t uc); + +/* Return the script given by name, e.g. "HAN". */ +extern const uc_script_t * + uc_script_byname (const char *script_name); + +/* Test whether a Unicode character belongs to a given script. */ +extern bool + uc_is_script (ucs4_t uc, const uc_script_t *script); + +/* Get the list of all scripts. */ +extern void + uc_all_scripts (const uc_script_t **scripts, size_t *count); + +/* ========================================================================= */ + +/* Subdivision of the Unicode character range into blocks. */ + +typedef struct +{ + ucs4_t start; + ucs4_t end; + const char *name; +} +uc_block_t; + +/* Return the block a character belongs to. */ +extern const uc_block_t * + uc_block (ucs4_t uc); + +/* Test whether a Unicode character belongs to a given block. */ +extern bool + uc_is_block (ucs4_t uc, const uc_block_t *block); + +/* Get the list of all blocks. */ +extern void + uc_all_blocks (const uc_block_t **blocks, size_t *count); + +/* ========================================================================= */ + +/* Properties taken from language standards. */ + +/* Test whether a Unicode character is considered whitespace in ISO C 99. */ +extern bool + uc_is_c_whitespace (ucs4_t uc); + +/* Test whether a Unicode character is considered whitespace in Java. */ +extern bool + uc_is_java_whitespace (ucs4_t uc); + +enum +{ + UC_IDENTIFIER_START, /* valid as first or subsequent character */ + UC_IDENTIFIER_VALID, /* valid as subsequent character only */ + UC_IDENTIFIER_INVALID, /* not valid */ + UC_IDENTIFIER_IGNORABLE /* ignorable (Java only) */ +}; + +/* Return the categorization of a Unicode character w.r.t. the ISO C 99 + identifier syntax. */ +extern int + uc_c_ident_category (ucs4_t uc); + +/* Return the categorization of a Unicode character w.r.t. the Java + identifier syntax. */ +extern int + uc_java_ident_category (ucs4_t uc); + +/* ========================================================================= */ + +/* Like ISO C and . These functions are deprecated, + because this set of functions was designed with ASCII in mind and cannot + reflect the more diverse reality of the Unicode character set. But they + can be a quick-and-dirty porting aid when migrating from wchar_t APIs + to Unicode strings. */ + +/* Test for any character for which 'uc_is_alpha' or 'uc_is_digit' is true. */ +extern bool + uc_is_alnum (ucs4_t uc); + +/* Test for any character for which 'uc_is_upper' or 'uc_is_lower' is true, + or any character that is one of a locale-specific set of characters for + which none of 'uc_is_cntrl', 'uc_is_digit', 'uc_is_punct', or 'uc_is_space' + is true. */ +extern bool + uc_is_alpha (ucs4_t uc); + +/* Test for any control character. */ +extern bool + uc_is_cntrl (ucs4_t uc); + +/* Test for any character that corresponds to a decimal-digit character. */ +extern bool + uc_is_digit (ucs4_t uc); + +/* Test for any character for which 'uc_is_print' is true and 'uc_is_space' + is false. */ +extern bool + uc_is_graph (ucs4_t uc); + +/* Test for any character that corresponds to a lowercase letter or is one + of a locale-specific set of characters for which none of 'uc_is_cntrl', + 'uc_is_digit', 'uc_is_punct', or 'uc_is_space' is true. */ +extern bool + uc_is_lower (ucs4_t uc); + +/* Test for any printing character. */ +extern bool + uc_is_print (ucs4_t uc); + +/* Test for any printing character that is one of a locale-specific set of + characters for which neither 'uc_is_space' nor 'uc_is_alnum' is true. */ +extern bool + uc_is_punct (ucs4_t uc); + +/* Test for any character that corresponds to a locale-specific set of + characters for which none of 'uc_is_alnum', 'uc_is_graph', or 'uc_is_punct' + is true. */ +extern bool + uc_is_space (ucs4_t uc); + +/* Test for any character that corresponds to an uppercase letter or is one + of a locale-specific set of character for which none of 'uc_is_cntrl', + 'uc_is_digit', 'uc_is_punct', or 'uc_is_space' is true. */ +extern bool + uc_is_upper (ucs4_t uc); + +/* Test for any character that corresponds to a hexadecimal-digit character + equivalent to that performed by the functions described in the previous + subclause. */ +extern bool + uc_is_xdigit (ucs4_t uc); + +/* GNU extension. */ +/* Test for any character that corresponds to a standard blank character or + a locale-specific set of characters for which 'uc_is_alnum' is false. */ +extern bool + uc_is_blank (ucs4_t uc); + +/* ========================================================================= */ + +#ifdef __cplusplus +} +#endif + +#endif /* _UNICTYPE_H */ diff --git a/lib/unictype/3level.h b/lib/unictype/3level.h new file mode 100644 index 000000000..426ad3b28 --- /dev/null +++ b/lib/unictype/3level.h @@ -0,0 +1,327 @@ +/* Copyright (C) 2000-2001 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Bruno Haible , 2000. + + + NOTE: The canonical source of this file is maintained with the GNU C Library. + Bugs can be reported to bug-glibc@gnu.org. + + This program is free software; you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by the + Free Software Foundation; either version 2, or (at your option) any + later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, + USA. */ + +/* Construction of sparse 3-level tables. + See wchar-lookup.h or coll-lookup.h for their structure and the + meaning of p and q. + + Before including this file, set + TABLE to the name of the structure to be defined + ELEMENT to the type of every entry + DEFAULT to the default value for empty entries + ITERATE if you want the TABLE_iterate function to be defined + NO_FINALIZE if you don't want the TABLE_finalize function to be defined + + This will define + + struct TABLE; + void TABLE_init (struct TABLE *t); + ELEMENT TABLE_get (struct TABLE *t, uint32_t wc); + void TABLE_add (struct TABLE *t, uint32_t wc, ELEMENT value); + void TABLE_iterate (struct TABLE *t, + void (*fn) (uint32_t wc, ELEMENT value)); + void TABLE_finalize (struct TABLE *t); +*/ + +#define CONCAT(a,b) CONCAT1(a,b) +#define CONCAT1(a,b) a##b + +struct TABLE +{ + /* Parameters. */ + unsigned int p; + unsigned int q; + /* Working representation. */ + size_t level1_alloc; + size_t level1_size; + uint32_t *level1; + size_t level2_alloc; + size_t level2_size; + uint32_t *level2; + size_t level3_alloc; + size_t level3_size; + ELEMENT *level3; + /* Compressed representation. */ + size_t result_size; + char *result; +}; + +/* Initialize. Assumes t->p and t->q have already been set. */ +static inline void +CONCAT(TABLE,_init) (struct TABLE *t) +{ + t->level1 = NULL; + t->level1_alloc = t->level1_size = 0; + t->level2 = NULL; + t->level2_alloc = t->level2_size = 0; + t->level3 = NULL; + t->level3_alloc = t->level3_size = 0; +} + +/* Marker for an empty slot. This has the value 0xFFFFFFFF, regardless + whether 'int' is 16 bit, 32 bit, or 64 bit. */ +#define EMPTY ((uint32_t) ~0) + +/* Retrieve an entry. */ +static inline ELEMENT +CONCAT(TABLE,_get) (struct TABLE *t, uint32_t wc) +{ + uint32_t index1 = wc >> (t->q + t->p); + if (index1 < t->level1_size) + { + uint32_t lookup1 = t->level1[index1]; + if (lookup1 != EMPTY) + { + uint32_t index2 = ((wc >> t->p) & ((1 << t->q) - 1)) + + (lookup1 << t->q); + uint32_t lookup2 = t->level2[index2]; + if (lookup2 != EMPTY) + { + uint32_t index3 = (wc & ((1 << t->p) - 1)) + + (lookup2 << t->p); + ELEMENT lookup3 = t->level3[index3]; + + return lookup3; + } + } + } + return DEFAULT; +} + +/* Add one entry. */ +static void +CONCAT(TABLE,_add) (struct TABLE *t, uint32_t wc, ELEMENT value) +{ + uint32_t index1 = wc >> (t->q + t->p); + uint32_t index2 = (wc >> t->p) & ((1 << t->q) - 1); + uint32_t index3 = wc & ((1 << t->p) - 1); + size_t i, i1, i2; + + if (value == CONCAT(TABLE,_get) (t, wc)) + return; + + if (index1 >= t->level1_size) + { + if (index1 >= t->level1_alloc) + { + size_t alloc = 2 * t->level1_alloc; + if (alloc <= index1) + alloc = index1 + 1; + t->level1 = (uint32_t *) xrealloc ((char *) t->level1, + alloc * sizeof (uint32_t)); + t->level1_alloc = alloc; + } + while (index1 >= t->level1_size) + t->level1[t->level1_size++] = EMPTY; + } + + if (t->level1[index1] == EMPTY) + { + if (t->level2_size == t->level2_alloc) + { + size_t alloc = 2 * t->level2_alloc + 1; + t->level2 = (uint32_t *) xrealloc ((char *) t->level2, + (alloc << t->q) * sizeof (uint32_t)); + t->level2_alloc = alloc; + } + i1 = t->level2_size << t->q; + i2 = (t->level2_size + 1) << t->q; + for (i = i1; i < i2; i++) + t->level2[i] = EMPTY; + t->level1[index1] = t->level2_size++; + } + + index2 += t->level1[index1] << t->q; + + if (t->level2[index2] == EMPTY) + { + if (t->level3_size == t->level3_alloc) + { + size_t alloc = 2 * t->level3_alloc + 1; + t->level3 = (ELEMENT *) xrealloc ((char *) t->level3, + (alloc << t->p) * sizeof (ELEMENT)); + t->level3_alloc = alloc; + } + i1 = t->level3_size << t->p; + i2 = (t->level3_size + 1) << t->p; + for (i = i1; i < i2; i++) + t->level3[i] = DEFAULT; + t->level2[index2] = t->level3_size++; + } + + index3 += t->level2[index2] << t->p; + + t->level3[index3] = value; +} + +#ifdef ITERATE +/* Apply a function to all entries in the table. */ +static void +CONCAT(TABLE,_iterate) (struct TABLE *t, + void (*fn) (uint32_t wc, ELEMENT value)) +{ + uint32_t index1; + for (index1 = 0; index1 < t->level1_size; index1++) + { + uint32_t lookup1 = t->level1[index1]; + if (lookup1 != EMPTY) + { + uint32_t lookup1_shifted = lookup1 << t->q; + uint32_t index2; + for (index2 = 0; index2 < (1 << t->q); index2++) + { + uint32_t lookup2 = t->level2[index2 + lookup1_shifted]; + if (lookup2 != EMPTY) + { + uint32_t lookup2_shifted = lookup2 << t->p; + uint32_t index3; + for (index3 = 0; index3 < (1 << t->p); index3++) + { + ELEMENT lookup3 = t->level3[index3 + lookup2_shifted]; + if (lookup3 != DEFAULT) + fn ((((index1 << t->q) + index2) << t->p) + index3, + lookup3); + } + } + } + } + } +} +#endif + +#ifndef NO_FINALIZE +/* Finalize and shrink. */ +static void +CONCAT(TABLE,_finalize) (struct TABLE *t) +{ + size_t i, j, k; + uint32_t reorder3[t->level3_size]; + uint32_t reorder2[t->level2_size]; + uint32_t level1_offset, level2_offset, level3_offset, last_offset; + + /* Uniquify level3 blocks. */ + k = 0; + for (j = 0; j < t->level3_size; j++) + { + for (i = 0; i < k; i++) + if (memcmp (&t->level3[i << t->p], &t->level3[j << t->p], + (1 << t->p) * sizeof (ELEMENT)) == 0) + break; + /* Relocate block j to block i. */ + reorder3[j] = i; + if (i == k) + { + if (i != j) + memcpy (&t->level3[i << t->p], &t->level3[j << t->p], + (1 << t->p) * sizeof (ELEMENT)); + k++; + } + } + t->level3_size = k; + + for (i = 0; i < (t->level2_size << t->q); i++) + if (t->level2[i] != EMPTY) + t->level2[i] = reorder3[t->level2[i]]; + + /* Uniquify level2 blocks. */ + k = 0; + for (j = 0; j < t->level2_size; j++) + { + for (i = 0; i < k; i++) + if (memcmp (&t->level2[i << t->q], &t->level2[j << t->q], + (1 << t->q) * sizeof (uint32_t)) == 0) + break; + /* Relocate block j to block i. */ + reorder2[j] = i; + if (i == k) + { + if (i != j) + memcpy (&t->level2[i << t->q], &t->level2[j << t->q], + (1 << t->q) * sizeof (uint32_t)); + k++; + } + } + t->level2_size = k; + + for (i = 0; i < t->level1_size; i++) + if (t->level1[i] != EMPTY) + t->level1[i] = reorder2[t->level1[i]]; + + /* Create and fill the resulting compressed representation. */ + last_offset = + 5 * sizeof (uint32_t) + + t->level1_size * sizeof (uint32_t) + + (t->level2_size << t->q) * sizeof (uint32_t) + + (t->level3_size << t->p) * sizeof (ELEMENT); + t->result_size = (last_offset + 3) & ~3ul; + t->result = (char *) xmalloc (t->result_size); + + level1_offset = + 5 * sizeof (uint32_t); + level2_offset = + 5 * sizeof (uint32_t) + + t->level1_size * sizeof (uint32_t); + level3_offset = + 5 * sizeof (uint32_t) + + t->level1_size * sizeof (uint32_t) + + (t->level2_size << t->q) * sizeof (uint32_t); + + ((uint32_t *) t->result)[0] = t->q + t->p; + ((uint32_t *) t->result)[1] = t->level1_size; + ((uint32_t *) t->result)[2] = t->p; + ((uint32_t *) t->result)[3] = (1 << t->q) - 1; + ((uint32_t *) t->result)[4] = (1 << t->p) - 1; + + for (i = 0; i < t->level1_size; i++) + ((uint32_t *) (t->result + level1_offset))[i] = + (t->level1[i] == EMPTY + ? 0 + : (t->level1[i] << t->q) * sizeof (uint32_t) + level2_offset); + + for (i = 0; i < (t->level2_size << t->q); i++) + ((uint32_t *) (t->result + level2_offset))[i] = + (t->level2[i] == EMPTY + ? 0 + : (t->level2[i] << t->p) * sizeof (ELEMENT) + level3_offset); + + for (i = 0; i < (t->level3_size << t->p); i++) + ((ELEMENT *) (t->result + level3_offset))[i] = t->level3[i]; + + if (last_offset < t->result_size) + memset (t->result + last_offset, 0, t->result_size - last_offset); + + if (t->level1_alloc > 0) + free (t->level1); + if (t->level2_alloc > 0) + free (t->level2); + if (t->level3_alloc > 0) + free (t->level3); +} +#endif + +#undef EMPTY +#undef TABLE +#undef ELEMENT +#undef DEFAULT +#undef ITERATE +#undef NO_FINALIZE diff --git a/lib/unictype/3levelbit.h b/lib/unictype/3levelbit.h new file mode 100644 index 000000000..aa6105a14 --- /dev/null +++ b/lib/unictype/3levelbit.h @@ -0,0 +1,317 @@ +/* Copyright (C) 2000-2002 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Bruno Haible , 2000. + + + NOTE: The canonical source of this file is maintained with the GNU C Library. + See glibc/locale/programs/ld-ctype.c. + Bugs can be reported to bug-glibc@gnu.org. + + This program is free software; you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by the + Free Software Foundation; either version 2, or (at your option) any + later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, + USA. */ + +/* Construction of sparse 3-level tables. + See wchar-lookup.h for their structure and the meaning of p and q. + + Before including this file, set + TABLE to the name of the structure to be defined + ITERATE if you want the TABLE_iterate function to be defined + NO_FINALIZE if you don't want the TABLE_finalize function to be defined + + This will define + + struct TABLE; + void TABLE_init (struct TABLE *t); + int TABLE_get (struct TABLE *t, uint32_t wc); + void TABLE_add (struct TABLE *t, uint32_t wc); + void TABLE_iterate (struct TABLE *t, void (*fn) (uint32_t wc)); + void TABLE_finalize (struct TABLE *t); +*/ + +#define CONCAT(a,b) CONCAT1(a,b) +#define CONCAT1(a,b) a##b + +struct TABLE +{ + /* Parameters. */ + unsigned int p; + unsigned int q; + /* Working representation. */ + size_t level1_alloc; + size_t level1_size; + uint32_t *level1; + size_t level2_alloc; + size_t level2_size; + uint32_t *level2; + size_t level3_alloc; + size_t level3_size; + uint32_t *level3; + /* Compressed representation. */ + size_t result_size; + char *result; +}; + +/* Initialize. Assumes t->p and t->q have already been set. */ +static inline void +CONCAT(TABLE,_init) (struct TABLE *t) +{ + t->level1 = NULL; + t->level1_alloc = t->level1_size = 0; + t->level2 = NULL; + t->level2_alloc = t->level2_size = 0; + t->level3 = NULL; + t->level3_alloc = t->level3_size = 0; +} + +/* Marker for an empty slot. This has the value 0xFFFFFFFF, regardless + whether 'int' is 16 bit, 32 bit, or 64 bit. */ +#define EMPTY ((uint32_t) ~0) + +/* Retrieve an entry. */ +static inline int +CONCAT(TABLE,_get) (struct TABLE *t, uint32_t wc) +{ + uint32_t index1 = wc >> (t->q + t->p + 5); + if (index1 < t->level1_size) + { + uint32_t lookup1 = t->level1[index1]; + if (lookup1 != EMPTY) + { + uint32_t index2 = ((wc >> (t->p + 5)) & ((1 << t->q) - 1)) + + (lookup1 << t->q); + uint32_t lookup2 = t->level2[index2]; + if (lookup2 != EMPTY) + { + uint32_t index3 = ((wc >> 5) & ((1 << t->p) - 1)) + + (lookup2 << t->p); + uint32_t lookup3 = t->level3[index3]; + uint32_t index4 = wc & 0x1f; + + return (lookup3 >> index4) & 1; + } + } + } + return 0; +} + +/* Add one entry. */ +static void +CONCAT(TABLE,_add) (struct TABLE *t, uint32_t wc) +{ + uint32_t index1 = wc >> (t->q + t->p + 5); + uint32_t index2 = (wc >> (t->p + 5)) & ((1 << t->q) - 1); + uint32_t index3 = (wc >> 5) & ((1 << t->p) - 1); + uint32_t index4 = wc & 0x1f; + size_t i, i1, i2; + + if (index1 >= t->level1_size) + { + if (index1 >= t->level1_alloc) + { + size_t alloc = 2 * t->level1_alloc; + if (alloc <= index1) + alloc = index1 + 1; + t->level1 = (uint32_t *) xrealloc ((char *) t->level1, + alloc * sizeof (uint32_t)); + t->level1_alloc = alloc; + } + while (index1 >= t->level1_size) + t->level1[t->level1_size++] = EMPTY; + } + + if (t->level1[index1] == EMPTY) + { + if (t->level2_size == t->level2_alloc) + { + size_t alloc = 2 * t->level2_alloc + 1; + t->level2 = (uint32_t *) xrealloc ((char *) t->level2, + (alloc << t->q) * sizeof (uint32_t)); + t->level2_alloc = alloc; + } + i1 = t->level2_size << t->q; + i2 = (t->level2_size + 1) << t->q; + for (i = i1; i < i2; i++) + t->level2[i] = EMPTY; + t->level1[index1] = t->level2_size++; + } + + index2 += t->level1[index1] << t->q; + + if (t->level2[index2] == EMPTY) + { + if (t->level3_size == t->level3_alloc) + { + size_t alloc = 2 * t->level3_alloc + 1; + t->level3 = (uint32_t *) xrealloc ((char *) t->level3, + (alloc << t->p) * sizeof (uint32_t)); + t->level3_alloc = alloc; + } + i1 = t->level3_size << t->p; + i2 = (t->level3_size + 1) << t->p; + for (i = i1; i < i2; i++) + t->level3[i] = 0; + t->level2[index2] = t->level3_size++; + } + + index3 += t->level2[index2] << t->p; + + t->level3[index3] |= (uint32_t)1 << index4; +} + +#ifdef ITERATE +/* Apply a function to all entries in the table. */ +static void +CONCAT(TABLE,_iterate) (struct TABLE *t, void (*fn) (uint32_t wc)) +{ + uint32_t index1; + for (index1 = 0; index1 < t->level1_size; index1++) + { + uint32_t lookup1 = t->level1[index1]; + if (lookup1 != EMPTY) + { + uint32_t lookup1_shifted = lookup1 << t->q; + uint32_t index2; + for (index2 = 0; index2 < (1 << t->q); index2++) + { + uint32_t lookup2 = t->level2[index2 + lookup1_shifted]; + if (lookup2 != EMPTY) + { + uint32_t lookup2_shifted = lookup2 << t->p; + uint32_t index3; + for (index3 = 0; index3 < (1 << t->p); index3++) + { + uint32_t lookup3 = t->level3[index3 + lookup2_shifted]; + uint32_t index4; + for (index4 = 0; index4 < 32; index4++) + if ((lookup3 >> index4) & 1) + fn ((((((index1 << t->q) + index2) << t->p) + index3) << 5) + index4); + } + } + } + } + } +} +#endif + +#ifndef NO_FINALIZE +/* Finalize and shrink. */ +static void +CONCAT(TABLE,_finalize) (struct TABLE *t) +{ + size_t i, j, k; + uint32_t reorder3[t->level3_size]; + uint32_t reorder2[t->level2_size]; + uint32_t level1_offset, level2_offset, level3_offset; + + /* Uniquify level3 blocks. */ + k = 0; + for (j = 0; j < t->level3_size; j++) + { + for (i = 0; i < k; i++) + if (memcmp (&t->level3[i << t->p], &t->level3[j << t->p], + (1 << t->p) * sizeof (uint32_t)) == 0) + break; + /* Relocate block j to block i. */ + reorder3[j] = i; + if (i == k) + { + if (i != j) + memcpy (&t->level3[i << t->p], &t->level3[j << t->p], + (1 << t->p) * sizeof (uint32_t)); + k++; + } + } + t->level3_size = k; + + for (i = 0; i < (t->level2_size << t->q); i++) + if (t->level2[i] != EMPTY) + t->level2[i] = reorder3[t->level2[i]]; + + /* Uniquify level2 blocks. */ + k = 0; + for (j = 0; j < t->level2_size; j++) + { + for (i = 0; i < k; i++) + if (memcmp (&t->level2[i << t->q], &t->level2[j << t->q], + (1 << t->q) * sizeof (uint32_t)) == 0) + break; + /* Relocate block j to block i. */ + reorder2[j] = i; + if (i == k) + { + if (i != j) + memcpy (&t->level2[i << t->q], &t->level2[j << t->q], + (1 << t->q) * sizeof (uint32_t)); + k++; + } + } + t->level2_size = k; + + for (i = 0; i < t->level1_size; i++) + if (t->level1[i] != EMPTY) + t->level1[i] = reorder2[t->level1[i]]; + + /* Create and fill the resulting compressed representation. */ + t->result_size = + 5 * sizeof (uint32_t) + + t->level1_size * sizeof (uint32_t) + + (t->level2_size << t->q) * sizeof (uint32_t) + + (t->level3_size << t->p) * sizeof (uint32_t); + t->result = (char *) xmalloc (t->result_size); + + level1_offset = + 5 * sizeof (uint32_t); + level2_offset = + 5 * sizeof (uint32_t) + + t->level1_size * sizeof (uint32_t); + level3_offset = + 5 * sizeof (uint32_t) + + t->level1_size * sizeof (uint32_t) + + (t->level2_size << t->q) * sizeof (uint32_t); + + ((uint32_t *) t->result)[0] = t->q + t->p + 5; + ((uint32_t *) t->result)[1] = t->level1_size; + ((uint32_t *) t->result)[2] = t->p + 5; + ((uint32_t *) t->result)[3] = (1 << t->q) - 1; + ((uint32_t *) t->result)[4] = (1 << t->p) - 1; + + for (i = 0; i < t->level1_size; i++) + ((uint32_t *) (t->result + level1_offset))[i] = + (t->level1[i] == EMPTY + ? 0 + : (t->level1[i] << t->q) * sizeof (uint32_t) + level2_offset); + + for (i = 0; i < (t->level2_size << t->q); i++) + ((uint32_t *) (t->result + level2_offset))[i] = + (t->level2[i] == EMPTY + ? 0 + : (t->level2[i] << t->p) * sizeof (uint32_t) + level3_offset); + + for (i = 0; i < (t->level3_size << t->p); i++) + ((uint32_t *) (t->result + level3_offset))[i] = t->level3[i]; + + if (t->level1_alloc > 0) + free (t->level1); + if (t->level2_alloc > 0) + free (t->level2); + if (t->level3_alloc > 0) + free (t->level3); +} +#endif + +#undef EMPTY +#undef TABLE +#undef ITERATE +#undef NO_FINALIZE diff --git a/lib/unictype/Makefile b/lib/unictype/Makefile new file mode 100644 index 000000000..d56ec316d --- /dev/null +++ b/lib/unictype/Makefile @@ -0,0 +1,20 @@ +# Makefile for generating the table files from unicode.org data. + +ARCHIVE_DIR = /gfs/ibook/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions +VERSION = 5.0.0 +UCD_DIR = $(ARCHIVE_DIR)/$(VERSION)/ucd + +EXTRA_DIST = gen-ctype.c 3levelbit.h 3level.h + +all: force + gcc -g -Wall gen-ctype.c -o gen-ctype + ./gen-ctype $(UCD_DIR)/UnicodeData.txt \ + $(UCD_DIR)/PropList.txt \ + $(UCD_DIR)/DerivedCoreProperties.txt \ + $(UCD_DIR)/Scripts.txt \ + $(UCD_DIR)/Blocks.txt \ + $(ARCHIVE_DIR)/3.0.1/PropList-3.0.1.txt \ + $(VERSION) + mv test-* ../../tests/unictype/ + +force: diff --git a/lib/unictype/bidi_byname.c b/lib/unictype/bidi_byname.c new file mode 100644 index 000000000..8a6cb71ac --- /dev/null +++ b/lib/unictype/bidi_byname.c @@ -0,0 +1,171 @@ +/* Bidi categories of Unicode characters. + Copyright (C) 2002, 2006 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +int +uc_bidi_category_byname (const char *category_name) +{ + switch (category_name[0]) + { + case 'A': + switch (category_name[1]) + { + case 'L': + if (category_name[2] == '\0') + return UC_BIDI_AL; + break; + case 'N': + if (category_name[2] == '\0') + return UC_BIDI_AN; + break; + } + break; + case 'B': + switch (category_name[1]) + { + case '\0': + return UC_BIDI_B; + case 'N': + if (category_name[2] == '\0') + return UC_BIDI_BN; + break; + } + break; + case 'C': + switch (category_name[1]) + { + case 'S': + if (category_name[2] == '\0') + return UC_BIDI_CS; + break; + } + break; + case 'E': + switch (category_name[1]) + { + case 'N': + if (category_name[2] == '\0') + return UC_BIDI_EN; + break; + case 'S': + if (category_name[2] == '\0') + return UC_BIDI_ES; + break; + case 'T': + if (category_name[2] == '\0') + return UC_BIDI_ET; + break; + } + break; + case 'L': + switch (category_name[1]) + { + case '\0': + return UC_BIDI_L; + case 'R': + switch (category_name[2]) + { + case 'E': + if (category_name[3] == '\0') + return UC_BIDI_LRE; + break; + case 'O': + if (category_name[3] == '\0') + return UC_BIDI_LRO; + break; + } + break; + } + break; + case 'N': + switch (category_name[1]) + { + case 'S': + switch (category_name[2]) + { + case 'M': + if (category_name[3] == '\0') + return UC_BIDI_NSM; + break; + } + break; + } + break; + case 'O': + switch (category_name[1]) + { + case 'N': + if (category_name[2] == '\0') + return UC_BIDI_ON; + break; + } + break; + case 'P': + switch (category_name[1]) + { + case 'D': + switch (category_name[2]) + { + case 'F': + if (category_name[3] == '\0') + return UC_BIDI_PDF; + break; + } + break; + } + break; + case 'R': + switch (category_name[1]) + { + case '\0': + return UC_BIDI_R; + case 'L': + switch (category_name[2]) + { + case 'E': + if (category_name[3] == '\0') + return UC_BIDI_RLE; + break; + case 'O': + if (category_name[3] == '\0') + return UC_BIDI_RLO; + break; + } + break; + } + break; + case 'S': + if (category_name[1] == '\0') + return UC_BIDI_S; + break; + case 'W': + switch (category_name[1]) + { + case 'S': + if (category_name[2] == '\0') + return UC_BIDI_WS; + break; + } + break; + } + /* Invalid category name. */ + return -1; +} diff --git a/lib/unictype/bidi_name.c b/lib/unictype/bidi_name.c new file mode 100644 index 000000000..765297680 --- /dev/null +++ b/lib/unictype/bidi_name.c @@ -0,0 +1,35 @@ +/* Bidi categories of Unicode characters. + Copyright (C) 2002, 2006 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +static const char u_bidi_category_name[19][4] = +{ + "L", "LRE", "LRO", "R", "AL", "RLE", "RLO", "PDF", "EN", "ES", + "ET", "AN", "CS", "NSM", "BN", "B", "S", "WS", "ON" +}; + +const char * +uc_bidi_category_name (int category) +{ + if (category >= 0 && category < sizeof (u_bidi_category_name) / sizeof (u_bidi_category_name[0])) + return u_bidi_category_name[category]; + return NULL; +} diff --git a/lib/unictype/bidi_of.c b/lib/unictype/bidi_of.c new file mode 100644 index 000000000..93fc7a8b5 --- /dev/null +++ b/lib/unictype/bidi_of.c @@ -0,0 +1,52 @@ +/* Bidi categories of Unicode characters. + Copyright (C) 2002, 2006 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_bidi_category table. */ +#include "bidi_of.h" + +int +uc_bidi_category (ucs4_t uc) +{ + unsigned int index1 = uc >> bidi_category_header_0; + if (index1 < bidi_category_header_1) + { + int lookup1 = u_bidi_category.level1[index1]; + if (lookup1 >= 0) + { + unsigned int index2 = (uc >> bidi_category_header_2) & bidi_category_header_3; + int lookup2 = u_bidi_category.level2[lookup1 + index2]; + if (lookup2 >= 0) + { + unsigned int index3 = ((uc & bidi_category_header_4) + lookup2) * 5; + /* level3 contains 5-bit values, packed into 16-bit words. */ + unsigned int lookup3 = + ((u_bidi_category.level3[index3>>4] + | (u_bidi_category.level3[(index3>>4)+1] << 16)) + >> (index3 % 16)) + & 0x1f; + + return lookup3; + } + } + } + return UC_BIDI_L; +} diff --git a/lib/unictype/bidi_of.h b/lib/unictype/bidi_of.h new file mode 100644 index 000000000..065b71fba --- /dev/null +++ b/lib/unictype/bidi_of.h @@ -0,0 +1,734 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Bidi categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define bidi_category_header_0 16 +#define bidi_category_header_1 17 +#define bidi_category_header_2 7 +#define bidi_category_header_3 511 +#define bidi_category_header_4 127 +static const +struct + { + int level1[17]; + short level2[4 << 9]; + unsigned short level3[90 * 40 + 1]; + } +u_bidi_category = +{ + { + 0, 512, 1024, 1024, 1024, 1024, 1024, 1024, + 1024, 1024, 1024, 1024, 1024, 1024, 1536, 1024, + 1024 + }, + { + 0, 128, -1, -1, -1, 256, 384, 512, + -1, 640, -1, 768, 896, 1024, 1152, 1280, + 1408, 1408, 1536, 1664, 1792, 1920, 2048, 2176, + 2304, 2432, 2560, 2688, 2816, 2944, 3072, 3200, + 3328, -1, -1, -1, -1, -1, 3456, 3584, + -1, -1, -1, -1, -1, 3712, 3840, 3968, + 4096, 4224, 4352, 4480, 4608, -1, 4736, -1, + -1, -1, -1, 4864, -1, -1, -1, 4992, + 5120, 5248, 5376, 5504, 5632, 5760, 5888, 6016, + 6144, 6272, 5760, 5760, 5760, 6400, 6528, 6656, + -1, -1, 5760, 5760, 5760, 5760, 6784, -1, + -1, 6912, -1, -1, 7040, 7168, 5760, 7296, + 7424, 7552, -1, 7680, 7808, 7936, 8064, 8192, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 8320, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, 8448, -1, -1, -1, -1, 8576, -1, + 8704, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 8832, 8960, + 8960, 8960, 9088, 9216, 9344, 9472, 9600, 9728, + -1, -1, 9856, 9984, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 1408, 1408, 10112, 1408, 10240, 1408, 1408, 1408, + 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1408, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 10368, 10496, 10624, -1, 10752, -1, + -1, -1, -1, -1, -1, -1, -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, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 11008, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 11008, + 11136, 11136, 11264, 11392, 11136, 11136, 11136, 11136, + 11136, 11136, 11136, 11136, 11136, 11136, 11136, 11136, + 11136, 11136, 11136, 11136, 11136, 11136, 11136, 11136, + 11136, 11136, 11136, 11136, 11136, 11136, 11136, 11136, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 11008 + }, + { + 0x39ce, 0x9ce7, 0x0e73, 0x183e, 0x739f, 0x39ce, 0x9ce7, 0xce73, + 0xf739, 0x83de, 0x4a51, 0x94a5, 0x5294, 0xc4ca, 0x6312, 0x2108, + 0x1084, 0x0842, 0x2931, 0x94a5, 0x0012, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x2900, 0x94a5, 0x0012, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2900, 0x74a5, + 0x39ce, 0x9ee7, 0xce73, 0xe739, 0x739c, 0x39ce, 0x9ce7, 0xce73, + 0xe739, 0x739c, 0x2a4c, 0x94a5, 0x5294, 0x2902, 0x949d, 0x214a, + 0x8124, 0x1294, 0x2901, 0x94a5, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0090, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0090, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x4000, 0x004a, 0x0000, 0x4800, 0xa529, 0x5294, 0x294a, + 0x94a5, 0x4800, 0xa529, 0x5294, 0x294a, 0x94a5, 0x0000, 0xa400, + 0x5294, 0x294a, 0x9025, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, + 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, 0x0000, 0x2520, 0x0000, 0x0000, 0x0480, + 0x0000, 0x2520, 0x0090, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 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, 0x0004, 0x0000, 0x0000, + 0x8000, 0x5ad6, 0xad03, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0048, 0x0000, 0xb5a3, 0x5ad6, 0xad6b, + 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, + 0x5ad6, 0xad6b, 0xd6b5, 0x68da, 0xb5a3, 0xdad1, 0x6368, 0x318c, + 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, + 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, + 0x1084, 0x0842, 0x8421, 0xc210, 0x9488, 0xb5ad, 0x1ad6, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0xd690, + 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x235a, 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, 0x6b48, 0xb5ad, 0x08d6, + 0x4d69, 0xd6b6, 0x211a, 0x2108, 0x1084, 0x0842, 0x4211, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0x7108, 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, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x4842, 0xad6b, 0xd6b5, 0x6b5a, 0x108d, + 0x0842, 0x8421, 0x4210, 0x2108, 0x8c63, 0xc631, 0x6318, 0x318c, + 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, + 0x6318, 0xd68c, 0x6b5a, 0xb5ad, 0x8636, 0x5294, 0x318e, 0x18c6, + 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, + 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, + 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, + 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, + 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, + 0x35a0, 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, 0x00d6, 0x0000, 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, + 0x0000, 0x0000, 0xd000, 0x0000, 0xb5a0, 0x00d6, 0x0000, 0x0000, + 0x001a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xb400, 0x0006, + 0x0000, 0x0000, 0x0000, 0x2800, 0x0005, 0x0000, 0x0000, 0x0000, + 0x35a0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0xd000, 0x0000, 0x35a0, 0x0000, 0x0d68, 0xd680, + 0x001a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x01ad, 0x0000, 0x0000, 0x0000, 0x0000, + 0x35a0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0xd000, 0x0000, 0xb5a0, 0x1ad6, 0x0d68, 0x0000, + 0x001a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xb400, 0x0006, + 0x0000, 0x0000, 0x0000, 0x0140, 0x0000, 0x0000, 0x0000, 0x0000, + 0x01a0, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0xd000, 0x6800, 0xb5a0, 0x0006, 0x0000, 0x0000, + 0x001a, 0x0000, 0x4000, 0x0003, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x3400, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x000d, 0x0000, 0x0000, 0x0000, + 0x001a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xa529, 0x5294, 0x0049, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x6b40, 0x000d, 0x4000, 0x0d6b, 0xd6b4, + 0x001a, 0x0000, 0x5a00, 0x0003, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 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, 0xb5a0, 0x0006, 0x0000, 0x0000, + 0x001a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0034, + 0x0000, 0xb400, 0x40d6, 0x0003, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x01a0, + 0x5ad0, 0xad6b, 0x0035, 0x5000, 0x0000, 0x0000, 0xad68, 0xd6b5, + 0x035a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x01a0, + 0x5ad0, 0xad6b, 0xd681, 0x0000, 0x0000, 0x0000, 0xad00, 0xd6b5, + 0x001a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xad00, + 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 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, + 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, + 0x5ad6, 0xad6b, 0xd6b5, 0x0000, 0x0000, 0x4000, 0x0003, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6b5a, 0x340d, + 0x4000, 0xa06b, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 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, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6800, 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, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0011, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x2900, 0x0001, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xb400, 0x00d6, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xb400, + 0x00d6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0xb400, 0x0006, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xb400, 0x0006, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0xad68, 0xd6b5, 0x001a, 0x0000, 0x4000, 0xa003, 0xd6b5, + 0x6b5a, 0xb5ad, 0x0006, 0x0000, 0x0500, 0x001a, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x4a52, 0xa529, 0x5294, 0x0002, 0x0000, + 0x4a52, 0xa529, 0x5294, 0xd6ca, 0x045a, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xa000, 0x0001, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x35ad, 0x0000, 0xad68, 0x06b5, 0x0000, 0x3400, + 0x0000, 0xa000, 0x06b5, 0x0000, 0x0012, 0x2520, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x9480, 0x4a52, 0xa529, + 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0d68, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 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, 0x0006, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x40d0, 0xad6b, 0xd035, 0x0000, 0x3400, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0xd680, 0x6b5a, 0xb5ad, 0x0006, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xb5ad, 0x5ad6, 0xad6b, 0x0035, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6b40, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x9024, 0x0252, 0x0000, 0x0000, 0x0000, + 0x94a4, 0x0000, 0x0000, 0x0000, 0x0000, 0x94a4, 0x0000, 0x0000, + 0x0000, 0x0000, 0x94a4, 0x0000, 0x0000, 0x0000, 0x0000, 0x04a4, + 0xc631, 0x6318, 0x318c, 0xe746, 0x181c, 0x4a52, 0xa529, 0x5294, + 0x294a, 0x94a5, 0x4a52, 0xa529, 0xf194, 0x7285, 0x6184, 0x294a, + 0xa4a5, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa4c9, 0x5294, 0x294a, + 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x8ca5, 0x39ce, 0x0847, + 0x8421, 0xe738, 0x739c, 0x0008, 0x1080, 0x0842, 0x24a5, 0x04a5, + 0x2108, 0x1084, 0x0842, 0x24a5, 0x04a5, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, + 0x14a5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, + 0xad6b, 0xd6b5, 0x6b5a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0252, 0xa529, 0x5204, 0x0002, 0x0000, 0x0000, 0x8120, 0x1294, + 0x0000, 0x9480, 0x4a52, 0x2409, 0x4090, 0x0002, 0x0280, 0x0000, + 0x0000, 0x0000, 0x0948, 0x0000, 0x4a52, 0x0129, 0x0000, 0x2948, + 0x0025, 0x0000, 0xa529, 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, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, + 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, + 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x2652, 0xa525, 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, 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, + 0x2529, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2900, 0x94a5, + 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0x8129, 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, + 0x0094, 0x0000, 0x0000, 0x0000, 0x0000, 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, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4a52, 0xa529, + 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, + 0x4a52, 0xa529, 0x0894, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x0421, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x2948, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, + 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, + 0x294a, 0x0001, 0x4a52, 0xa529, 0x5294, 0x094a, 0x94a4, 0x4a52, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 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, 0x5204, 0x294a, 0x04a5, 0x4a40, 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, 0x004a, + 0x0000, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, + 0x5294, 0x094a, 0x0000, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, + 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, + 0x004a, 0x0000, 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, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa400, + 0x5294, 0x004a, 0x0000, 0x0000, 0x0000, 0x4000, 0x294a, 0x94a5, + 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x0094, + 0x2000, 0x0025, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, + 0x2902, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, + 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, + 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, + 0x5294, 0x294a, 0x94a5, 0x4a52, 0x0009, 0x0000, 0x0000, 0x0000, + 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, + 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, + 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, + 0x94a5, 0x4a52, 0x2529, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x4a52, 0xa529, 0x5294, 0x094a, 0x0000, + 0x4a51, 0x0129, 0x5200, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, + 0x294a, 0x94a5, 0x0012, 0x0000, 0x0000, 0xd6b4, 0x6b5a, 0x0012, + 0x8000, 0x0094, 0x0000, 0x94a4, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa000, + 0x2935, 0x0001, 0x0012, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0900, 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, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x04a4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2000, 0x04a5, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4a40, + 0xa529, 0x5294, 0x294a, 0x94a5, 0x0000, 0x0000, 0x0000, 0x2000, + 0x94a5, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5290, 0x004a, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x9480, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x9000, + 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, 0x4a52, 0xa529, + 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4a52, 0xa529, 0x5294, + 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, + 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x0004, 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, + 0x004a, 0x0000, 0x0252, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x3400, 0x4000, 0x0003, 0x0680, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x5a00, 0x5203, 0x094a, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xa520, 0x0094, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x1b46, 0x8c63, 0xc631, 0x2318, 0x318d, 0x18c6, 0x8c63, + 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, + 0x18c6, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x9488, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x39ce, 0x9ce7, 0xce73, 0xe739, 0x739c, 0x39ce, 0x9ce7, + 0xce73, 0xe739, 0x739c, 0x1084, 0x0842, 0x8421, 0x4210, 0x2124, + 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0x4a52, 0xa529, 0x5294, + 0x4212, 0x2108, 0xb5ad, 0x0846, 0x8421, 0x4210, 0x2108, 0x4a52, + 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, + 0x94a5, 0x324c, 0x9922, 0x5294, 0x294a, 0x54a5, 0xa652, 0xa524, + 0x5224, 0x4929, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x7108, + 0x4a40, 0x94a5, 0x5294, 0xc4ca, 0x6312, 0x2108, 0x1084, 0x0842, + 0x2931, 0x94a5, 0x0012, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x2900, 0x94a5, 0x0012, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x2900, 0x94a5, 0x4a52, 0x2529, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x494a, 0x9529, + 0x5202, 0x294a, 0x04a5, 0x39ce, 0x9ce7, 0x4e73, 0x294a, 0x73a5, + 0x0240, 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, 0x4a52, 0xa529, + 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, + 0x4a52, 0xa529, 0x5294, 0x004a, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, + 0x318c, 0x90c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, + 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, + 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, + 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, + 0xb5a3, 0x5a36, 0x631b, 0xd18c, 0x6b5a, 0x8c63, 0xc631, 0x6318, + 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, + 0xc631, 0xad18, 0x31b5, 0x68c6, 0x8c63, 0xc631, 0x6318, 0x318c, + 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, + 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xad68, 0x0001, 0x0000, 0x0000, 0x9ce7, 0xce73, 0xd6b9, 0x6b5a, + 0x35ad, 0x5a00, 0xad6b, 0x06b5, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd6b4, 0x001a, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, + 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, + 0xa529, 0x5294, 0x294a, 0x94a5, 0xb652, 0x24d6, 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, 0x0004, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x4200, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7380, + 0x39ce, 0x9ce7, 0xce73, 0xe739, 0x739c, 0x39ce, 0x9ce7, 0xce73, + 0xe739, 0x739c, 0x39ce, 0x9ce7, 0xce73, 0xe739, 0x739c, 0x39ce, + 0x9ce7, 0xce73, 0xe739, 0x739c, 0x39ce, 0x9ce7, 0xce73, 0xe739, + 0x739c, 0x39ce, 0x9ce7, 0xce73, 0xe739, 0x739c, 0x39ce, 0x9ce7, + 0xce73, 0xe739, 0x739c, 0x39ce, 0x9ce7, 0xce73, 0xe739, 0x739c, + 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, 0xb5ad, + 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, + 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, + 0xad6b, 0xd6b5, 0x6b5a, 0x39ce, 0x9ce7, 0xce73, 0xe739, 0x739c, + 0x0000 + } +}; diff --git a/lib/unictype/bidi_test.c b/lib/unictype/bidi_test.c new file mode 100644 index 000000000..72887bbc9 --- /dev/null +++ b/lib/unictype/bidi_test.c @@ -0,0 +1,27 @@ +/* Bidi categories of Unicode characters. + Copyright (C) 2002, 2006 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +bool +uc_is_bidi_category (ucs4_t uc, int category) +{ + return (uc_bidi_category (uc) == category); +} diff --git a/lib/unictype/bitmap.h b/lib/unictype/bitmap.h new file mode 100644 index 000000000..280b29855 --- /dev/null +++ b/lib/unictype/bitmap.h @@ -0,0 +1,47 @@ +/* Three-level bitmap lookup. + Copyright (C) 2000-2002, 2005-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2000-2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +static inline int bitmap_lookup (const void *table, ucs4_t uc); + +/* These values are currently hardcoded into gen-ctype.c. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 + +static inline int +bitmap_lookup (const void *table, ucs4_t uc) +{ + unsigned int index1 = uc >> header_0; + if (index1 < ((const int *) table)[0]) + { + int lookup1 = ((const int *) table)[1 + index1]; + if (lookup1 >= 0) + { + unsigned int index2 = (uc >> header_2) & header_3; + int lookup2 = ((const short *) table)[lookup1 + index2]; + if (lookup2 >= 0) + { + unsigned int index3 = (uc >> 5) & header_4; + unsigned int lookup3 = ((const int *) table)[lookup2 + index3]; + + return (lookup3 >> (uc & 0x1f)) & 1; + } + } + } + return 0; +} diff --git a/lib/unictype/block_test.c b/lib/unictype/block_test.c new file mode 100644 index 000000000..4005ad04a --- /dev/null +++ b/lib/unictype/block_test.c @@ -0,0 +1,31 @@ +/* Blocks of Unicode characters. + Copyright (C) 2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2007. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +bool +uc_is_block (ucs4_t uc, const uc_block_t *block) +{ + if (block != NULL) + return ((ucs4_t) (uc - block->start) <= block->end - block->start); + else + return false; +} + diff --git a/lib/unictype/blocks.c b/lib/unictype/blocks.c new file mode 100644 index 000000000..a20bbcee7 --- /dev/null +++ b/lib/unictype/blocks.c @@ -0,0 +1,62 @@ +/* Blocks of Unicode characters. + Copyright (C) 2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2007. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "blocks.h" + +const uc_block_t * +uc_block (ucs4_t uc) +{ + unsigned int first_index; + unsigned int last_index; + + if (uc < blocks_level1_threshold) + { + unsigned int index1 = uc >> blocks_level1_shift; + first_index = blocks_level1[2 * index1]; + last_index = blocks_level1[2 * index1 + 1]; + } + else + { + first_index = blocks_upper_first_index; + last_index = blocks_upper_last_index; + } + /* We know that the relevant blocks are blocks[i] with + first_index <= i < last_index. Now perform a binary search. */ + while (first_index < last_index) + { + unsigned int mid_index = (first_index + last_index) / 2; + if (blocks[mid_index].end < uc) + first_index = mid_index + 1; + else if (uc < blocks[mid_index].start) + last_index = mid_index; + else + return &blocks[mid_index]; + } + return NULL; +} + +void +uc_all_blocks (const uc_block_t **blocksp, size_t *countp) +{ + *blocksp = blocks; + *countp = sizeof (blocks) / sizeof (blocks[0]); +} diff --git a/lib/unictype/blocks.h b/lib/unictype/blocks.h new file mode 100644 index 000000000..0a37bab75 --- /dev/null +++ b/lib/unictype/blocks.h @@ -0,0 +1,935 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Unicode blocks. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +static const uc_block_t blocks[] = +{ + { 0x0000, 0x007F, "Basic Latin" }, + { 0x0080, 0x00FF, "Latin-1 Supplement" }, + { 0x0100, 0x017F, "Latin Extended-A" }, + { 0x0180, 0x024F, "Latin Extended-B" }, + { 0x0250, 0x02AF, "IPA Extensions" }, + { 0x02B0, 0x02FF, "Spacing Modifier Letters" }, + { 0x0300, 0x036F, "Combining Diacritical Marks" }, + { 0x0370, 0x03FF, "Greek and Coptic" }, + { 0x0400, 0x04FF, "Cyrillic" }, + { 0x0500, 0x052F, "Cyrillic Supplement" }, + { 0x0530, 0x058F, "Armenian" }, + { 0x0590, 0x05FF, "Hebrew" }, + { 0x0600, 0x06FF, "Arabic" }, + { 0x0700, 0x074F, "Syriac" }, + { 0x0750, 0x077F, "Arabic Supplement" }, + { 0x0780, 0x07BF, "Thaana" }, + { 0x07C0, 0x07FF, "NKo" }, + { 0x0900, 0x097F, "Devanagari" }, + { 0x0980, 0x09FF, "Bengali" }, + { 0x0A00, 0x0A7F, "Gurmukhi" }, + { 0x0A80, 0x0AFF, "Gujarati" }, + { 0x0B00, 0x0B7F, "Oriya" }, + { 0x0B80, 0x0BFF, "Tamil" }, + { 0x0C00, 0x0C7F, "Telugu" }, + { 0x0C80, 0x0CFF, "Kannada" }, + { 0x0D00, 0x0D7F, "Malayalam" }, + { 0x0D80, 0x0DFF, "Sinhala" }, + { 0x0E00, 0x0E7F, "Thai" }, + { 0x0E80, 0x0EFF, "Lao" }, + { 0x0F00, 0x0FFF, "Tibetan" }, + { 0x1000, 0x109F, "Myanmar" }, + { 0x10A0, 0x10FF, "Georgian" }, + { 0x1100, 0x11FF, "Hangul Jamo" }, + { 0x1200, 0x137F, "Ethiopic" }, + { 0x1380, 0x139F, "Ethiopic Supplement" }, + { 0x13A0, 0x13FF, "Cherokee" }, + { 0x1400, 0x167F, "Unified Canadian Aboriginal Syllabics" }, + { 0x1680, 0x169F, "Ogham" }, + { 0x16A0, 0x16FF, "Runic" }, + { 0x1700, 0x171F, "Tagalog" }, + { 0x1720, 0x173F, "Hanunoo" }, + { 0x1740, 0x175F, "Buhid" }, + { 0x1760, 0x177F, "Tagbanwa" }, + { 0x1780, 0x17FF, "Khmer" }, + { 0x1800, 0x18AF, "Mongolian" }, + { 0x1900, 0x194F, "Limbu" }, + { 0x1950, 0x197F, "Tai Le" }, + { 0x1980, 0x19DF, "New Tai Lue" }, + { 0x19E0, 0x19FF, "Khmer Symbols" }, + { 0x1A00, 0x1A1F, "Buginese" }, + { 0x1B00, 0x1B7F, "Balinese" }, + { 0x1D00, 0x1D7F, "Phonetic Extensions" }, + { 0x1D80, 0x1DBF, "Phonetic Extensions Supplement" }, + { 0x1DC0, 0x1DFF, "Combining Diacritical Marks Supplement" }, + { 0x1E00, 0x1EFF, "Latin Extended Additional" }, + { 0x1F00, 0x1FFF, "Greek Extended" }, + { 0x2000, 0x206F, "General Punctuation" }, + { 0x2070, 0x209F, "Superscripts and Subscripts" }, + { 0x20A0, 0x20CF, "Currency Symbols" }, + { 0x20D0, 0x20FF, "Combining Diacritical Marks for Symbols" }, + { 0x2100, 0x214F, "Letterlike Symbols" }, + { 0x2150, 0x218F, "Number Forms" }, + { 0x2190, 0x21FF, "Arrows" }, + { 0x2200, 0x22FF, "Mathematical Operators" }, + { 0x2300, 0x23FF, "Miscellaneous Technical" }, + { 0x2400, 0x243F, "Control Pictures" }, + { 0x2440, 0x245F, "Optical Character Recognition" }, + { 0x2460, 0x24FF, "Enclosed Alphanumerics" }, + { 0x2500, 0x257F, "Box Drawing" }, + { 0x2580, 0x259F, "Block Elements" }, + { 0x25A0, 0x25FF, "Geometric Shapes" }, + { 0x2600, 0x26FF, "Miscellaneous Symbols" }, + { 0x2700, 0x27BF, "Dingbats" }, + { 0x27C0, 0x27EF, "Miscellaneous Mathematical Symbols-A" }, + { 0x27F0, 0x27FF, "Supplemental Arrows-A" }, + { 0x2800, 0x28FF, "Braille Patterns" }, + { 0x2900, 0x297F, "Supplemental Arrows-B" }, + { 0x2980, 0x29FF, "Miscellaneous Mathematical Symbols-B" }, + { 0x2A00, 0x2AFF, "Supplemental Mathematical Operators" }, + { 0x2B00, 0x2BFF, "Miscellaneous Symbols and Arrows" }, + { 0x2C00, 0x2C5F, "Glagolitic" }, + { 0x2C60, 0x2C7F, "Latin Extended-C" }, + { 0x2C80, 0x2CFF, "Coptic" }, + { 0x2D00, 0x2D2F, "Georgian Supplement" }, + { 0x2D30, 0x2D7F, "Tifinagh" }, + { 0x2D80, 0x2DDF, "Ethiopic Extended" }, + { 0x2E00, 0x2E7F, "Supplemental Punctuation" }, + { 0x2E80, 0x2EFF, "CJK Radicals Supplement" }, + { 0x2F00, 0x2FDF, "Kangxi Radicals" }, + { 0x2FF0, 0x2FFF, "Ideographic Description Characters" }, + { 0x3000, 0x303F, "CJK Symbols and Punctuation" }, + { 0x3040, 0x309F, "Hiragana" }, + { 0x30A0, 0x30FF, "Katakana" }, + { 0x3100, 0x312F, "Bopomofo" }, + { 0x3130, 0x318F, "Hangul Compatibility Jamo" }, + { 0x3190, 0x319F, "Kanbun" }, + { 0x31A0, 0x31BF, "Bopomofo Extended" }, + { 0x31C0, 0x31EF, "CJK Strokes" }, + { 0x31F0, 0x31FF, "Katakana Phonetic Extensions" }, + { 0x3200, 0x32FF, "Enclosed CJK Letters and Months" }, + { 0x3300, 0x33FF, "CJK Compatibility" }, + { 0x3400, 0x4DBF, "CJK Unified Ideographs Extension A" }, + { 0x4DC0, 0x4DFF, "Yijing Hexagram Symbols" }, + { 0x4E00, 0x9FFF, "CJK Unified Ideographs" }, + { 0xA000, 0xA48F, "Yi Syllables" }, + { 0xA490, 0xA4CF, "Yi Radicals" }, + { 0xA700, 0xA71F, "Modifier Tone Letters" }, + { 0xA720, 0xA7FF, "Latin Extended-D" }, + { 0xA800, 0xA82F, "Syloti Nagri" }, + { 0xA840, 0xA87F, "Phags-pa" }, + { 0xAC00, 0xD7AF, "Hangul Syllables" }, + { 0xD800, 0xDB7F, "High Surrogates" }, + { 0xDB80, 0xDBFF, "High Private Use Surrogates" }, + { 0xDC00, 0xDFFF, "Low Surrogates" }, + { 0xE000, 0xF8FF, "Private Use Area" }, + { 0xF900, 0xFAFF, "CJK Compatibility Ideographs" }, + { 0xFB00, 0xFB4F, "Alphabetic Presentation Forms" }, + { 0xFB50, 0xFDFF, "Arabic Presentation Forms-A" }, + { 0xFE00, 0xFE0F, "Variation Selectors" }, + { 0xFE10, 0xFE1F, "Vertical Forms" }, + { 0xFE20, 0xFE2F, "Combining Half Marks" }, + { 0xFE30, 0xFE4F, "CJK Compatibility Forms" }, + { 0xFE50, 0xFE6F, "Small Form Variants" }, + { 0xFE70, 0xFEFF, "Arabic Presentation Forms-B" }, + { 0xFF00, 0xFFEF, "Halfwidth and Fullwidth Forms" }, + { 0xFFF0, 0xFFFF, "Specials" }, + { 0x10000, 0x1007F, "Linear B Syllabary" }, + { 0x10080, 0x100FF, "Linear B Ideograms" }, + { 0x10100, 0x1013F, "Aegean Numbers" }, + { 0x10140, 0x1018F, "Ancient Greek Numbers" }, + { 0x10300, 0x1032F, "Old Italic" }, + { 0x10330, 0x1034F, "Gothic" }, + { 0x10380, 0x1039F, "Ugaritic" }, + { 0x103A0, 0x103DF, "Old Persian" }, + { 0x10400, 0x1044F, "Deseret" }, + { 0x10450, 0x1047F, "Shavian" }, + { 0x10480, 0x104AF, "Osmanya" }, + { 0x10800, 0x1083F, "Cypriot Syllabary" }, + { 0x10900, 0x1091F, "Phoenician" }, + { 0x10A00, 0x10A5F, "Kharoshthi" }, + { 0x12000, 0x123FF, "Cuneiform" }, + { 0x12400, 0x1247F, "Cuneiform Numbers and Punctuation" }, + { 0x1D000, 0x1D0FF, "Byzantine Musical Symbols" }, + { 0x1D100, 0x1D1FF, "Musical Symbols" }, + { 0x1D200, 0x1D24F, "Ancient Greek Musical Notation" }, + { 0x1D300, 0x1D35F, "Tai Xuan Jing Symbols" }, + { 0x1D360, 0x1D37F, "Counting Rod Numerals" }, + { 0x1D400, 0x1D7FF, "Mathematical Alphanumeric Symbols" }, + { 0x20000, 0x2A6DF, "CJK Unified Ideographs Extension B" }, + { 0x2F800, 0x2FA1F, "CJK Compatibility Ideographs Supplement" }, + { 0xE0000, 0xE007F, "Tags" }, + { 0xE0100, 0xE01EF, "Variation Selectors Supplement" }, + { 0xF0000, 0xFFFFF, "Supplementary Private Use Area-A" }, + { 0x100000, 0x10FFFF, "Supplementary Private Use Area-B" } +}; +#define blocks_level1_shift 8 +#define blocks_level1_threshold 0x30000 +static const uint8_t blocks_level1[768 * 2] = +{ + 0, 2, + 2, 4, + 3, 6, + 6, 8, + 8, 9, + 9, 12, + 12, 13, + 13, 17, + 17, 17, + 17, 19, + 19, 21, + 21, 23, + 23, 25, + 25, 27, + 27, 29, + 29, 30, + 30, 32, + 32, 33, + 33, 34, + 33, 36, + 36, 37, + 36, 37, + 36, 39, + 39, 44, + 44, 45, + 45, 49, + 49, 50, + 50, 51, + 51, 51, + 51, 54, + 54, 55, + 55, 56, + 56, 60, + 60, 63, + 63, 64, + 64, 65, + 65, 68, + 68, 71, + 71, 72, + 72, 75, + 75, 76, + 76, 78, + 78, 79, + 79, 80, + 80, 83, + 83, 86, + 86, 88, + 88, 90, + 90, 93, + 93, 99, + 99, 100, + 100, 101, + 101, 102, + 101, 102, + 101, 102, + 101, 102, + 101, 102, + 101, 102, + 101, 102, + 101, 102, + 101, 102, + 101, 102, + 101, 102, + 101, 102, + 101, 102, + 101, 102, + 101, 102, + 101, 102, + 101, 102, + 101, 102, + 101, 102, + 101, 102, + 101, 102, + 101, 102, + 101, 102, + 101, 102, + 101, 102, + 101, 103, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 103, 104, + 104, 105, + 104, 105, + 104, 105, + 104, 105, + 104, 106, + 106, 106, + 106, 106, + 106, 108, + 108, 110, + 110, 110, + 110, 110, + 110, 110, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 110, 111, + 111, 112, + 111, 112, + 111, 112, + 111, 113, + 113, 114, + 113, 114, + 113, 114, + 113, 114, + 114, 115, + 114, 115, + 114, 115, + 114, 115, + 114, 115, + 114, 115, + 114, 115, + 114, 115, + 114, 115, + 114, 115, + 114, 115, + 114, 115, + 114, 115, + 114, 115, + 114, 115, + 114, 115, + 114, 115, + 114, 115, + 114, 115, + 114, 115, + 114, 115, + 114, 115, + 114, 115, + 114, 115, + 114, 115, + 115, 116, + 115, 116, + 116, 118, + 117, 118, + 117, 118, + 118, 124, + 124, 126, + 126, 128, + 128, 130, + 130, 130, + 130, 134, + 134, 137, + 137, 137, + 137, 137, + 137, 137, + 137, 138, + 138, 139, + 139, 140, + 140, 140, + 140, 140, + 140, 140, + 140, 140, + 140, 140, + 140, 140, + 140, 140, + 140, 140, + 140, 140, + 140, 140, + 140, 140, + 140, 140, + 140, 140, + 140, 140, + 140, 140, + 140, 140, + 140, 140, + 140, 140, + 140, 140, + 140, 140, + 140, 140, + 140, 141, + 140, 141, + 140, 141, + 140, 141, + 141, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 142, + 142, 143, + 143, 144, + 144, 145, + 145, 147, + 147, 148, + 147, 148, + 147, 148, + 147, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 148, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 148, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 149, + 149, 150, + 149, 150, + 149, 150, + 150, 150, + 150, 150, + 150, 150, + 150, 150, + 150, 150 +}; +#define blocks_upper_first_index 150 +#define blocks_upper_last_index 154 diff --git a/lib/unictype/categ_C.c b/lib/unictype/categ_C.c new file mode 100644 index 000000000..d14d8c095 --- /dev/null +++ b/lib/unictype/categ_C.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_C table. */ +#include "categ_C.h" + +const uc_general_category_t UC_CATEGORY_C = + { UC_CATEGORY_MASK_C, 0, { &u_categ_C } }; diff --git a/lib/unictype/categ_C.h b/lib/unictype/categ_C.h new file mode 100644 index 000000000..92b4de12b --- /dev/null +++ b/lib/unictype/categ_C.h @@ -0,0 +1,882 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[17]; + short level2[5 << 7]; + /*unsigned*/ int level3[50 << 4]; + } +u_categ_C = +{ + { 17 }, + { + 18 * sizeof (int) / sizeof (short) + 0, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 512, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 384 + }, + { + 18 + 640 * sizeof (short) / sizeof (int) + 0, + 18 + 640 * sizeof (short) / sizeof (int) + 16, + 18 + 640 * sizeof (short) / sizeof (int) + 32, + 18 + 640 * sizeof (short) / sizeof (int) + 48, + 18 + 640 * sizeof (short) / sizeof (int) + 64, + 18 + 640 * sizeof (short) / sizeof (int) + 80, + 18 + 640 * sizeof (short) / sizeof (int) + 96, + 18 + 640 * sizeof (short) / sizeof (int) + 112, + 18 + 640 * sizeof (short) / sizeof (int) + 128, + 18 + 640 * sizeof (short) / sizeof (int) + 144, + 18 + 640 * sizeof (short) / sizeof (int) + 160, + 18 + 640 * sizeof (short) / sizeof (int) + 176, + 18 + 640 * sizeof (short) / sizeof (int) + 192, + 18 + 640 * sizeof (short) / sizeof (int) + 208, + 18 + 640 * sizeof (short) / sizeof (int) + 224, + 18 + 640 * sizeof (short) / sizeof (int) + 240, + 18 + 640 * sizeof (short) / sizeof (int) + 256, + 18 + 640 * sizeof (short) / sizeof (int) + 272, + 18 + 640 * sizeof (short) / sizeof (int) + 288, + 18 + 640 * sizeof (short) / sizeof (int) + 304, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 336, + 18 + 640 * sizeof (short) / sizeof (int) + 352, + 18 + 640 * sizeof (short) / sizeof (int) + 368, + 18 + 640 * sizeof (short) / sizeof (int) + 384, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 400, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 416, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 432, + 18 + 640 * sizeof (short) / sizeof (int) + 448, + 18 + 640 * sizeof (short) / sizeof (int) + 464, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 496, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 512, + 18 + 640 * sizeof (short) / sizeof (int) + 528, + 18 + 640 * sizeof (short) / sizeof (int) + 544, + 18 + 640 * sizeof (short) / sizeof (int) + 560, + 18 + 640 * sizeof (short) / sizeof (int) + 576, + 18 + 640 * sizeof (short) / sizeof (int) + 592, + 18 + 640 * sizeof (short) / sizeof (int) + 608, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 624, + 18 + 640 * sizeof (short) / sizeof (int) + 640, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 656, + 18 + 640 * sizeof (short) / sizeof (int) + 672, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 688, + 18 + 640 * sizeof (short) / sizeof (int) + 704, + 18 + 640 * sizeof (short) / sizeof (int) + 720, + 18 + 640 * sizeof (short) / sizeof (int) + 736, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 752, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 768, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 784, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + 18 + 640 * sizeof (short) / sizeof (int) + 480 + }, + { + 0xFFFFFFFF, 0x00000000, 0x00000000, 0x80000000, + 0xFFFFFFFF, 0x00002000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x83CF0000, + 0x0000280F, 0x00000004, 0x00008000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000080, 0x00000000, 0x00000000, 0x00000000, + 0xFFF00000, 0x0001FFFF, 0x01800000, 0x00000001, + 0x0001F900, 0x00000000, 0x0000FF00, 0xFFE0F800, + 0x37C007FF, 0xF8000001, 0x80000000, 0x00000000, + 0x00000000, 0x00000000, 0x20000000, 0x00000000, + 0x0000C000, 0x00000000, 0x00001800, 0xFFFFC000, + 0x00000000, 0xFFFC0000, 0x00000000, 0xF8000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000001, 0x0C000000, 0x00E0C000, 0x07FE0000, + 0x00066011, 0x0C3A0200, 0x4F7F8660, 0xF8000030, + 0x00067811, 0x2C920200, 0xA1FFC678, 0xFFE0003F, + 0x00044011, 0x0C120200, 0xFFFEC440, 0xFFFD0030, + 0x00066011, 0x0C120200, 0x4F3FC670, 0xFFFC003C, + 0x29C23813, 0x3C0038E7, 0xFF7FC238, 0xF800003F, + 0x00022011, 0x3C100200, 0xFF9FC220, 0xFFFF003C, + 0x00022013, 0x0C100200, 0xBF9FC220, 0xFFF90030, + 0x00022013, 0x3C000200, 0xFF7FC230, 0xFFFF003C, + 0x03800013, 0xD0040000, 0x00A07B80, 0xFFE3FFFF, + 0x00000001, 0x78000000, 0xF0000000, 0xFFFFFFFF, + 0x010FDA69, 0xC4001351, 0xCC00C0A0, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000100, 0x0001F800, + 0x0100F000, 0x20000000, 0xFFFC6000, 0xFFFFFFFF, + 0x00000000, 0xFC380904, 0xFC000000, 0xFFFFFFFF, + 0xFFFFFFFF, 0x00000000, 0x0000FFC0, 0xE0000000, + 0x00000000, 0x00000000, 0x7C000000, 0x00000000, + 0x00000000, 0x000000F8, 0x00000000, 0xFC000000, + 0x00000000, 0x00000000, 0xC280C200, 0x00000000, + 0x0000C200, 0x80C20000, 0x008000C2, 0x00000000, + 0x00C20000, 0x00000000, 0x78000000, 0xE0000000, + 0xFC000000, 0x00000000, 0x00000000, 0xFFE00000, + 0x00000001, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFF800000, + 0xE0000000, 0x00000000, 0x00000000, 0xFFFE0000, + 0xFFE02000, 0xFF800000, 0xFFF00000, 0xFFF22000, + 0x00000000, 0x00300000, 0xC0000000, 0xFC00FC00, + 0xFC008000, 0x00000000, 0x00000000, 0xFF000000, + 0x00000000, 0xFFFFFC00, 0xFFFFFFFF, 0xFFFFFFFF, + 0xE0000000, 0xF000F000, 0x0000000E, 0xFFE0C000, + 0x00000000, 0x0000FC00, 0x3C00FC00, 0x00000000, + 0x30000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x0000F000, 0xE0000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFFF800, 0x3FFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xF0000000, 0x00000000, 0x00000000, 0xFC000000, + 0xC0C00000, 0x00000000, 0x5500C0C0, 0xC0000000, + 0x00000000, 0x00200000, 0x10300020, 0x80230000, + 0x0000F800, 0x00007C00, 0x00000000, 0x000CFFFF, + 0xFFE08000, 0xFFC00000, 0x0000FFFF, 0xFFFF0000, + 0x00000000, 0x00000000, 0x00078000, 0x00000000, + 0x0000FFE0, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFFFFF00, + 0x00000000, 0xFFFFFF80, 0xFFFFF800, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xE0000000, 0xFFF80000, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000C21, 0x00000100, 0x80B85000, 0x00000001, + 0x00E00000, 0x80010000, 0x0000F800, 0x0000F000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xF8000000, 0xFFFFFFF0, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00008000, 0x80000000, 0xFF0FE000, + 0x00000000, 0x00000000, 0x00000000, 0x01FFF800, + 0x00000000, 0x0000FFC0, 0x00000000, 0xFFFF7FC0, + 0xFF800000, 0x80808080, 0x80808080, 0xFFFFFFFF, + 0xCF000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x04000000, 0x00000000, 0x00000000, 0xFFF00000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFC00000, 0xF000FFFF, + 0x00000000, 0x00000000, 0x00000001, 0x00000000, + 0x01800000, 0x00000000, 0x00000000, 0x00000000, + 0x0000001F, 0x0001E000, 0x00000000, 0x00000000, + 0x00008000, 0xFF000000, 0xFFFF0000, 0x0000FFFF, + 0x80000000, 0x00000000, 0x0000FFF0, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x80000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFC00000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xF0000000, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000E000, 0x00000000, 0xFFFFFF80, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xF8000000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0xFFFFF000, 0x00000000, 0xFF000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFFFFFF0, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x0000C000, 0x00000000, 0x0000F800, + 0x00000000, 0x00000000, 0xFC000000, 0xFFFFFFFF, + 0x1F07FF80, 0xA0800000, 0x00000024, 0x00000000, + 0x00000000, 0xFFFC0000, 0x0007FFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x0000FFFF, 0x00000000, + 0x00030000, 0x00000000, 0xFFFFFF00, 0xC000FFFF, + 0xFC000000, 0x0000FFF0, 0x00080000, 0x0020F080, + 0x00000000, 0x00000000, 0x00000000, 0xE0000000, + 0x00000001, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x80000000, 0xE3030303, 0xCFFF8080, + 0x00001000, 0x48000080, 0xC000C000, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0xF8000000, + 0x00000078, 0x00700000, 0x00000000, 0x00000000, + 0xFFFFF800, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x80000000, 0x0000FFF0, 0xFFFFF800, 0xFFFFFFFF, + 0x40000000, 0x00000000, 0xFFC000F0, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xC0000000, 0xFFFFFC00, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x000002C0, 0x6E400000, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x7C000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x01100F90, 0x78F00000, 0xFE00FF00, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFFF8000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0xFFF0FFF8, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFC00000, + 0x00000000, 0x00000380, 0x00000000, 0x07F80000, + 0x00000000, 0x00000000, 0xC0000000, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0xFFFFFFC0, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0xFF800000, 0xFFFC0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00200000, 0x00000000, + 0x20000000, 0x1400219B, 0x00000010, 0x00000000, + 0x20201840, 0x84000000, 0x000203A0, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x000000C0, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00003000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFF800000, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xC0000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFFF0000 + } +}; diff --git a/lib/unictype/categ_Cc.c b/lib/unictype/categ_Cc.c new file mode 100644 index 000000000..572f88f74 --- /dev/null +++ b/lib/unictype/categ_Cc.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Cc table. */ +#include "categ_Cc.h" + +const uc_general_category_t UC_CATEGORY_Cc = + { UC_CATEGORY_MASK_Cc, 0, { &u_categ_Cc } }; diff --git a/lib/unictype/categ_Cc.h b/lib/unictype/categ_Cc.h new file mode 100644 index 000000000..2ef55daf7 --- /dev/null +++ b/lib/unictype/categ_Cc.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[1 << 4]; + } +u_categ_Cc = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0xFFFFFFFF, 0x00000000, 0x00000000, 0x80000000, + 0xFFFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/categ_Cf.c b/lib/unictype/categ_Cf.c new file mode 100644 index 000000000..19cd842ed --- /dev/null +++ b/lib/unictype/categ_Cf.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Cf table. */ +#include "categ_Cf.h" + +const uc_general_category_t UC_CATEGORY_Cf = + { UC_CATEGORY_MASK_Cf, 0, { &u_categ_Cf } }; diff --git a/lib/unictype/categ_Cf.h b/lib/unictype/categ_Cf.h new file mode 100644 index 000000000..8d6da923f --- /dev/null +++ b/lib/unictype/categ_Cf.h @@ -0,0 +1,452 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[15]; + short level2[3 << 7]; + /*unsigned*/ int level3[7 << 4]; + } +u_categ_Cf = +{ + { 15 }, + { + 16 * sizeof (int) / sizeof (short) + 0, + 16 * sizeof (int) / sizeof (short) + 128, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 * sizeof (int) / sizeof (short) + 256 + }, + { + 16 + 384 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 96, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00002000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000000F, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x20000000, 0x00000000, + 0x00008000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00300000, 0x00000000, 0x00000000, + 0x0000F800, 0x00007C00, 0x00000000, 0x0000FC0F, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x80000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x0E000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x07F80000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000002, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/categ_Cn.c b/lib/unictype/categ_Cn.c new file mode 100644 index 000000000..131704abd --- /dev/null +++ b/lib/unictype/categ_Cn.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Cn table. */ +#include "categ_Cn.h" + +const uc_general_category_t UC_CATEGORY_Cn = + { UC_CATEGORY_MASK_Cn, 0, { &u_categ_Cn } }; diff --git a/lib/unictype/categ_Cn.h b/lib/unictype/categ_Cn.h new file mode 100644 index 000000000..9e4c85223 --- /dev/null +++ b/lib/unictype/categ_Cn.h @@ -0,0 +1,1006 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[17]; + short level2[6 << 7]; + /*unsigned*/ int level3[49 << 4]; + } +u_categ_Cn = +{ + { 17 }, + { + 18 * sizeof (int) / sizeof (short) + 0, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 512, + 18 * sizeof (int) / sizeof (short) + 640, + 18 * sizeof (int) / sizeof (short) + 640 + }, + { + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 0, + 18 + 768 * sizeof (short) / sizeof (int) + 16, + 18 + 768 * sizeof (short) / sizeof (int) + 32, + 18 + 768 * sizeof (short) / sizeof (int) + 48, + 18 + 768 * sizeof (short) / sizeof (int) + 64, + 18 + 768 * sizeof (short) / sizeof (int) + 80, + 18 + 768 * sizeof (short) / sizeof (int) + 96, + 18 + 768 * sizeof (short) / sizeof (int) + 112, + 18 + 768 * sizeof (short) / sizeof (int) + 128, + 18 + 768 * sizeof (short) / sizeof (int) + 144, + 18 + 768 * sizeof (short) / sizeof (int) + 160, + 18 + 768 * sizeof (short) / sizeof (int) + 176, + 18 + 768 * sizeof (short) / sizeof (int) + 192, + 18 + 768 * sizeof (short) / sizeof (int) + 208, + 18 + 768 * sizeof (short) / sizeof (int) + 224, + 18 + 768 * sizeof (short) / sizeof (int) + 240, + 18 + 768 * sizeof (short) / sizeof (int) + 256, + 18 + 768 * sizeof (short) / sizeof (int) + 272, + 18 + 768 * sizeof (short) / sizeof (int) + 288, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 304, + 18 + 768 * sizeof (short) / sizeof (int) + 320, + 18 + 768 * sizeof (short) / sizeof (int) + 336, + 18 + 768 * sizeof (short) / sizeof (int) + 352, + 18 + 768 * sizeof (short) / sizeof (int) + 368, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 384, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 400, + -1, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 416, + 18 + 768 * sizeof (short) / sizeof (int) + 432, + 18 + 768 * sizeof (short) / sizeof (int) + 448, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 480, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 496, + 18 + 768 * sizeof (short) / sizeof (int) + 512, + 18 + 768 * sizeof (short) / sizeof (int) + 528, + 18 + 768 * sizeof (short) / sizeof (int) + 544, + 18 + 768 * sizeof (short) / sizeof (int) + 560, + 18 + 768 * sizeof (short) / sizeof (int) + 576, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 592, + 18 + 768 * sizeof (short) / sizeof (int) + 608, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 624, + 18 + 768 * sizeof (short) / sizeof (int) + 640, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 656, + 18 + 768 * sizeof (short) / sizeof (int) + 672, + 18 + 768 * sizeof (short) / sizeof (int) + 688, + 18 + 768 * sizeof (short) / sizeof (int) + 704, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 720, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 736, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 752, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + 18 + 768 * sizeof (short) / sizeof (int) + 464, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 768 * sizeof (short) / sizeof (int) + 768 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x83CF0000, + 0x0000280F, 0x00000004, 0x00008000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000080, 0x00000000, 0x00000000, 0x00000000, + 0xFFF00000, 0x0001FFFF, 0x01800000, 0x00000001, + 0x0001F900, 0x00000000, 0x0000FF00, 0xFFE0F800, + 0x37C007F0, 0xF8000001, 0x80000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00004000, 0x00000000, 0x00001800, 0xFFFFC000, + 0x00000000, 0xFFFC0000, 0x00000000, 0xF8000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000001, 0x0C000000, 0x00E0C000, 0x07FE0000, + 0x00066011, 0x0C3A0200, 0x4F7F8660, 0xF8000030, + 0x00067811, 0x2C920200, 0xA1FFC678, 0xFFE0003F, + 0x00044011, 0x0C120200, 0xFFFEC440, 0xFFFD0030, + 0x00066011, 0x0C120200, 0x4F3FC670, 0xFFFC003C, + 0x29C23813, 0x3C0038E7, 0xFF7FC238, 0xF800003F, + 0x00022011, 0x3C100200, 0xFF9FC220, 0xFFFF003C, + 0x00022013, 0x0C100200, 0xBF9FC220, 0xFFF90030, + 0x00022013, 0x3C000200, 0xFF7FC230, 0xFFFF003C, + 0x03800013, 0xD0040000, 0x00A07B80, 0xFFE3FFFF, + 0x00000001, 0x78000000, 0xF0000000, 0xFFFFFFFF, + 0x010FDA69, 0xC4001351, 0xCC00C0A0, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000100, 0x0001F800, + 0x0100F000, 0x20000000, 0xFFFC6000, 0xFFFFFFFF, + 0x00000000, 0xFC380904, 0xFC000000, 0xFFFFFFFF, + 0xFFFFFFFF, 0x00000000, 0x0000FFC0, 0xE0000000, + 0x00000000, 0x00000000, 0x7C000000, 0x00000000, + 0x00000000, 0x000000F8, 0x00000000, 0xFC000000, + 0x00000000, 0x00000000, 0xC280C200, 0x00000000, + 0x0000C200, 0x80C20000, 0x008000C2, 0x00000000, + 0x00C20000, 0x00000000, 0x78000000, 0xE0000000, + 0xFC000000, 0x00000000, 0x00000000, 0xFFE00000, + 0x00000001, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFF800000, + 0xE0000000, 0x00000000, 0x00000000, 0xFFFE0000, + 0xFFE02000, 0xFF800000, 0xFFF00000, 0xFFF22000, + 0x00000000, 0x00000000, 0xC0000000, 0xFC00FC00, + 0xFC008000, 0x00000000, 0x00000000, 0xFF000000, + 0x00000000, 0xFFFFFC00, 0xFFFFFFFF, 0xFFFFFFFF, + 0xE0000000, 0xF000F000, 0x0000000E, 0xFFE0C000, + 0x00000000, 0x0000FC00, 0x3C00FC00, 0x00000000, + 0x30000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x0000F000, 0xE0000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFFF800, 0x3FFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xF0000000, 0x00000000, 0x00000000, 0xFC000000, + 0xC0C00000, 0x00000000, 0x5500C0C0, 0xC0000000, + 0x00000000, 0x00200000, 0x10300020, 0x80230000, + 0x00000000, 0x00000000, 0x00000000, 0x000C03F0, + 0xFFE08000, 0xFFC00000, 0x0000FFFF, 0xFFFF0000, + 0x00000000, 0x00000000, 0x00078000, 0x00000000, + 0x0000FFE0, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFFFFF00, + 0x00000000, 0xFFFFFF80, 0xFFFFF800, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xE0000000, 0xFFF80000, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000C21, 0x00000100, 0x80B85000, 0x00000001, + 0x00E00000, 0x80010000, 0x0000F800, 0x0000F000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xF8000000, 0xFFFFFFF0, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00008000, 0x80000000, 0xFF0FE000, + 0x00000000, 0x00000000, 0x00000000, 0x01FFF800, + 0x00000000, 0x0000FFC0, 0x00000000, 0xFFFF7FC0, + 0xFF800000, 0x80808080, 0x80808080, 0xFFFFFFFF, + 0xCF000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x04000000, 0x00000000, 0x00000000, 0xFFF00000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFC00000, 0xF000FFFF, + 0x00000000, 0x00000000, 0x00000001, 0x00000000, + 0x01800000, 0x00000000, 0x00000000, 0x00000000, + 0x0000001F, 0x0001E000, 0x00000000, 0x00000000, + 0x00008000, 0xFF000000, 0xFFFF0000, 0x0000FFFF, + 0x80000000, 0x00000000, 0x0000FFF0, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x80000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFC00000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xF0000000, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000E000, 0x00000000, 0xFFFFFF80, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xF8000000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0xFFFFF000, 0x00000000, 0xFF000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFFFFFF0, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x0000C000, 0x00000000, 0x0000F800, + 0x00000000, 0x00000000, 0xFC000000, 0xFFFFFFFF, + 0x1F07FF80, 0xA0800000, 0x00000024, 0x00000000, + 0x00000000, 0xFFFC0000, 0x0007FFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x0000FFFF, 0x00000000, + 0x00030000, 0x00000000, 0xFFFFFF00, 0xC000FFFF, + 0xFC000000, 0x0000FFF0, 0x00080000, 0x0020F080, + 0x00000000, 0x00000000, 0x00000000, 0x60000000, + 0x00000001, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x80000000, 0xE3030303, 0xC1FF8080, + 0x00001000, 0x48000080, 0xC000C000, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0xF8000000, + 0x00000078, 0x00700000, 0x00000000, 0x00000000, + 0xFFFFF800, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x80000000, 0x0000FFF0, 0xFFFFF800, 0xFFFFFFFF, + 0x40000000, 0x00000000, 0xFFC000F0, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xC0000000, 0xFFFFFC00, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x000002C0, 0x6E400000, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x7C000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x01100F90, 0x78F00000, 0xFE00FF00, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFFF8000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0xFFF0FFF8, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFC00000, + 0x00000000, 0x00000380, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xC0000000, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0xFFFFFFC0, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0xFF800000, 0xFFFC0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00200000, 0x00000000, + 0x20000000, 0x1400219B, 0x00000010, 0x00000000, + 0x20201840, 0x84000000, 0x000203A0, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x000000C0, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00003000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFF800000, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xC0000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFD, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFFF0000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xC0000000 + } +}; diff --git a/lib/unictype/categ_Co.c b/lib/unictype/categ_Co.c new file mode 100644 index 000000000..70b5ac729 --- /dev/null +++ b/lib/unictype/categ_Co.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Co table. */ +#include "categ_Co.h" + +const uc_general_category_t UC_CATEGORY_Co = + { UC_CATEGORY_MASK_Co, 0, { &u_categ_Co } }; diff --git a/lib/unictype/categ_Co.h b/lib/unictype/categ_Co.h new file mode 100644 index 000000000..e27ab6d95 --- /dev/null +++ b/lib/unictype/categ_Co.h @@ -0,0 +1,310 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[17]; + short level2[2 << 7]; + /*unsigned*/ int level3[3 << 4]; + } +u_categ_Co = +{ + { 17 }, + { + 18 * sizeof (int) / sizeof (short) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 128 + }, + { + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 32 + }, + { + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x3FFFFFFF + } +}; diff --git a/lib/unictype/categ_Cs.c b/lib/unictype/categ_Cs.c new file mode 100644 index 000000000..a3f5ceab7 --- /dev/null +++ b/lib/unictype/categ_Cs.c @@ -0,0 +1,30 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +static bool +uc_is_category_Cs (ucs4_t uc) +{ + return (uc >= 0xd800 && uc < 0xe000); +} + +const uc_general_category_t UC_CATEGORY_Cs = + { UC_CATEGORY_MASK_Cs, 1, { &uc_is_category_Cs } }; diff --git a/lib/unictype/categ_Cs.h b/lib/unictype/categ_Cs.h new file mode 100644 index 000000000..e101beeeb --- /dev/null +++ b/lib/unictype/categ_Cs.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[1 << 4]; + } +u_categ_Cs = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF + } +}; diff --git a/lib/unictype/categ_L.c b/lib/unictype/categ_L.c new file mode 100644 index 000000000..b62b2a279 --- /dev/null +++ b/lib/unictype/categ_L.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_L table. */ +#include "categ_L.h" + +const uc_general_category_t UC_CATEGORY_L = + { UC_CATEGORY_MASK_L, 0, { &u_categ_L } }; diff --git a/lib/unictype/categ_L.h b/lib/unictype/categ_L.h new file mode 100644 index 000000000..f48a35b89 --- /dev/null +++ b/lib/unictype/categ_L.h @@ -0,0 +1,572 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[3]; + short level2[3 << 7]; + /*unsigned*/ int level3[40 << 4]; + } +u_categ_L = +{ + { 3 }, + { + 4 * sizeof (int) / sizeof (short) + 0, + 4 * sizeof (int) / sizeof (short) + 128, + 4 * sizeof (int) / sizeof (short) + 256 + }, + { + 4 + 384 * sizeof (short) / sizeof (int) + 0, + 4 + 384 * sizeof (short) / sizeof (int) + 16, + 4 + 384 * sizeof (short) / sizeof (int) + 32, + 4 + 384 * sizeof (short) / sizeof (int) + 48, + 4 + 384 * sizeof (short) / sizeof (int) + 64, + 4 + 384 * sizeof (short) / sizeof (int) + 80, + 4 + 384 * sizeof (short) / sizeof (int) + 96, + 4 + 384 * sizeof (short) / sizeof (int) + 112, + 4 + 384 * sizeof (short) / sizeof (int) + 128, + 4 + 384 * sizeof (short) / sizeof (int) + 144, + 4 + 384 * sizeof (short) / sizeof (int) + 160, + 4 + 384 * sizeof (short) / sizeof (int) + 176, + 4 + 384 * sizeof (short) / sizeof (int) + 192, + 4 + 384 * sizeof (short) / sizeof (int) + 208, + 4 + 384 * sizeof (short) / sizeof (int) + 224, + 4 + 384 * sizeof (short) / sizeof (int) + 240, + 4 + 384 * sizeof (short) / sizeof (int) + 256, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + -1, + 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) + 304, + 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) + 304, + 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) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 336, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 352, + 4 + 384 * sizeof (short) / sizeof (int) + 368, + 4 + 384 * sizeof (short) / sizeof (int) + 384, + -1, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 400, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 416, + 4 + 384 * sizeof (short) / sizeof (int) + 432, + 4 + 384 * sizeof (short) / sizeof (int) + 448, + 4 + 384 * sizeof (short) / sizeof (int) + 464, + 4 + 384 * sizeof (short) / sizeof (int) + 480, + 4 + 384 * sizeof (short) / sizeof (int) + 496, + 4 + 384 * sizeof (short) / sizeof (int) + 512, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 528, + 4 + 384 * sizeof (short) / sizeof (int) + 544, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 560, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 576, + 4 + 384 * sizeof (short) / sizeof (int) + 592, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 624, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x07FFFFFE, 0x07FFFFFE, + 0x00000000, 0x04200400, 0xFF7FFFFF, 0xFF7FFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x0003FFC3, 0x0000401F, + 0x00000000, 0x00000000, 0x00000000, 0x3C000000, + 0xFFFFD740, 0xFFFFFFFB, 0xFFFF7FFF, 0xFFBFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x000FFFFF, 0xFFFE0000, 0x027FFFFF, 0xFFFFFFFE, + 0x000000FF, 0x00000000, 0xFFFF0000, 0x000707FF, + 0x00000000, 0x07FFFFFE, 0x000007FF, 0xFFFEC000, + 0xFFFFFFFF, 0xFFFFFFFF, 0x002FFFFF, 0x9C00C060, + 0xFFFD0000, 0x0000FFFF, 0xFFFFE000, 0x00003FFF, + 0xFFFFFFFF, 0x0002003F, 0xFFFFFC00, 0x043007FF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xF8000003, + 0xFFF99FE0, 0x23C5FDFF, 0xB0004000, 0x00030003, + 0xFFF987E0, 0x036DFDFF, 0x5E000000, 0x001C0000, + 0xFFFBBFE0, 0x23EDFDFF, 0x00010000, 0x00000003, + 0xFFF99FE0, 0x23EDFDFF, 0xB0000000, 0x00020003, + 0xD63DC7E8, 0x03FFC718, 0x00000000, 0x00000000, + 0xFFFDDFE0, 0x03EFFDFF, 0x00000000, 0x00000003, + 0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x00000003, + 0xFFFDDFE0, 0x03FFFDFF, 0x00000000, 0x00000003, + 0xFC7FFFE0, 0x2FFBFFFF, 0x0000007F, 0x00000000, + 0xFFFFFFFE, 0x000DFFFF, 0x0000007F, 0x00000000, + 0xFEF02596, 0x200DECAE, 0x3000005F, 0x00000000, + 0x00000001, 0x00000000, 0xFFFFFEFF, 0x000007FF, + 0x00000F00, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0x000006FB, 0x003F0000, 0x00000000, + 0x00000000, 0xFFFFFFFF, 0xFFFF003F, 0x17FFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x83FFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF07, 0xFFFFFFFF, 0x03FFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x3D7F3DFF, 0xFFFFFFFF, + 0xFFFF3DFF, 0x7F3DFFFF, 0xFF7FFF3D, 0xFFFFFFFF, + 0xFF3DFFFF, 0xFFFFFFFF, 0x07FFFFFF, 0x00000000, + 0x0000FFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x001FFFFF, + 0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x007F9FFF, + 0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x000007FF, + 0x0003DFFF, 0x0003FFFF, 0x0003FFFF, 0x0001DFFF, + 0xFFFFFFFF, 0x000FFFFF, 0x10800000, 0x00000000, + 0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF, + 0xFFFFFFFF, 0x000001FF, 0x00000000, 0x00000000, + 0x1FFFFFFF, 0x00000000, 0xFFFF0000, 0x001F3FFF, + 0xFFFFFFFF, 0x000003FF, 0x000000FE, 0x00000000, + 0x007FFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFE0, 0x000FFFFF, 0x00000FE0, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x0FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, + 0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF, + 0xFFFFFFFF, 0x5FDFFFFF, 0x0FCF1FDC, 0x1FDC1FFF, + 0x00000000, 0x00000000, 0x00000000, 0x80020000, + 0x001F0000, 0x00000000, 0x00000000, 0x00000000, + 0x3E2FFC84, 0xF3FFBD50, 0x000043E0, 0x00000000, + 0x00000018, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFF7FFF, 0x7FFFFFFF, 0x00F01FFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000001F, + 0xFFFFFFFF, 0xFFFF003F, 0xFFFFFFFF, 0x0000803F, + 0x007FFFFF, 0x7F7F7F7F, 0x7F7F7F7F, 0x00000000, + 0x00000060, 0x183E0000, 0xFFFFFFFE, 0xFFFFFFFF, + 0xE07FFFFF, 0xFFFFFFFE, 0xFFFFFFFF, 0xF7FFFFFF, + 0xFFFFFFE0, 0xFFFE1FFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00007FFF, 0x00FFFFFF, 0x00000000, 0xFFFF0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x003FFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0FFFFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00001FFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x07800000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFF7BB, 0x00000007, 0xFFFFFFFF, 0x000FFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFF3FFF, 0xFFFFFFFF, 0xFFFF07FF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, 0x00000000, + 0xA0F8007F, 0x5F7FFDFF, 0xFFFFFFDB, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0003FFFF, 0xFFF80000, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x3FFFFFFF, 0xFFFF0000, 0xFFFFFFFF, + 0xFFFCFFFF, 0xFFFFFFFF, 0x000000FF, 0x0FFF0000, + 0x00000000, 0x00000000, 0x00000000, 0xFFDF0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFFFFFF, + 0x00000000, 0x07FFFFFE, 0x07FFFFFE, 0xFFFFFFC0, + 0xFFFFFFFF, 0x7FFFFFFF, 0x1CFCFCFC, 0x00000000, + 0xFFFFEFFF, 0xB7FFFF7F, 0x3FFF3FFF, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x7FFFFFFF, 0xFFFF0000, 0x000003FD, 0x00000000, + 0x3FFFFFFF, 0xFFFFFFFF, 0x0000FF0F, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFD3F, 0x91BFFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x003FFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFEEF0001, 0x000FFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF, + 0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF, + 0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF3F, 0xF7FFFFFD, 0xF7FFFFFF, + 0xFFDFFFFF, 0xFFDFFFFF, 0xFFFF7FFF, 0xFFFF7FFF, + 0xFFFFFDFF, 0xFFFFFDFF, 0x00000FF7, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/categ_Ll.c b/lib/unictype/categ_Ll.c new file mode 100644 index 000000000..37da1a082 --- /dev/null +++ b/lib/unictype/categ_Ll.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Ll table. */ +#include "categ_Ll.h" + +const uc_general_category_t UC_CATEGORY_Ll = + { UC_CATEGORY_MASK_Ll, 0, { &u_categ_Ll } }; diff --git a/lib/unictype/categ_Ll.h b/lib/unictype/categ_Ll.h new file mode 100644 index 000000000..1de2ea92b --- /dev/null +++ b/lib/unictype/categ_Ll.h @@ -0,0 +1,331 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[12 << 4]; + } +u_categ_Ll = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 144, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 160, + 3 + 256 * sizeof (short) / sizeof (int) + 176, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x07FFFFFE, + 0x00000000, 0x04200400, 0x80000000, 0xFF7FFFFF, + 0xAAAAAAAA, 0x55AAAAAA, 0xAAAAAB55, 0xD4AAAAAA, + 0x4E243129, 0xE6512D2A, 0xB5555240, 0xAA29AAAA, + 0xAAAAAAAA, 0x93FAAAAA, 0xFFFFAA85, 0xFFFFFFFF, + 0xFFEFFFFF, 0x0000FFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x38000000, + 0x00010000, 0xFFFFF000, 0xAAE37FFF, 0x192FAAAA, + 0x00000000, 0xFFFF0000, 0xFFFFFFFF, 0xAAAAAAAA, + 0xAAAAA802, 0xAAAAAAAA, 0xAAAAD554, 0xAAAAAAAA, + 0x000AAAAA, 0x00000000, 0x00000000, 0xFFFFFFFE, + 0x000000FF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0x00000FFF, 0x00000000, 0xFEFFFFFC, + 0x07FFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0xAAAAAAAA, 0xAAAAAAAA, 0xAAAAAAAA, 0xAAAAAAAA, + 0x0FEAAAAA, 0xAAAAAAAA, 0xAAAAAAAA, 0x02AAAAAA, + 0x003F00FF, 0x00FF00FF, 0x00FF003F, 0x3FFF00FF, + 0x00FF00FF, 0x40DF00FF, 0x00CF00DC, 0x00DC00FF, + 0x00000000, 0x00000000, 0x00000000, 0x80020000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0008C400, 0x32108000, 0x000043C0, 0x00000000, + 0x00000010, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFFF0000, 0x7FFFFFFF, 0x00D01562, + 0xAAAAAAAA, 0xAAAAAAAA, 0xAAAAAAAA, 0x0000001A, + 0xFFFFFFFF, 0x0000003F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00F8007F, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x07FFFFFE, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFFFFF00, 0x0000FFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFC000000, 0x000FFFFF, 0xFFDFC000, 0x000000FF, + 0x0FFFFFFC, 0xEBC00000, 0x0000FFEF, 0xFFFFFC00, + 0xC000000F, 0x00FFFFFF, 0xFFFC0000, 0x00000FFF, + 0xFFFFFFC0, 0xFC000000, 0x000FFFFF, 0xFFFFC000, + 0x000000FF, 0x0FFFFFFC, 0xFFC00000, 0x0000FFFF, + 0xFFFFFC00, 0x0000003F, 0xF7FFFFFC, 0xF0000003, + 0x0FDFFFFF, 0xFFC00000, 0x003F7FFF, 0xFFFF0000, + 0x0000FDFF, 0xFFFFFC00, 0x00000BF7, 0x00000000 + } +}; diff --git a/lib/unictype/categ_Lm.c b/lib/unictype/categ_Lm.c new file mode 100644 index 000000000..296e53db3 --- /dev/null +++ b/lib/unictype/categ_Lm.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Lm table. */ +#include "categ_Lm.h" + +const uc_general_category_t UC_CATEGORY_Lm = + { UC_CATEGORY_MASK_Lm, 0, { &u_categ_Lm } }; diff --git a/lib/unictype/categ_Lm.h b/lib/unictype/categ_Lm.h new file mode 100644 index 000000000..6d7f187c5 --- /dev/null +++ b/lib/unictype/categ_Lm.h @@ -0,0 +1,208 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[14 << 4]; + } +u_categ_Lm = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 80, + 2 + 128 * sizeof (short) / sizeof (int) + 96, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 112, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 128, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 144, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 160, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 176, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 192, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 208 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFFF0000, 0x0003FFC3, 0x0000401F, + 0x00000000, 0x00000000, 0x00000000, 0x04000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x02000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000001, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000060, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x04300000, + 0x00000000, 0x00000000, 0x00000040, 0x00000000, + 0x00000000, 0x00000000, 0x00000040, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x10000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00800000, 0x00000000, + 0x00000000, 0x00000000, 0x00000008, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFFFF000, 0xFFFFFFFF, 0x01000003, + 0xF8000000, 0xFFFFFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x001F0000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00008000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000020, 0x083E0000, 0x00000000, 0x00000000, + 0x60000000, 0x00000000, 0x00000000, 0x70000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00200000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x07800000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00010000, + 0xC0000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/categ_Lo.c b/lib/unictype/categ_Lo.c new file mode 100644 index 000000000..5c7781e1b --- /dev/null +++ b/lib/unictype/categ_Lo.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Lo table. */ +#include "categ_Lo.h" + +const uc_general_category_t UC_CATEGORY_Lo = + { UC_CATEGORY_MASK_Lo, 0, { &u_categ_Lo } }; diff --git a/lib/unictype/categ_Lo.h b/lib/unictype/categ_Lo.h new file mode 100644 index 000000000..d0f54e3e5 --- /dev/null +++ b/lib/unictype/categ_Lo.h @@ -0,0 +1,556 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[3]; + short level2[3 << 7]; + /*unsigned*/ int level3[36 << 4]; + } +u_categ_Lo = +{ + { 3 }, + { + 4 * sizeof (int) / sizeof (short) + 0, + 4 * sizeof (int) / sizeof (short) + 128, + 4 * sizeof (int) / sizeof (short) + 256 + }, + { + 4 + 384 * sizeof (short) / sizeof (int) + 0, + 4 + 384 * sizeof (short) / sizeof (int) + 16, + 4 + 384 * sizeof (short) / sizeof (int) + 32, + 4 + 384 * sizeof (short) / sizeof (int) + 48, + 4 + 384 * sizeof (short) / sizeof (int) + 64, + 4 + 384 * sizeof (short) / sizeof (int) + 80, + 4 + 384 * sizeof (short) / sizeof (int) + 96, + 4 + 384 * sizeof (short) / sizeof (int) + 112, + 4 + 384 * sizeof (short) / sizeof (int) + 128, + 4 + 384 * sizeof (short) / sizeof (int) + 144, + 4 + 384 * sizeof (short) / sizeof (int) + 160, + 4 + 384 * sizeof (short) / sizeof (int) + 176, + 4 + 384 * sizeof (short) / sizeof (int) + 192, + 4 + 384 * sizeof (short) / sizeof (int) + 208, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 224, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 240, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 256, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 336, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 352, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 368, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 384, + 4 + 384 * sizeof (short) / sizeof (int) + 400, + 4 + 384 * sizeof (short) / sizeof (int) + 416, + 4 + 384 * sizeof (short) / sizeof (int) + 432, + 4 + 384 * sizeof (short) / sizeof (int) + 448, + 4 + 384 * sizeof (short) / sizeof (int) + 464, + 4 + 384 * sizeof (short) / sizeof (int) + 480, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 496, + 4 + 384 * sizeof (short) / sizeof (int) + 512, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 528, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 544, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 560, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x08000000, 0x0000000F, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00100000, 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, 0xFFFF0000, 0x000707FF, + 0x00000000, 0x07FFFFFE, 0x000007FE, 0xFFFEC000, + 0xFFFFFFFF, 0xFFFFFFFF, 0x002FFFFF, 0x9C00C000, + 0xFFFD0000, 0x0000FFFF, 0xFFFFE000, 0x00003FFF, + 0xFFFFFFFF, 0x0002003F, 0xFFFFFC00, 0x000007FF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xF8000003, + 0xFFF99FE0, 0x23C5FDFF, 0xB0004000, 0x00030003, + 0xFFF987E0, 0x036DFDFF, 0x5E000000, 0x001C0000, + 0xFFFBBFE0, 0x23EDFDFF, 0x00010000, 0x00000003, + 0xFFF99FE0, 0x23EDFDFF, 0xB0000000, 0x00020003, + 0xD63DC7E8, 0x03FFC718, 0x00000000, 0x00000000, + 0xFFFDDFE0, 0x03EFFDFF, 0x00000000, 0x00000003, + 0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x00000003, + 0xFFFDDFE0, 0x03FFFDFF, 0x00000000, 0x00000003, + 0xFC7FFFE0, 0x2FFBFFFF, 0x0000007F, 0x00000000, + 0xFFFFFFFE, 0x000DFFFF, 0x0000003F, 0x00000000, + 0xFEF02596, 0x200DECAE, 0x3000001F, 0x00000000, + 0x00000001, 0x00000000, 0xFFFFFEFF, 0x000007FF, + 0x00000F00, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0x000006FB, 0x003F0000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFF0000, 0x07FFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x83FFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF07, 0xFFFFFFFF, 0x03FFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x3D7F3DFF, 0xFFFFFFFF, + 0xFFFF3DFF, 0x7F3DFFFF, 0xFF7FFF3D, 0xFFFFFFFF, + 0xFF3DFFFF, 0xFFFFFFFF, 0x07FFFFFF, 0x00000000, + 0x0000FFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x001FFFFF, + 0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x007F9FFF, + 0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x000007FF, + 0x0003DFFF, 0x0003FFFF, 0x0003FFFF, 0x0001DFFF, + 0xFFFFFFFF, 0x000FFFFF, 0x10000000, 0x00000000, + 0x00000000, 0xFFFFFFFF, 0xFFFFFFF7, 0x00FFFFFF, + 0xFFFFFFFF, 0x000001FF, 0x00000000, 0x00000000, + 0x1FFFFFFF, 0x00000000, 0xFFFF0000, 0x001F3FFF, + 0xFFFFFFFF, 0x000003FF, 0x000000FE, 0x00000000, + 0x007FFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFE0, 0x000FFFFF, 0x00000FE0, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x01E00000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFFF0000, 0xFFFFFFFF, 0x0000003F, + 0x007FFFFF, 0x7F7F7F7F, 0x7F7F7F7F, 0x00000000, + 0x00000040, 0x10000000, 0xFFFFFFFE, 0xFFFFFFFF, + 0x807FFFFF, 0xFFFFFFFE, 0xFFFFFFFF, 0x87FFFFFF, + 0xFFFFFFE0, 0xFFFE1FFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00007FFF, 0x00FFFFFF, 0x00000000, 0xFFFF0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x003FFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0FFFFFFF, 0x00000000, 0x00000000, + 0xFFDFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00001FFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFF7BB, 0x00000007, 0xFFFFFFFF, 0x000FFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFF3FFF, 0xFFFFFFFF, 0xFFFF07FF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, 0x00000000, + 0xA0000000, 0x5F7FFDFF, 0xFFFFFFDB, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0003FFFF, 0xFFF80000, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x3FFFFFFF, 0xFFFF0000, 0xFFFFFFFF, + 0xFFFCFFFF, 0xFFFFFFFF, 0x000000FF, 0x0FFF0000, + 0x00000000, 0x00000000, 0x00000000, 0xFFDF0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0xFFFEFFC0, + 0x3FFFFFFF, 0x7FFFFFFF, 0x1CFCFCFC, 0x00000000, + 0xFFFFEFFF, 0xB7FFFF7F, 0x3FFF3FFF, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x7FFFFFFF, 0xFFFF0000, 0x000003FD, 0x00000000, + 0x3FFFFFFF, 0xFFFFFFFF, 0x0000FF0F, 0x00000000, + 0x00000000, 0x00000000, 0xFFFF0000, 0xFFFFFFFF, + 0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFD3F, 0x91BFFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x003FFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFEEF0001, 0x000FFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/categ_Lt.c b/lib/unictype/categ_Lt.c new file mode 100644 index 000000000..485acf66f --- /dev/null +++ b/lib/unictype/categ_Lt.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Lt table. */ +#include "categ_Lt.h" + +const uc_general_category_t UC_CATEGORY_Lt = + { UC_CATEGORY_MASK_Lt, 0, { &u_categ_Lt } }; diff --git a/lib/unictype/categ_Lt.h b/lib/unictype/categ_Lt.h new file mode 100644 index 000000000..59d5f297a --- /dev/null +++ b/lib/unictype/categ_Lt.h @@ -0,0 +1,160 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[2 << 4]; + } +u_categ_Lt = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000920, 0x00040000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFF00FF00, 0x1000FF00, 0x00001000, 0x10000000 + } +}; diff --git a/lib/unictype/categ_Lu.c b/lib/unictype/categ_Lu.c new file mode 100644 index 000000000..26faae274 --- /dev/null +++ b/lib/unictype/categ_Lu.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Lu table. */ +#include "categ_Lu.h" + +const uc_general_category_t UC_CATEGORY_Lu = + { UC_CATEGORY_MASK_Lu, 0, { &u_categ_Lu } }; diff --git a/lib/unictype/categ_Lu.h b/lib/unictype/categ_Lu.h new file mode 100644 index 000000000..45dc10b05 --- /dev/null +++ b/lib/unictype/categ_Lu.h @@ -0,0 +1,327 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[11 << 4]; + } +u_categ_Lu = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 144, + 3 + 256 * sizeof (short) / sizeof (int) + 160, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x07FFFFFE, 0x00000000, + 0x00000000, 0x00000000, 0x7F7FFFFF, 0x00000000, + 0x55555555, 0xAA555555, 0x555554AA, 0x2B555555, + 0xB1DBCED6, 0x11AED2D5, 0x4AAAA490, 0x55D25555, + 0x55555555, 0x6C055555, 0x0000557A, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFED740, 0x00000FFB, 0x551C0000, 0xE6905555, + 0xFFFFFFFF, 0x0000FFFF, 0x00000000, 0x55555555, + 0x55555401, 0x55555555, 0x55552AAB, 0x55555555, + 0x00055555, 0xFFFE0000, 0x007FFFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFFFFFFF, 0x0000003F, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x55555555, 0x55555555, 0x55555555, 0x55555555, + 0x00155555, 0x55555555, 0x55555555, 0x01555555, + 0x3F00FF00, 0xFF00FF00, 0xAA003F00, 0x0000FF00, + 0x00000000, 0x0F000000, 0x0F000F00, 0x0F001F00, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x3E273884, 0xC00F3D50, 0x00000020, 0x00000000, + 0x00000008, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0x00007FFF, 0x00000000, 0x00200A9D, + 0x55555555, 0x55555555, 0x55555555, 0x00000005, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x07FFFFFE, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0x000000FF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x03FFFFFF, 0xFFF00000, 0x00003FFF, 0xFFFFFF00, + 0xD0000003, 0x003FDE64, 0xFFFF0000, 0x000003FF, + 0x1FDFE7B0, 0x7B000000, 0x0001FC5F, 0xFFFFF000, + 0x0000003F, 0x03FFFFFF, 0xFFF00000, 0x00003FFF, + 0xFFFFFF00, 0xF0000003, 0x003FFFFF, 0xFFFF0000, + 0x000003FF, 0xFFFFFF00, 0x00000001, 0x07FFFFFC, + 0xF0000000, 0x001FFFFF, 0xFFC00000, 0x00007FFF, + 0xFFFF0000, 0x000001FF, 0x00000400, 0x00000000 + } +}; diff --git a/lib/unictype/categ_M.c b/lib/unictype/categ_M.c new file mode 100644 index 000000000..ab7f149c7 --- /dev/null +++ b/lib/unictype/categ_M.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_M table. */ +#include "categ_M.h" + +const uc_general_category_t UC_CATEGORY_M = + { UC_CATEGORY_MASK_M, 0, { &u_categ_M } }; diff --git a/lib/unictype/categ_M.h b/lib/unictype/categ_M.h new file mode 100644 index 000000000..86c231f43 --- /dev/null +++ b/lib/unictype/categ_M.h @@ -0,0 +1,512 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[15]; + short level2[3 << 7]; + /*unsigned*/ int level3[22 << 4]; + } +u_categ_M = +{ + { 15 }, + { + 16 * sizeof (int) / sizeof (short) + 0, + 16 * sizeof (int) / sizeof (short) + 128, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 * sizeof (int) / sizeof (short) + 256 + }, + { + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 0, + 16 + 384 * sizeof (short) / sizeof (int) + 16, + 16 + 384 * sizeof (short) / sizeof (int) + 32, + 16 + 384 * sizeof (short) / sizeof (int) + 48, + 16 + 384 * sizeof (short) / sizeof (int) + 64, + 16 + 384 * sizeof (short) / sizeof (int) + 80, + 16 + 384 * sizeof (short) / sizeof (int) + 96, + 16 + 384 * sizeof (short) / sizeof (int) + 112, + 16 + 384 * sizeof (short) / sizeof (int) + 128, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 144, + 16 + 384 * sizeof (short) / sizeof (int) + 160, + 16 + 384 * sizeof (short) / sizeof (int) + 176, + 16 + 384 * sizeof (short) / sizeof (int) + 192, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 208, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 224, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 240, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 256, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 272, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 288, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 304, + 16 + 384 * sizeof (short) / sizeof (int) + 320, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 336, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000378, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFE0000, 0xBFFFFFFF, 0x000000B6, 0x00000000, + 0x003F0000, 0x00000000, 0x7FFFF800, 0x00010000, + 0x00000000, 0x00000000, 0xDFC00000, 0x00003D9F, + 0x00020000, 0xFFFF0000, 0x000007FF, 0x00000000, + 0x00000000, 0x0001FFC0, 0x00000000, 0x000FF800, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000000E, 0xD0000000, 0x001E3FFF, 0x0000000C, + 0x0000000E, 0xD0000000, 0x0080399F, 0x0000000C, + 0x0000000E, 0xD0000000, 0x00003987, 0x00030000, + 0x0000000E, 0xD0000000, 0x00003BBF, 0x0000000C, + 0x0000000E, 0xD0000000, 0x00C0398F, 0x00000000, + 0x00000004, 0xC0000000, 0x00803DC7, 0x00000000, + 0x0000000E, 0xC0000000, 0x00603DDF, 0x00000000, + 0x0000000C, 0xD0000000, 0x00603DDF, 0x0000000C, + 0x0000000C, 0xC0000000, 0x00803DCF, 0x00000000, + 0x0000000C, 0x00000000, 0xFF5F8400, 0x000C0000, + 0x00000000, 0x07F20000, 0x00007F80, 0x00000000, + 0x00000000, 0x1BF20000, 0x00003F00, 0x00000000, + 0x03000000, 0xC2A00000, 0x00000000, 0xFFFE0000, + 0xFEFF00DF, 0x1FFFFFFF, 0x00000040, 0x00000000, + 0x00000000, 0x03C7F000, 0x03C00000, 0x00000000, + 0x00000000, 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, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x001C0000, 0x001C0000, 0x000C0000, 0x000C0000, + 0x00000000, 0xFFC00000, 0x200FFFFF, 0x00000000, + 0x00003800, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000200, 0x00000000, 0x00000000, + 0x00000000, 0x0FFF0FFF, 0x00000000, 0x00000000, + 0x00000000, 0xFFFF0000, 0x00000301, 0x00000000, + 0x0F800000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000001F, 0xFFF00000, 0x0000001F, 0x000FF800, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x000007FF, 0xC0000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFF0000, 0x0000FFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x0000FC00, 0x00000000, 0x00000000, + 0x06000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000844, 0x000000F8, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x40000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000FFFF, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000F06E, 0x87000000, 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, + 0x00000FE7, 0x00003C00, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x0000001C, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF + } +}; diff --git a/lib/unictype/categ_Mc.c b/lib/unictype/categ_Mc.c new file mode 100644 index 000000000..c54a565c4 --- /dev/null +++ b/lib/unictype/categ_Mc.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Mc table. */ +#include "categ_Mc.h" + +const uc_general_category_t UC_CATEGORY_Mc = + { UC_CATEGORY_MASK_Mc, 0, { &u_categ_Mc } }; diff --git a/lib/unictype/categ_Mc.h b/lib/unictype/categ_Mc.h new file mode 100644 index 000000000..a7cc9a1e3 --- /dev/null +++ b/lib/unictype/categ_Mc.h @@ -0,0 +1,323 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[10 << 4]; + } +u_categ_Mc = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 0, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 144, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000008, 0xC0000000, 0x00001E01, 0x00000000, + 0x0000000C, 0xC0000000, 0x00801981, 0x00000000, + 0x00000008, 0xC0000000, 0x00000001, 0x00000000, + 0x00000008, 0xC0000000, 0x00001A01, 0x00000000, + 0x0000000C, 0x40000000, 0x00801981, 0x00000000, + 0x00000000, 0xC0000000, 0x00801DC6, 0x00000000, + 0x0000000E, 0x00000000, 0x0000001E, 0x00000000, + 0x0000000C, 0x40000000, 0x00600D9F, 0x00000000, + 0x0000000C, 0xC0000000, 0x00801DC1, 0x00000000, + 0x0000000C, 0x00000000, 0xFF038000, 0x000C0000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xC0000000, 0x00000000, 0x80000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x01021000, 0x00C00000, 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, 0xC0400000, 0x000001BF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x01FB0E78, 0x00000000, 0x00000000, + 0x00000000, 0xFFFF0000, 0x00000301, 0x00000000, + 0x0E000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000010, 0xE8200000, 0x0000001B, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000004, 0x00000098, 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, 0x0007E060, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/categ_Me.c b/lib/unictype/categ_Me.c new file mode 100644 index 000000000..00e2a0124 --- /dev/null +++ b/lib/unictype/categ_Me.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Me table. */ +#include "categ_Me.h" + +const uc_general_category_t UC_CATEGORY_Me = + { UC_CATEGORY_MASK_Me, 0, { &u_categ_Me } }; diff --git a/lib/unictype/categ_Me.h b/lib/unictype/categ_Me.h new file mode 100644 index 000000000..8adf56ab5 --- /dev/null +++ b/lib/unictype/categ_Me.h @@ -0,0 +1,164 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[3 << 4]; + } +u_categ_Me = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000300, 0x00000000, 0x00000000, 0x00000000, + 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 + } +}; diff --git a/lib/unictype/categ_Mn.c b/lib/unictype/categ_Mn.c new file mode 100644 index 000000000..5990ee504 --- /dev/null +++ b/lib/unictype/categ_Mn.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Mn table. */ +#include "categ_Mn.h" + +const uc_general_category_t UC_CATEGORY_Mn = + { UC_CATEGORY_MASK_Mn, 0, { &u_categ_Mn } }; diff --git a/lib/unictype/categ_Mn.h b/lib/unictype/categ_Mn.h new file mode 100644 index 000000000..177acf5a2 --- /dev/null +++ b/lib/unictype/categ_Mn.h @@ -0,0 +1,512 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[15]; + short level2[3 << 7]; + /*unsigned*/ int level3[22 << 4]; + } +u_categ_Mn = +{ + { 15 }, + { + 16 * sizeof (int) / sizeof (short) + 0, + 16 * sizeof (int) / sizeof (short) + 128, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 * sizeof (int) / sizeof (short) + 256 + }, + { + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 0, + 16 + 384 * sizeof (short) / sizeof (int) + 16, + 16 + 384 * sizeof (short) / sizeof (int) + 32, + 16 + 384 * sizeof (short) / sizeof (int) + 48, + 16 + 384 * sizeof (short) / sizeof (int) + 64, + 16 + 384 * sizeof (short) / sizeof (int) + 80, + 16 + 384 * sizeof (short) / sizeof (int) + 96, + 16 + 384 * sizeof (short) / sizeof (int) + 112, + 16 + 384 * sizeof (short) / sizeof (int) + 128, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 144, + 16 + 384 * sizeof (short) / sizeof (int) + 160, + 16 + 384 * sizeof (short) / sizeof (int) + 176, + 16 + 384 * sizeof (short) / sizeof (int) + 192, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 208, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 224, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 240, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 256, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 272, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 288, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 304, + 16 + 384 * sizeof (short) / sizeof (int) + 320, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 336, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000078, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFE0000, 0xBFFFFFFF, 0x000000B6, 0x00000000, + 0x003F0000, 0x00000000, 0x7FFFF800, 0x00010000, + 0x00000000, 0x00000000, 0x9FC00000, 0x00003D9F, + 0x00020000, 0xFFFF0000, 0x000007FF, 0x00000000, + 0x00000000, 0x0001FFC0, 0x00000000, 0x000FF800, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000006, 0x10000000, 0x001E21FE, 0x0000000C, + 0x00000002, 0x10000000, 0x0000201E, 0x0000000C, + 0x00000006, 0x10000000, 0x00003986, 0x00030000, + 0x00000006, 0x10000000, 0x000021BE, 0x0000000C, + 0x00000002, 0x90000000, 0x0040200E, 0x00000000, + 0x00000004, 0x00000000, 0x00002001, 0x00000000, + 0x00000000, 0xC0000000, 0x00603DC1, 0x00000000, + 0x00000000, 0x90000000, 0x00003040, 0x0000000C, + 0x00000000, 0x00000000, 0x0000200E, 0x00000000, + 0x00000000, 0x00000000, 0x005C0400, 0x00000000, + 0x00000000, 0x07F20000, 0x00007F80, 0x00000000, + 0x00000000, 0x1BF20000, 0x00003F00, 0x00000000, + 0x03000000, 0x02A00000, 0x00000000, 0x7FFE0000, + 0xFEFF00DF, 0x1FFFFFFF, 0x00000040, 0x00000000, + 0x00000000, 0x02C5E000, 0x03000000, 0x00000000, + 0x00000000, 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, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x001C0000, 0x001C0000, 0x000C0000, 0x000C0000, + 0x00000000, 0x3F800000, 0x200FFE40, 0x00000000, + 0x00003800, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000200, 0x00000000, 0x00000000, + 0x00000000, 0x0E040187, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x01800000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000000F, 0x17D00000, 0x00000004, 0x000FF800, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x000007FF, 0xC0000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x1FFF0000, 0x0000FFE2, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x0000FC00, 0x00000000, 0x00000000, + 0x06000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000840, 0x00000060, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x40000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000FFFF, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000F06E, 0x87000000, 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, 0xF8000380, + 0x00000FE7, 0x00003C00, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x0000001C, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF + } +}; diff --git a/lib/unictype/categ_N.c b/lib/unictype/categ_N.c new file mode 100644 index 000000000..5aa924876 --- /dev/null +++ b/lib/unictype/categ_N.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_N table. */ +#include "categ_N.h" + +const uc_general_category_t UC_CATEGORY_N = + { UC_CATEGORY_MASK_N, 0, { &u_categ_N } }; diff --git a/lib/unictype/categ_N.h b/lib/unictype/categ_N.h new file mode 100644 index 000000000..f92680e98 --- /dev/null +++ b/lib/unictype/categ_N.h @@ -0,0 +1,387 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[26 << 4]; + } +u_categ_N = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + -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) + 176, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 192, + 3 + 256 * sizeof (short) / sizeof (int) + 208, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 224, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 240, + 3 + 256 * sizeof (short) / sizeof (int) + 256, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 288, + 3 + 256 * sizeof (short) / sizeof (int) + 304, + 3 + 256 * sizeof (short) / sizeof (int) + 320, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 336, + 3 + 256 * sizeof (short) / sizeof (int) + 352, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 368, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 384, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 400, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x03FF0000, 0x00000000, 0x00000000, + 0x00000000, 0x720C0000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x000003FF, + 0x00000000, 0x00000000, 0x00000000, 0x03FF0000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x000003FF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x03F0FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0007FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x03FF0000, 0x00000000, + 0x00000000, 0x00000000, 0x03FF0000, 0x00000000, + 0x00000000, 0x000FFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x000003FF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x1FFFFE00, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x0001C000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x03FF03FF, + 0x03FF0000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x0000FFC0, 0x00000000, + 0x00000000, 0x00000000, 0x03FF0000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x03FF0000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x03F10000, + 0x000003FF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFF80000, 0xFFFFFFFF, + 0x00000007, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFFFFFFF, + 0x0FFFFFFF, 0x00000000, 0x00000000, 0xFFFFFC00, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFC00000, + 0x000FFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x20000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000080, 0x070003FE, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x003C0000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x000003FF, 0xFFFE0000, 0x00000000, + 0x000003FF, 0xFFFE0000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x03FF0000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFF80, 0x000FFFFF, 0xFFFFFFFF, 0x01FFFFFF, + 0x00000400, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x0000000F, 0x00000402, 0x00000000, + 0x00000000, 0x00000000, 0x003E0000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x000003FF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x03C00000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x000000FF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000007, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x0003FFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFFC000, 0xFFFFFFFF + } +}; diff --git a/lib/unictype/categ_Nd.c b/lib/unictype/categ_Nd.c new file mode 100644 index 000000000..f5ad32246 --- /dev/null +++ b/lib/unictype/categ_Nd.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Nd table. */ +#include "categ_Nd.h" + +const uc_general_category_t UC_CATEGORY_Nd = + { UC_CATEGORY_MASK_Nd, 0, { &u_categ_Nd } }; diff --git a/lib/unictype/categ_Nd.h b/lib/unictype/categ_Nd.h new file mode 100644 index 000000000..9f3e9b44b --- /dev/null +++ b/lib/unictype/categ_Nd.h @@ -0,0 +1,335 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[13 << 4]; + } +u_categ_Nd = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + -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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 160, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 176, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 192, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x03FF0000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x000003FF, + 0x00000000, 0x00000000, 0x00000000, 0x03FF0000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x000003FF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x03FF0000, 0x00000000, + 0x00000000, 0x00000000, 0x03FF0000, 0x00000000, + 0x00000000, 0x000003FF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x000003FF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x000003FF, + 0x03FF0000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x0000FFC0, 0x00000000, + 0x00000000, 0x00000000, 0x03FF0000, 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, + 0x03FF0000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x000003FF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFFC000, 0xFFFFFFFF + } +}; diff --git a/lib/unictype/categ_Nl.c b/lib/unictype/categ_Nl.c new file mode 100644 index 000000000..6fe937077 --- /dev/null +++ b/lib/unictype/categ_Nl.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Nl table. */ +#include "categ_Nl.h" + +const uc_general_category_t UC_CATEGORY_Nl = + { UC_CATEGORY_MASK_Nl, 0, { &u_categ_Nl } }; diff --git a/lib/unictype/categ_Nl.h b/lib/unictype/categ_Nl.h new file mode 100644 index 000000000..711551ee7 --- /dev/null +++ b/lib/unictype/categ_Nl.h @@ -0,0 +1,307 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[6 << 4]; + } +u_categ_Nl = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x0001C000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFFFFFFF, + 0x00000007, 0x00000000, 0x00000000, 0x00000000, + 0x00000080, 0x070003FE, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFFFFFF, 0x001FFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000402, 0x00000000, + 0x00000000, 0x00000000, 0x003E0000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000007, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/categ_No.c b/lib/unictype/categ_No.c new file mode 100644 index 000000000..055177f61 --- /dev/null +++ b/lib/unictype/categ_No.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_No table. */ +#include "categ_No.h" + +const uc_general_category_t UC_CATEGORY_No = + { UC_CATEGORY_MASK_No, 0, { &u_categ_No } }; diff --git a/lib/unictype/categ_No.h b/lib/unictype/categ_No.h new file mode 100644 index 000000000..1d1f9fceb --- /dev/null +++ b/lib/unictype/categ_No.h @@ -0,0 +1,351 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[17 << 4]; + } +u_categ_No = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 144, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 160, + 3 + 256 * sizeof (short) / sizeof (int) + 176, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 192, + 3 + 256 * sizeof (short) / sizeof (int) + 208, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 224, + 3 + 256 * sizeof (short) / sizeof (int) + 240, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 256, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x720C0000, 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, 0x03F00000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00070000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x000FFC00, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x1FFFFE00, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x03FF0000, + 0x00000000, 0x00000000, 0x00000000, 0x03F10000, + 0x000003FF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFF80000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFFFFFFF, + 0x0FFFFFFF, 0x00000000, 0x00000000, 0xFFFFFC00, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFC00000, + 0x000FFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x20000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x003C0000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x000003FF, 0xFFFE0000, 0x00000000, + 0x000003FF, 0xFFFE0000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFF80, 0x000FFFFF, 0x00000000, 0x01E00000, + 0x00000400, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x03C00000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x000000FF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x0003FFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/categ_P.c b/lib/unictype/categ_P.c new file mode 100644 index 000000000..e1dbbcdd3 --- /dev/null +++ b/lib/unictype/categ_P.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_P table. */ +#include "categ_P.h" + +const uc_general_category_t UC_CATEGORY_P = + { UC_CATEGORY_MASK_P, 0, { &u_categ_P } }; diff --git a/lib/unictype/categ_P.h b/lib/unictype/categ_P.h new file mode 100644 index 000000000..c90131ea5 --- /dev/null +++ b/lib/unictype/categ_P.h @@ -0,0 +1,391 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[27 << 4]; + } +u_categ_P = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 144, + 3 + 256 * sizeof (short) / sizeof (int) + 160, + 3 + 256 * sizeof (short) / sizeof (int) + 176, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 192, + 3 + 256 * sizeof (short) / sizeof (int) + 208, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 224, + 3 + 256 * sizeof (short) / sizeof (int) + 240, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 256, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 288, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 304, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 320, + 3 + 256 * sizeof (short) / sizeof (int) + 336, + 3 + 256 * sizeof (short) / sizeof (int) + 352, + 3 + 256 * sizeof (short) / sizeof (int) + 368, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 384, + 3 + 256 * sizeof (short) / sizeof (int) + 400, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 416, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x8C00F7EE, 0xB8000001, 0x28000000, + 0x00000000, 0x88800802, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x40000000, + 0x00000080, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFC000000, 0x00000000, + 0x00000600, 0x40000000, 0x00000049, 0x00180000, + 0xC8003000, 0x00000000, 0x00000000, 0x00003C00, + 0x00000000, 0x00000000, 0x00100000, 0x00000000, + 0x00003FFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x03800000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00010030, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00100000, + 0x00000000, 0x00000000, 0x0C008000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0007FFF0, 0x3C000000, 0x00000000, 0x00000000, + 0x00000020, 0x00000000, 0x00030000, 0x00000000, + 0x00000000, 0x00000000, 0x0000FC00, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x08000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x000001FE, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00006000, + 0x18000000, 0x00000000, 0x00000000, 0x00003800, + 0x00000000, 0x00600000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x07700000, 0x00000000, + 0x000007FF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000030, 0x00000000, + 0x00000000, 0x00000000, 0xC0000000, 0x00000000, + 0xC0000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFC000000, 0x00000001, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFF0000, 0xFFFF00FF, 0x7FFBFFEF, 0x60000000, + 0x00006000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000600, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x003FFF00, + 0x00000000, 0x00000000, 0x00000060, 0x00000FC0, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x01FFFFF8, 0x00000000, 0x0F000000, 0x30000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xDE000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x30FFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFF3FF0E, 0x20010000, 0x00000000, 0x00000000, + 0x00000000, 0x00000001, 0x00000000, 0x08000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00F00000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xC0000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x03FF0000, 0xFFFF0000, 0xFFF7FFFF, 0x00000D0B, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x8C00F7EE, 0xB8000001, 0xA8000000, 0x0000003F, + 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, + 0x80000000, 0x00000000, 0x00010000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x80000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x01FF0000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x000F0000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/categ_Pc.c b/lib/unictype/categ_Pc.c new file mode 100644 index 000000000..06558ada8 --- /dev/null +++ b/lib/unictype/categ_Pc.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Pc table. */ +#include "categ_Pc.h" + +const uc_general_category_t UC_CATEGORY_Pc = + { UC_CATEGORY_MASK_Pc, 0, { &u_categ_Pc } }; diff --git a/lib/unictype/categ_Pc.h b/lib/unictype/categ_Pc.h new file mode 100644 index 000000000..e7f43c39c --- /dev/null +++ b/lib/unictype/categ_Pc.h @@ -0,0 +1,164 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[3 << 4]; + } +u_categ_Pc = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 32 + }, + { + 0x00000000, 0x00000000, 0x80000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x80000000, 0x00100001, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00180000, 0x0000E000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x80000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/categ_Pd.c b/lib/unictype/categ_Pd.c new file mode 100644 index 000000000..96516d592 --- /dev/null +++ b/lib/unictype/categ_Pd.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Pd table. */ +#include "categ_Pd.h" + +const uc_general_category_t UC_CATEGORY_Pd = + { UC_CATEGORY_MASK_Pd, 0, { &u_categ_Pd } }; diff --git a/lib/unictype/categ_Pd.h b/lib/unictype/categ_Pd.h new file mode 100644 index 000000000..b32da94ac --- /dev/null +++ b/lib/unictype/categ_Pd.h @@ -0,0 +1,180 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[7 << 4]; + } +u_categ_Pd = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + 2 + 128 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 96 + }, + { + 0x00000000, 0x00002000, 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, + 0x00000400, 0x00000000, 0x00000000, 0x00000000, + 0x00000040, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x003F0000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00800000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x10000000, 0x00010000, 0x00000000, 0x00000000, + 0x00000000, 0x00000001, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00060000, 0x01000000, 0x00000008, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00002000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/categ_Pe.c b/lib/unictype/categ_Pe.c new file mode 100644 index 000000000..53155325c --- /dev/null +++ b/lib/unictype/categ_Pe.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Pe table. */ +#include "categ_Pe.h" + +const uc_general_category_t UC_CATEGORY_Pe = + { UC_CATEGORY_MASK_Pe, 0, { &u_categ_Pe } }; diff --git a/lib/unictype/categ_Pe.h b/lib/unictype/categ_Pe.h new file mode 100644 index 000000000..9e1734734 --- /dev/null +++ b/lib/unictype/categ_Pe.h @@ -0,0 +1,192 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[10 << 4]; + } +u_categ_Pe = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 80, + 2 + 128 * sizeof (short) / sizeof (int) + 96, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 112, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 128, + 2 + 128 * sizeof (short) / sizeof (int) + 144 + }, + { + 0x00000000, 0x00000200, 0x20000000, 0x20000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x28000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x10000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000040, 0x40000000, + 0x00004000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000400, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x002AAA00, + 0x00000000, 0x00000000, 0x00000040, 0x00000A80, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x01555550, 0x00000000, 0x0A000000, 0x20000000, + 0xCAA2AA00, 0x00000000, 0x00000000, 0x00000000, + 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, 0x00000000, 0x00000000, 0x00000000, + 0x01000000, 0x55400000, 0x54000115, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000200, 0x20000000, 0x20000000, 0x00000009, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/categ_Pf.c b/lib/unictype/categ_Pf.c new file mode 100644 index 000000000..435e19f1d --- /dev/null +++ b/lib/unictype/categ_Pf.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Pf table. */ +#include "categ_Pf.h" + +const uc_general_category_t UC_CATEGORY_Pf = + { UC_CATEGORY_MASK_Pf, 0, { &u_categ_Pf } }; diff --git a/lib/unictype/categ_Pf.h b/lib/unictype/categ_Pf.h new file mode 100644 index 000000000..eb0128f94 --- /dev/null +++ b/lib/unictype/categ_Pf.h @@ -0,0 +1,164 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[3 << 4]; + } +u_categ_Pf = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x08000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x22000000, 0x04000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x20002428, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/categ_Pi.c b/lib/unictype/categ_Pi.c new file mode 100644 index 000000000..9ea1de1dd --- /dev/null +++ b/lib/unictype/categ_Pi.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Pi table. */ +#include "categ_Pi.h" + +const uc_general_category_t UC_CATEGORY_Pi = + { UC_CATEGORY_MASK_Pi, 0, { &u_categ_Pi } }; diff --git a/lib/unictype/categ_Pi.h b/lib/unictype/categ_Pi.h new file mode 100644 index 000000000..0fa89ad1b --- /dev/null +++ b/lib/unictype/categ_Pi.h @@ -0,0 +1,164 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[3 << 4]; + } +u_categ_Pi = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000800, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x99000000, 0x02000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x10001214, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/categ_Po.c b/lib/unictype/categ_Po.c new file mode 100644 index 000000000..4c2e2cb1b --- /dev/null +++ b/lib/unictype/categ_Po.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Po table. */ +#include "categ_Po.h" + +const uc_general_category_t UC_CATEGORY_Po = + { UC_CATEGORY_MASK_Po, 0, { &u_categ_Po } }; diff --git a/lib/unictype/categ_Po.h b/lib/unictype/categ_Po.h new file mode 100644 index 000000000..a1b63eb19 --- /dev/null +++ b/lib/unictype/categ_Po.h @@ -0,0 +1,375 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[23 << 4]; + } +u_categ_Po = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 144, + 3 + 256 * sizeof (short) / sizeof (int) + 160, + 3 + 256 * sizeof (short) / sizeof (int) + 176, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 192, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 208, + 3 + 256 * sizeof (short) / sizeof (int) + 224, + 3 + 256 * sizeof (short) / sizeof (int) + 240, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 256, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 288, + 3 + 256 * sizeof (short) / sizeof (int) + 304, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 320, + 3 + 256 * sizeof (short) / sizeof (int) + 336, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 352, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x8C00D4EE, 0x10000001, 0x00000000, + 0x00000000, 0x80800002, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x40000000, + 0x00000080, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFC000000, 0x00000000, + 0x00000200, 0x40000000, 0x00000049, 0x00180000, + 0xC8003000, 0x00000000, 0x00000000, 0x00003C00, + 0x00000000, 0x00000000, 0x00100000, 0x00000000, + 0x00003FFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x03800000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00010030, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00100000, + 0x00000000, 0x00000000, 0x0C008000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0007FFF0, 0x00000000, 0x00000000, 0x00000000, + 0x00000020, 0x00000000, 0x00030000, 0x00000000, + 0x00000000, 0x00000000, 0x0000FC00, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x08000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x000001FE, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00006000, + 0x00000000, 0x00000000, 0x00000000, 0x00003800, + 0x00000000, 0x00600000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x07700000, 0x00000000, + 0x000007BF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000030, 0x00000000, + 0x00000000, 0x00000000, 0xC0000000, 0x00000000, + 0xC0000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFC000000, 0x00000001, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00C00000, 0x79FF00FF, 0x7FEBFF8E, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xDE000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x007FC9C3, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000000E, 0x20000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x08000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00F00000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x027F0000, 0x00010000, 0x80F71E60, 0x00000D03, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x8C00D4EE, 0x10000001, 0x00000000, 0x00000032, + 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, + 0x80000000, 0x00000000, 0x00010000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x80000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x01FF0000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x000F0000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/categ_Ps.c b/lib/unictype/categ_Ps.c new file mode 100644 index 000000000..4e10039d8 --- /dev/null +++ b/lib/unictype/categ_Ps.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Ps table. */ +#include "categ_Ps.h" + +const uc_general_category_t UC_CATEGORY_Ps = + { UC_CATEGORY_MASK_Ps, 0, { &u_categ_Ps } }; diff --git a/lib/unictype/categ_Ps.h b/lib/unictype/categ_Ps.h new file mode 100644 index 000000000..c4b37ce17 --- /dev/null +++ b/lib/unictype/categ_Ps.h @@ -0,0 +1,192 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[10 << 4]; + } +u_categ_Ps = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 80, + 2 + 128 * sizeof (short) / sizeof (int) + 96, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 112, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 128, + 2 + 128 * sizeof (short) / sizeof (int) + 144 + }, + { + 0x00000000, 0x00000100, 0x08000000, 0x08000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x14000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x08000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x44000000, 0x00000000, 0x00000020, 0x20000000, + 0x00002000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000200, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00155500, + 0x00000000, 0x00000000, 0x00000020, 0x00000540, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00AAAAA8, 0x00000000, 0x05000000, 0x10000000, + 0x25515500, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x40000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00800000, 0xAAA00000, 0x2A00008A, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000100, 0x08000000, 0x88000000, 0x00000004, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/categ_S.c b/lib/unictype/categ_S.c new file mode 100644 index 000000000..4eb51f5fa --- /dev/null +++ b/lib/unictype/categ_S.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_S table. */ +#include "categ_S.h" + +const uc_general_category_t UC_CATEGORY_S = + { UC_CATEGORY_MASK_S, 0, { &u_categ_S } }; diff --git a/lib/unictype/categ_S.h b/lib/unictype/categ_S.h new file mode 100644 index 000000000..f5a63e96d --- /dev/null +++ b/lib/unictype/categ_S.h @@ -0,0 +1,419 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[34 << 4]; + } +u_categ_S = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 144, + 3 + 256 * sizeof (short) / sizeof (int) + 160, + 3 + 256 * sizeof (short) / sizeof (int) + 176, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 192, + 3 + 256 * sizeof (short) / sizeof (int) + 208, + 3 + 256 * sizeof (short) / sizeof (int) + 224, + 3 + 256 * sizeof (short) / sizeof (int) + 240, + 3 + 256 * sizeof (short) / sizeof (int) + 256, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 288, + 3 + 256 * sizeof (short) / sizeof (int) + 304, + 3 + 256 * sizeof (short) / sizeof (int) + 320, + 3 + 256 * sizeof (short) / sizeof (int) + 336, + 3 + 256 * sizeof (short) / sizeof (int) + 352, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 368, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 384, + 3 + 256 * sizeof (short) / sizeof (int) + 400, + 3 + 256 * sizeof (short) / sizeof (int) + 416, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 432, + 3 + 256 * sizeof (short) / sizeof (int) + 448, + 3 + 256 * sizeof (short) / sizeof (int) + 464, + 3 + 256 * sizeof (short) / sizeof (int) + 480, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 496, + 3 + 256 * sizeof (short) / sizeof (int) + 512, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 528, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x70000810, 0x40000000, 0x50000001, + 0x00000000, 0x0153D3FC, 0x00800000, 0x00800000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFC003C, 0xFFFFBFE0, + 0x00000000, 0x00000000, 0x00000000, 0x00300000, + 0x00000030, 0x00000000, 0x00000000, 0x00400000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000004, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000C800, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x60000200, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00400000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x040C0000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00020000, + 0x00000000, 0x00000000, 0x00000000, 0x00010000, + 0x00000000, 0x00000000, 0x00000000, 0x07F80000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00060000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x80000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFCF8000E, 0x01500000, 0x00000000, 0x00000000, + 0x00000000, 0xC0000000, 0x00009FBF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000001, + 0x03FF0000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x08000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000001, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 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, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xA0000000, 0xE000E003, 0x6000E000, + 0x00000000, 0x00000000, 0x00040010, 0x1C000000, + 0x00001C00, 0x003FFFFF, 0x00000000, 0x00000000, + 0xC1D0037B, 0x0C0042AF, 0x00003C1F, 0x00000000, + 0xFFFF0000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFF9FF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000000FF, + 0xFFFFFFFF, 0x0000007F, 0x000007FF, 0x00000000, + 0xF0000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x000003FF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x1FFFFFFF, 0x0007FFFF, 0x00000000, 0x00000000, + 0xFFFFF3DE, 0xFFFFFEFF, 0x7F47AFFF, 0x000000FE, + 0xFF100000, 0x7FFEFFFF, 0xFFFF079F, 0xFFFF003F, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFE000007, 0xFFFFFFFF, 0xF0FFFFFF, 0xCFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x07FFFFFF, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x000007E0, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFBFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, 0x0FFF0000, + 0x000C0010, 0xC0C00001, 0x00000000, 0x00000000, + 0x18000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFC30000, 0x00000000, 0x0000FFFF, 0x00000000, + 0x7FFFFFFF, 0xFFFFFC00, 0x0001000F, 0xFFFFFFFF, + 0xFFFFFC00, 0x0001FFFF, 0xFFFFFFFF, 0x7FFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFF0000, 0xFFFFFFFF, 0x0000007F, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x007FFFFF, 0x00000003, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000F00, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000200, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x30000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000274, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x70000810, 0x40000000, 0x50000001, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x30007F7F, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000004, 0xFF800000, 0x00000000, 0xFE000000, + 0x000003FF, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, + 0xFFFFFFFF, 0xFFFFFC7F, 0xFFFFFFFF, 0x00001C1F, + 0xFFFFF018, 0xFFFFC3FF, 0x3FFFFFFF, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0x00000023, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x08000002, 0x08000000, + 0x00200000, 0x00200000, 0x00008000, 0x00008000, + 0x00000200, 0x00000200, 0x00000008, 0x00000000 + } +}; diff --git a/lib/unictype/categ_Sc.c b/lib/unictype/categ_Sc.c new file mode 100644 index 000000000..171d5b817 --- /dev/null +++ b/lib/unictype/categ_Sc.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Sc table. */ +#include "categ_Sc.h" + +const uc_general_category_t UC_CATEGORY_Sc = + { UC_CATEGORY_MASK_Sc, 0, { &u_categ_Sc } }; diff --git a/lib/unictype/categ_Sc.h b/lib/unictype/categ_Sc.h new file mode 100644 index 000000000..d5cc7c120 --- /dev/null +++ b/lib/unictype/categ_Sc.h @@ -0,0 +1,188 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[9 << 4]; + } +u_categ_Sc = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 96, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 112, + 2 + 128 * sizeof (short) / sizeof (int) + 128 + }, + { + 0x00000000, 0x00000010, 0x00000000, 0x00000000, + 0x00000000, 0x0000003C, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000800, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x000C0000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00020000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x02000000, + 0x00000000, 0x80000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x08000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x003FFFFF, 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, 0x10000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000200, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000010, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000063 + } +}; diff --git a/lib/unictype/categ_Sk.c b/lib/unictype/categ_Sk.c new file mode 100644 index 000000000..5f4d84e60 --- /dev/null +++ b/lib/unictype/categ_Sk.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Sk table. */ +#include "categ_Sk.h" + +const uc_general_category_t UC_CATEGORY_Sk = + { UC_CATEGORY_MASK_Sk, 0, { &u_categ_Sk } }; diff --git a/lib/unictype/categ_Sk.h b/lib/unictype/categ_Sk.h new file mode 100644 index 000000000..290f4a059 --- /dev/null +++ b/lib/unictype/categ_Sk.h @@ -0,0 +1,176 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[6 << 4]; + } +u_categ_Sk = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 80 + }, + { + 0x00000000, 0x00000000, 0x40000000, 0x00000001, + 0x00000000, 0x01108100, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFC003C, 0xFFFFBFE0, + 0x00000000, 0x00000000, 0x00000000, 0x00300000, + 0x00000030, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xA0000000, 0xE000E003, 0x6000E000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x18000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x007FFFFF, 0x00000003, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x40000000, 0x00000001, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000008 + } +}; diff --git a/lib/unictype/categ_Sm.c b/lib/unictype/categ_Sm.c new file mode 100644 index 000000000..158823fd6 --- /dev/null +++ b/lib/unictype/categ_Sm.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Sm table. */ +#include "categ_Sm.h" + +const uc_general_category_t UC_CATEGORY_Sm = + { UC_CATEGORY_MASK_Sm, 0, { &u_categ_Sm } }; diff --git a/lib/unictype/categ_Sm.h b/lib/unictype/categ_Sm.h new file mode 100644 index 000000000..8b9e19376 --- /dev/null +++ b/lib/unictype/categ_Sm.h @@ -0,0 +1,327 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[11 << 4]; + } +u_categ_Sm = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 144, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 160, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x70000800, 0x00000000, 0x50000000, + 0x00000000, 0x00021000, 0x00800000, 0x00800000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00400000, + 0x00000000, 0x00000000, 0x00040010, 0x1C000000, + 0x00001C00, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x0000081F, 0x00000000, + 0x0C1F0000, 0x00004049, 0x0014C000, 0xFFF00000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000F00, 0x00000003, 0x00000000, 0x10000000, + 0xF8000000, 0x000FFFFF, 0xF0000000, 0x00000003, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00800000, 0x00000002, 0xFF000000, + 0x00000000, 0x00000000, 0x00000000, 0x00008000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFF079F, 0xFFFF003F, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFE000007, 0xFFFFFFFF, 0xF0FFFFFF, 0xCFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000200, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000074, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x70000800, 0x00000000, 0x50000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00001E04, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x08000002, 0x08000000, + 0x00200000, 0x00200000, 0x00008000, 0x00008000, + 0x00000200, 0x00000200, 0x00000008, 0x00000000 + } +}; diff --git a/lib/unictype/categ_So.c b/lib/unictype/categ_So.c new file mode 100644 index 000000000..a1f688b5b --- /dev/null +++ b/lib/unictype/categ_So.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_So table. */ +#include "categ_So.h" + +const uc_general_category_t UC_CATEGORY_So = + { UC_CATEGORY_MASK_So, 0, { &u_categ_So } }; diff --git a/lib/unictype/categ_So.h b/lib/unictype/categ_So.h new file mode 100644 index 000000000..f009a6bb9 --- /dev/null +++ b/lib/unictype/categ_So.h @@ -0,0 +1,395 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[28 << 4]; + } +u_categ_So = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + 3 + 256 * sizeof (short) / sizeof (int) + 144, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 160, + 3 + 256 * sizeof (short) / sizeof (int) + 176, + 3 + 256 * sizeof (short) / sizeof (int) + 192, + 3 + 256 * sizeof (short) / sizeof (int) + 208, + 3 + 256 * sizeof (short) / sizeof (int) + 224, + 3 + 256 * sizeof (short) / sizeof (int) + 240, + 3 + 256 * sizeof (short) / sizeof (int) + 256, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 288, + 3 + 256 * sizeof (short) / sizeof (int) + 304, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 320, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 336, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 352, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 368, + 3 + 256 * sizeof (short) / sizeof (int) + 384, + 3 + 256 * sizeof (short) / sizeof (int) + 400, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 416, + 3 + 256 * sizeof (short) / sizeof (int) + 432, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x004142C0, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000004, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000C000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x60000200, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00400000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x04000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00010000, + 0x00000000, 0x00000000, 0x00000000, 0x05F80000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00060000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFCF8000E, 0x01500000, 0x00000000, 0x00000000, + 0x00000000, 0xC0000000, 0x00009FBF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000001, + 0x03FF0000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000001, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 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, 0x00003400, 0x00000000, + 0xF3E00000, 0xFFFFBFB6, 0xFFEB3FFF, 0x000FFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFF0FF, 0xFFFFF9FC, 0xFFFFFFFF, 0xEFFFFFFF, + 0x07FFFFFF, 0xFFF00000, 0x0FFFFFFF, 0x000000FC, + 0xFFFFFFFF, 0x0000007F, 0x000007FF, 0x00000000, + 0xF0000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x000003FF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFF7FFFFF, 0xFFFFFFFD, 0x00FFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF7FFF, + 0x1FFFFFFF, 0x0007FFFF, 0x00000000, 0x00000000, + 0xFFFFF3DE, 0xFFFFFEFF, 0x7F47AFFF, 0x000000FE, + 0xFF100000, 0x7FFEFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x07FFFFFF, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x000007E0, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFBFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, 0x0FFF0000, + 0x000C0010, 0xC0C00001, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFC30000, 0x00000000, 0x0000FFFF, 0x00000000, + 0x7FFFFFFF, 0xFFFFFC00, 0x0001000F, 0xFFFFFFFF, + 0xFFFFFC00, 0x0001FFFF, 0xFFFFFFFF, 0x7FFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFF0000, 0xFFFFFFFF, 0x0000007F, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000F00, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x20000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x30006110, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000004, 0xFF800000, 0x00000000, 0xFE000000, + 0x000003FF, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, + 0xFFFFFFFF, 0xFFFFFC7F, 0xFFFFFFFF, 0x00001C1F, + 0xFFFFF018, 0xFFFFC3FF, 0x3FFFFFFF, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0x00000023, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/categ_Z.c b/lib/unictype/categ_Z.c new file mode 100644 index 000000000..eb187d63a --- /dev/null +++ b/lib/unictype/categ_Z.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Z table. */ +#include "categ_Z.h" + +const uc_general_category_t UC_CATEGORY_Z = + { UC_CATEGORY_MASK_Z, 0, { &u_categ_Z } }; diff --git a/lib/unictype/categ_Z.h b/lib/unictype/categ_Z.h new file mode 100644 index 000000000..7fa922a48 --- /dev/null +++ b/lib/unictype/categ_Z.h @@ -0,0 +1,172 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[5 << 4]; + } +u_categ_Z = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000001, 0x00000000, 0x00000000, + 0x00000000, 0x00000001, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000001, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00004000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x000007FF, 0x00008300, 0x80000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000001, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/categ_Zl.c b/lib/unictype/categ_Zl.c new file mode 100644 index 000000000..4a6e3df3b --- /dev/null +++ b/lib/unictype/categ_Zl.c @@ -0,0 +1,30 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +static bool +uc_is_category_Zl (ucs4_t uc) +{ + return (uc == 0x2028); +} + +const uc_general_category_t UC_CATEGORY_Zl = + { UC_CATEGORY_MASK_Zl, 1, { &uc_is_category_Zl } }; diff --git a/lib/unictype/categ_Zl.h b/lib/unictype/categ_Zl.h new file mode 100644 index 000000000..56066537f --- /dev/null +++ b/lib/unictype/categ_Zl.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[1 << 4]; + } +u_categ_Zl = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000100, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/categ_Zp.c b/lib/unictype/categ_Zp.c new file mode 100644 index 000000000..23f682cdd --- /dev/null +++ b/lib/unictype/categ_Zp.c @@ -0,0 +1,30 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +static bool +uc_is_category_Zp (ucs4_t uc) +{ + return (uc == 0x2029); +} + +const uc_general_category_t UC_CATEGORY_Zp = + { UC_CATEGORY_MASK_Zp, 1, { &uc_is_category_Zp } }; diff --git a/lib/unictype/categ_Zp.h b/lib/unictype/categ_Zp.h new file mode 100644 index 000000000..91e9d8ad5 --- /dev/null +++ b/lib/unictype/categ_Zp.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[1 << 4]; + } +u_categ_Zp = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000200, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/categ_Zs.c b/lib/unictype/categ_Zs.c new file mode 100644 index 000000000..c9971577a --- /dev/null +++ b/lib/unictype/categ_Zs.c @@ -0,0 +1,27 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_categ_Zs table. */ +#include "categ_Zs.h" + +const uc_general_category_t UC_CATEGORY_Zs = + { UC_CATEGORY_MASK_Zs, 0, { &u_categ_Zs } }; diff --git a/lib/unictype/categ_Zs.h b/lib/unictype/categ_Zs.h new file mode 100644 index 000000000..be3c5cdff --- /dev/null +++ b/lib/unictype/categ_Zs.h @@ -0,0 +1,172 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[5 << 4]; + } +u_categ_Zs = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000001, 0x00000000, 0x00000000, + 0x00000000, 0x00000001, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000001, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00004000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x000007FF, 0x00008000, 0x80000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000001, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/categ_and.c b/lib/unictype/categ_and.c new file mode 100644 index 000000000..2101f94e9 --- /dev/null +++ b/lib/unictype/categ_and.c @@ -0,0 +1,45 @@ +/* Categories of Unicode characters. + Copyright (C) 2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2007. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +uc_general_category_t +uc_general_category_and (uc_general_category_t category1, + uc_general_category_t category2) +{ + uint32_t bitmask; + uc_general_category_t result; + + bitmask = category1.bitmask & category2.bitmask; + + if (bitmask == category1.bitmask) + return category1; + + if (bitmask == category2.bitmask) + return category2; + + if (bitmask == 0) + return _UC_CATEGORY_NONE; + + result.bitmask = bitmask; + result.generic = 1; + result.lookup.lookup_fn = &uc_is_general_category_withtable; + return result; +} diff --git a/lib/unictype/categ_and_not.c b/lib/unictype/categ_and_not.c new file mode 100644 index 000000000..6cc27596c --- /dev/null +++ b/lib/unictype/categ_and_not.c @@ -0,0 +1,42 @@ +/* Categories of Unicode characters. + Copyright (C) 2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2007. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +uc_general_category_t +uc_general_category_and_not (uc_general_category_t category1, + uc_general_category_t category2) +{ + uint32_t bitmask; + uc_general_category_t result; + + bitmask = category1.bitmask & ~category2.bitmask; + + if (bitmask == category1.bitmask) + return category1; + + if (bitmask == 0) + return _UC_CATEGORY_NONE; + + result.bitmask = bitmask; + result.generic = 1; + result.lookup.lookup_fn = &uc_is_general_category_withtable; + return result; +} diff --git a/lib/unictype/categ_byname.c b/lib/unictype/categ_byname.c new file mode 100644 index 000000000..a175dd15e --- /dev/null +++ b/lib/unictype/categ_byname.c @@ -0,0 +1,105 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +uc_general_category_t +uc_general_category_byname (const char *category_name) +{ + if (category_name[0] != '\0' + && (category_name[1] == '\0' || category_name[2] == '\0')) + switch (category_name[0]) + { + case 'L': + switch (category_name[1]) + { + case '\0': return UC_CATEGORY_L; + case 'u': return UC_CATEGORY_Lu; + case 'l': return UC_CATEGORY_Ll; + case 't': return UC_CATEGORY_Lt; + case 'm': return UC_CATEGORY_Lm; + case 'o': return UC_CATEGORY_Lo; + } + break; + case 'M': + switch (category_name[1]) + { + case '\0': return UC_CATEGORY_M; + case 'n': return UC_CATEGORY_Mn; + case 'c': return UC_CATEGORY_Mc; + case 'e': return UC_CATEGORY_Me; + } + break; + case 'N': + switch (category_name[1]) + { + case '\0': return UC_CATEGORY_N; + case 'd': return UC_CATEGORY_Nd; + case 'l': return UC_CATEGORY_Nl; + case 'o': return UC_CATEGORY_No; + } + break; + case 'P': + switch (category_name[1]) + { + case '\0': return UC_CATEGORY_P; + case 'c': return UC_CATEGORY_Pc; + case 'd': return UC_CATEGORY_Pd; + case 's': return UC_CATEGORY_Ps; + case 'e': return UC_CATEGORY_Pe; + case 'i': return UC_CATEGORY_Pi; + case 'f': return UC_CATEGORY_Pf; + case 'o': return UC_CATEGORY_Po; + } + break; + case 'S': + switch (category_name[1]) + { + case '\0': return UC_CATEGORY_S; + case 'm': return UC_CATEGORY_Sm; + case 'c': return UC_CATEGORY_Sc; + case 'k': return UC_CATEGORY_Sk; + case 'o': return UC_CATEGORY_So; + } + break; + case 'Z': + switch (category_name[1]) + { + case '\0': return UC_CATEGORY_Z; + case 's': return UC_CATEGORY_Zs; + case 'l': return UC_CATEGORY_Zl; + case 'p': return UC_CATEGORY_Zp; + } + break; + case 'C': + switch (category_name[1]) + { + case '\0': return UC_CATEGORY_C; + case 'c': return UC_CATEGORY_Cc; + case 'f': return UC_CATEGORY_Cf; + case 's': return UC_CATEGORY_Cs; + case 'o': return UC_CATEGORY_Co; + case 'n': return UC_CATEGORY_Cn; + } + break; + } + /* Invalid category name. */ + return _UC_CATEGORY_NONE; +} diff --git a/lib/unictype/categ_name.c b/lib/unictype/categ_name.c new file mode 100644 index 000000000..10421efcd --- /dev/null +++ b/lib/unictype/categ_name.c @@ -0,0 +1,77 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +static const char u_category_name[30][3] = +{ + "Lu", "Ll", "Lt", "Lm", "Lo", "Mn", "Mc", "Me", "Nd", "Nl", + "No", "Pc", "Pd", "Ps", "Pe", "Pi", "Pf", "Po", "Sm", "Sc", + "Sk", "So", "Zs", "Zl", "Zp", "Cc", "Cf", "Cs", "Co", "Cn" +}; + +const char * +uc_general_category_name (uc_general_category_t category) +{ + uint32_t bitmask = category.bitmask; + /* bitmask should consist of a single bit. */ + if (bitmask != 0) + { + if ((bitmask & (bitmask - 1)) == 0) + { + int bit; + /* Take log2 using a variant of Robert Harley's method. + Found by Bruno Haible 1996. */ + uint32_t n = bitmask; + static const char ord2_tab[64] = + { + -1, 0, 1, 12, 2, 6, -1, 13, 3, -1, 7, -1, -1, -1, -1, 14, + 10, 4, -1, -1, 8, -1, -1, 25, -1, -1, -1, -1, -1, 21, 27, 15, + 31, 11, 5, -1, -1, -1, -1, -1, 9, -1, -1, 24, -1, -1, 20, 26, + 30, -1, -1, -1, -1, 23, -1, 19, 29, -1, 22, 18, 28, 17, 16, -1 + }; + n += n << 4; + n += n << 6; + n = (n << 16) - n; + bit = ord2_tab[n >> 26]; + + if (bit < sizeof (u_category_name) / sizeof (u_category_name[0])) + return u_category_name[bit]; + } + else + { + if (bitmask == UC_CATEGORY_MASK_L) + return "L"; + if (bitmask == UC_CATEGORY_MASK_M) + return "M"; + if (bitmask == UC_CATEGORY_MASK_N) + return "N"; + if (bitmask == UC_CATEGORY_MASK_P) + return "P"; + if (bitmask == UC_CATEGORY_MASK_S) + return "S"; + if (bitmask == UC_CATEGORY_MASK_Z) + return "Z"; + if (bitmask == UC_CATEGORY_MASK_C) + return "C"; + } + } + return NULL; +} diff --git a/lib/unictype/categ_none.c b/lib/unictype/categ_none.c new file mode 100644 index 000000000..9e33ab931 --- /dev/null +++ b/lib/unictype/categ_none.c @@ -0,0 +1,30 @@ +/* Categories of Unicode characters. + Copyright (C) 2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2007. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +static bool +always_false (ucs4_t uc, uint32_t bitmask) +{ + return false; +} + +const uc_general_category_t _UC_CATEGORY_NONE = + { 0, 1, { &always_false } }; diff --git a/lib/unictype/categ_of.c b/lib/unictype/categ_of.c new file mode 100644 index 000000000..85b694f48 --- /dev/null +++ b/lib/unictype/categ_of.c @@ -0,0 +1,81 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_category table. */ +#include "categ_of.h" + +static inline int +lookup_withtable (ucs4_t uc) +{ + unsigned int index1 = uc >> category_header_0; + if (index1 < category_header_1) + { + int lookup1 = u_category.level1[index1]; + if (lookup1 >= 0) + { + unsigned int index2 = (uc >> category_header_2) & category_header_3; + int lookup2 = u_category.level2[lookup1 + index2]; + if (lookup2 >= 0) + { + unsigned int index3 = ((uc & category_header_4) + lookup2) * 5; + /* level3 contains 5-bit values, packed into 16-bit words. */ + unsigned int lookup3 = + ((u_category.level3[index3>>4] + | (u_category.level3[(index3>>4)+1] << 16)) + >> (index3 % 16)) + & 0x1f; + + return lookup3; + } + } + return 29; /* = log2(UC_CATEGORY_MASK_Cn) */ + } + return -1; +} + +bool +uc_is_general_category_withtable (ucs4_t uc, uint32_t bitmask) +{ + int bit = lookup_withtable (uc); + + if (bit >= 0) + return ((bitmask >> bit) & 1); + else + return false; +} + +uc_general_category_t +uc_general_category (ucs4_t uc) +{ + int bit = lookup_withtable (uc); + uc_general_category_t result; + + if (bit >= 0) + { + result.bitmask = 1 << bit; + result.generic = 1; + result.lookup.lookup_fn = &uc_is_general_category_withtable; + return result; + } + else + return _UC_CATEGORY_NONE; +} diff --git a/lib/unictype/categ_of.h b/lib/unictype/categ_of.h new file mode 100644 index 000000000..e77f1ea88 --- /dev/null +++ b/lib/unictype/categ_of.h @@ -0,0 +1,1033 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Categories of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define category_header_0 16 +#define category_header_1 17 +#define category_header_2 7 +#define category_header_3 511 +#define category_header_4 127 +static const +struct + { + int level1[17]; + short level2[5 << 9]; + unsigned short level3[137 * 40 + 1]; + } +u_category = +{ + { + 0, 512, 1024, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 1536, 2048, + 2048 + }, + { + 0, 128, 256, 384, 512, 640, 768, 896, + 1024, 1152, 1280, 1408, 1536, 1664, 1792, 1920, + -1, -1, 2048, 2176, 2304, 2432, 2560, 2688, + 2816, 2944, 3072, 3200, 3328, 3456, 3584, 3712, + 3840, 3968, 4096, 4224, 4352, 4480, 4608, 4736, + 4864, 4992, 4992, 4992, 5120, 5248, 5376, 5504, + 5632, 5760, 5888, 6016, 6144, -1, 6272, -1, + -1, -1, 6400, 6528, 6656, 6784, 6912, 7040, + 7168, 7296, 7424, 7552, 7680, 7680, 7808, 7936, + 8064, 8192, 8320, 8448, 8576, 8704, 8832, 8960, + 8320, 8320, 7680, 9088, 7680, 7680, 9216, -1, + 9344, 9472, 9600, 9728, 9856, 9984, 8320, 10112, + 10240, 10368, 10496, 10624, 10752, 10880, 8320, 8320, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 11008, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 11136, + 11264, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 11392, -1, -1, -1, -1, 11520, -1, + 11648, -1, -1, -1, -1, -1, -1, -1, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 11776, + 11904, 11904, 11904, 11904, 11904, 11904, 11904, 11904, + 11904, 11904, 11904, 11904, 11904, 11904, 11904, 11904, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 4992, 4992, 12160, 12288, 12416, 12544, + 4992, 4992, 12672, 12800, 12928, 13056, 13184, 13312, + 13440, 13568, 13696, 13824, -1, -1, 13952, 14080, + 14208, 14336, -1, -1, -1, -1, -1, -1, + 14464, -1, 14592, -1, 14720, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 4992, 4992, 4992, 4992, 4992, 4992, 14848, -1, + 14976, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 8320, 15104, 15232, 15360, 15488, -1, 15616, -1, + 15744, 15872, 16000, 16128, 16256, 16384, 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, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 4992, 4992, 4992, + 4992, 4992, 4992, 4992, 4992, 16768, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 4992, 4992, 4992, 4992, 16896, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 17024, -1, 17152, 17280, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 12032, + 12032, 12032, 12032, 12032, 12032, 12032, 12032, 17408 + }, + { + 0xe739, 0x739c, 0x39ce, 0x9ce7, 0xce73, 0xe739, 0x739c, 0x39ce, + 0x9ce7, 0xce73, 0xc636, 0x6338, 0xcd8c, 0x1945, 0x8c59, 0x2108, + 0x1084, 0x0842, 0x28c5, 0x8ca5, 0x0011, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x1680, 0x5d1d, 0x8434, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x2684, 0xcc9d, + 0xe739, 0x739c, 0x39ce, 0x9ce7, 0xce73, 0xe739, 0x739c, 0x39ce, + 0x9ce7, 0xce73, 0xce36, 0x6739, 0xb4ad, 0x2786, 0xa575, 0x2a55, + 0x4345, 0x548d, 0xa805, 0x8a94, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0090, 0x0000, 0x0800, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2190, 0x1084, 0x0842, + 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, + 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, + 0x0200, 0x0108, 0x1004, 0x0040, 0x0401, 0x4010, 0x2100, 0x0080, + 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, + 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0x0008, 0x1004, 0x0840, + 0x8001, 0x0200, 0x0100, 0x1000, 0x0002, 0x0400, 0x0200, 0x2000, + 0x0084, 0x0040, 0x8020, 0x0200, 0x0100, 0x0084, 0x0002, 0x0001, + 0x4010, 0x2000, 0x0204, 0x0842, 0x1084, 0x4402, 0x2200, 0x1100, + 0x0040, 0x0401, 0x4010, 0x0100, 0x1004, 0x0802, 0x8020, 0x0200, + 0x2008, 0x0080, 0x0802, 0x8801, 0x0200, 0x2000, 0x0080, 0x0802, + 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, + 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, + 0x4210, 0x2108, 0x1000, 0x0800, 0x0401, 0x0000, 0x2008, 0x0080, + 0x0802, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4240, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8c63, + 0xc631, 0x6318, 0x318c, 0x18c6, 0x5063, 0xe94a, 0x6318, 0x318c, + 0x18c6, 0x5063, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x8c63, 0x2831, + 0x94a5, 0x4a52, 0xa0e9, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, + 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, 0xf7bd, 0x694e, 0xbdef, 0x108f, 0xec42, + 0xf7bd, 0x294e, 0x0088, 0x0e80, 0x003a, 0x0001, 0x0000, 0x0000, + 0x0000, 0x0000, 0x7400, 0x0000, 0x0000, 0x1000, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0xe842, 0x0021, 0x4200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, + 0x2008, 0x0080, 0x0802, 0x8421, 0x8200, 0x0104, 0x1080, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8020, 0x0200, + 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, + 0xd420, 0x4a52, 0xe7e9, 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, + 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, + 0x0200, 0x2008, 0x0080, 0x0802, 0x0400, 0x4010, 0x0100, 0x1004, + 0x0840, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, + 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, + 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x7bd0, 0xbdef, + 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 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, + 0x8421, 0x4210, 0x3d08, 0xdeb2, 0xef7b, 0x94bd, 0x4a52, 0xa529, + 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, + 0x4a52, 0xa529, 0x5294, 0x2c4a, 0x94b1, 0x4a58, 0xbd2c, 0xdef7, + 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0xde90, 0xef7b, 0x9084, 0x7b18, 0xbdef, 0xdef7, 0xef7b, + 0x6b5a, 0x7bdd, 0xbdef, 0x19f7, 0xad63, 0x94a5, 0x4a52, 0xbdef, + 0xd8f7, 0x8c7b, 0x109d, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0xde90, 0xef7b, 0x1083, 0x0842, 0x8421, 0x5290, + 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0xe94a, 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, + 0xa528, 0x5296, 0x210a, 0x2108, 0x1084, 0x0842, 0x4211, 0x256a, + 0xc631, 0x6318, 0x318c, 0x18c6, 0xd763, 0x10a4, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x94a5, + 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0xde94, + 0x2109, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0xef48, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x4842, 0xa529, 0x5294, 0x294a, 0xf485, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0x2108, 0x1084, 0x0842, 0x4211, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x5290, 0x294a, 0x94a5, 0x4632, 0x318d, 0xde8e, 0xef7b, + 0x14bd, 0x0843, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x5ef4, 0x3188, 0x94a6, 0x4a52, 0xc529, 0x6318, + 0xef4a, 0x94a4, 0x7a52, 0x84ef, 0x4210, 0x2108, 0x9484, 0x2312, + 0x0842, 0x8421, 0x4210, 0xf7b1, 0x7bde, 0xbdef, 0x4277, 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, + 0xe90a, 0xf7bd, 0x7bde, 0xbd37, 0x4ef7, 0x2748, 0x9484, 0x3bd2, + 0x0842, 0x8421, 0x4210, 0xcc84, 0x94a9, 0x4a52, 0xded5, 0xef7b, + 0x14bd, 0x09d3, 0x8421, 0xde90, 0x277b, 0x77a4, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0x4213, 0x2108, 0x13a4, + 0x09d2, 0x84e9, 0x5ef4, 0x31ba, 0x94a6, 0x7bde, 0xa52f, 0x52f7, + 0xef4a, 0xf7bd, 0x7bde, 0x9def, 0x4210, 0xe93a, 0xf7bd, 0x3bde, + 0x0842, 0x8421, 0x4210, 0x10a5, 0x7a42, 0xbdef, 0xdef7, 0xef7b, + 0x14bd, 0x09d3, 0x8421, 0x4210, 0x2748, 0x7484, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0x4213, 0x2108, 0x13a4, + 0x09d2, 0x8421, 0x5ef4, 0x3188, 0x94a6, 0x4a52, 0xc52f, 0x6374, + 0xef4a, 0xf7a4, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0x9484, 0x3bd2, + 0x0842, 0x8421, 0x4210, 0xf67d, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x18bd, 0x09d3, 0x8421, 0x4210, 0x277a, 0x77a4, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0x4213, 0x2108, 0x13a4, + 0x09d2, 0x8421, 0x5ef4, 0x2988, 0x94a6, 0x7bd2, 0xa637, 0x6377, + 0xef4a, 0xf7bd, 0x7bde, 0xbd31, 0x4ef7, 0x2748, 0xf484, 0x3bde, + 0x0842, 0x8421, 0x4210, 0xf495, 0x7bde, 0xbdef, 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, + 0xef4a, 0xf7bd, 0x7bde, 0xbd37, 0xdef7, 0xef7b, 0xf7bd, 0x3bde, + 0x0842, 0x8421, 0x4210, 0xa94a, 0x6b5a, 0x75ad, 0xded6, 0xef7b, + 0x18dd, 0x09d3, 0x8421, 0x4210, 0x213a, 0x13a4, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0x4213, 0x2108, 0x1084, + 0x09d2, 0x8421, 0xdef4, 0x297b, 0x18c5, 0x7a63, 0xa529, 0x5297, + 0xef4a, 0xf7bd, 0x4bde, 0xbde9, 0xdef7, 0xef7b, 0xf484, 0x3bde, + 0x0842, 0x8421, 0x4210, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1bbd, 0x09d3, 0x8421, 0x4210, 0x213a, 0x13a4, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0x4213, 0x2108, 0x1084, + 0x09d2, 0x8421, 0x5ef4, 0x2988, 0x18c6, 0x7a63, 0xa631, 0x531b, + 0xef4a, 0xf7bd, 0x8dde, 0xbde9, 0xdef7, 0xe93b, 0x9484, 0x3bd2, + 0x0842, 0x8421, 0x4210, 0xd6bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1bbd, 0x09d3, 0x8421, 0x4210, 0x213a, 0x13a4, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0x4213, 0x2108, 0x1084, + 0x0842, 0x8421, 0xdef4, 0x31bb, 0x94a6, 0xbbd2, 0xa631, 0x631b, + 0xef4a, 0xf7bd, 0x7bde, 0xbd37, 0xdef7, 0xef7b, 0xf484, 0x3bde, + 0x0842, 0x8421, 0x4210, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1bbd, 0x09d3, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0xbde9, + 0x4213, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x7484, + 0x0842, 0x8421, 0xd210, 0xef49, 0x1084, 0x0842, 0xbde9, 0xde97, + 0x377b, 0x94c6, 0x7a52, 0xc6e9, 0x6318, 0x318c, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0x1bbd, 0x7b13, 0xbdef, 0xdef7, 0xef7b, + 0x109d, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x10a4, + 0x4a52, 0xa529, 0xde94, 0x9f7b, 0x1084, 0xc842, 0xa528, 0x5294, + 0x894a, 0x2108, 0x1084, 0x0842, 0xd8c5, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x909d, 0x7a4e, 0xa427, 0xde93, 0xef49, 0xf7bd, 0x084e, 0x9d21, + 0x4210, 0x2108, 0x109d, 0x49d2, 0xbd27, 0xd213, 0x2109, 0x10a4, + 0x4a52, 0xa529, 0x52f4, 0xef48, 0x1084, 0xfa42, 0xa5e8, 0x5294, + 0xef4a, 0x2108, 0x1084, 0x0842, 0x4ef5, 0xef48, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0xd6a4, 0x631a, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6b5a, 0xa5ad, + 0x5ad4, 0xad6b, 0x2108, 0x1084, 0x0842, 0xa529, 0x5294, 0x294a, + 0x4b55, 0xb52d, 0xd734, 0x319c, 0x1084, 0x0842, 0x9d21, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0xde90, 0xef7b, 0x94bd, 0x4a52, 0xa529, 0x5294, 0x314a, + 0x94a5, 0x6252, 0x8429, 0xd210, 0xef7b, 0x94a5, 0x4a52, 0xbd29, + 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, + 0x4a52, 0xa529, 0x5294, 0xad7a, 0xd6b5, 0x6b5a, 0xb5a9, 0x5ad6, + 0xaf7b, 0xf631, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x7484, 0x0842, 0x9d21, 0x6e90, 0x294a, 0x94c5, + 0x7bde, 0xa629, 0xdef4, 0xef7b, 0x2108, 0x1084, 0x0842, 0x18c5, + 0x8c63, 0x1084, 0x8842, 0xa531, 0xdef4, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, + 0xdef7, 0xef7b, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x4000, 0xbdef, 0xdef7, + 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x3890, 0xef7a, + 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, 0xdef4, 0x277b, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x9084, 0x7bde, 0x84ef, 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, 0xdef4, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 0x4213, + 0xef48, 0x1084, 0x0842, 0xa4e9, 0x4213, 0xef48, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0xa421, 0x4213, 0xef48, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x13a4, + 0x4842, 0x84ef, 0x4210, 0xe908, 0x13a4, 0x4842, 0x84ef, 0x4210, + 0x2108, 0x1084, 0x0842, 0x84e9, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 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, + 0x518c, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0xef7a, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0xd6b5, 0x6b5a, 0xb5ad, + 0xdef6, 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, 0x7a42, 0xbdef, 0xdef7, 0xef7b, + 0x109d, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2462, 0x1084, 0x0842, 0xbde9, 0xdef7, 0xef7b, + 0x1096, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0xe690, 0xef7a, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x1890, 0x4a63, 0xf7a9, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x213a, 0x9484, 0x7a52, 0xbdef, + 0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x9484, + 0x6252, 0xbdec, 0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x9484, 0x7bd2, 0xbdef, 0xdef7, 0xef7b, 0x1084, 0x0842, + 0x8421, 0x4210, 0x213a, 0x97a4, 0x7bd2, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0xb5a2, 0xa529, 0x5294, 0x318a, 0x18c6, 0x4c63, 0xa631, 0x5294, + 0x294a, 0x94a5, 0x6312, 0x311c, 0x49c6, 0xef4a, 0x2108, 0x1084, + 0x0842, 0xdef5, 0xef7b, 0x294a, 0x94a5, 0x4a52, 0xdef5, 0xef7b, + 0xc631, 0x2318, 0x318b, 0x52c6, 0xed8a, 0x2108, 0x1084, 0x0842, + 0xdef5, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x9084, 0x0841, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0xbd21, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0xa421, 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, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0xef7a, 0x14a5, 0x8c63, 0xc529, 0xd318, 0xef7b, 0x14c6, + 0x8c63, 0xa631, 0xd294, 0xef7b, 0xf7b5, 0x231e, 0x0842, 0x8421, + 0x4210, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0xef48, 0x1084, 0x7a42, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0xdef4, 0xef7b, 0x18c6, + 0x8c63, 0xc631, 0x6318, 0x318c, 0x1086, 0x0842, 0xc621, 0xdef4, + 0xef7b, 0x2108, 0x1084, 0x0842, 0xdef5, 0x8c7b, 0xd6b5, 0x6b5a, + 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0xc529, + 0xd318, 0x8c7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x94a5, 0x0862, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x4c52, 0xa529, 0x5314, 0x318c, 0x14c6, 0x0863, 0x8421, 0xd210, + 0xef7b, 0x2108, 0x1084, 0x0842, 0x18c5, 0x8c63, 0xd6b1, 0x6b5a, + 0xb5ad, 0x52d6, 0x294a, 0x94a5, 0x6b52, 0xb5ad, 0x5ad6, 0xef7b, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x3084, 0x18c6, 0x8c63, + 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, + 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8463, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2308, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0x3184, 0x18c6, 0x8c63, 0xc631, 0x6318, 0x318c, 0x18c6, 0x8c63, + 0xc631, 0x6318, 0x318c, 0x18c6, 0x94a5, 0x4a52, 0xa529, 0xde94, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0x297b, + 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, + 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, + 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, + 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, + 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, + 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x4200, 0x2108, + 0xd084, 0xef7b, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, + 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, + 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, + 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0xdef4, 0xef7b, + 0x8421, 0x4210, 0x0008, 0x0000, 0x0000, 0x8421, 0x4210, 0x00ef, + 0x0000, 0xef40, 0x8421, 0x4210, 0x0008, 0x0000, 0x0000, 0x8421, + 0x4210, 0x0008, 0x0000, 0x0000, 0x8421, 0x4210, 0x00ef, 0x0000, + 0xef40, 0x8421, 0x4210, 0x1d08, 0xd074, 0x0741, 0x8421, 0x4210, + 0x0008, 0x0000, 0x0000, 0x8421, 0x4210, 0x2108, 0x1084, 0xef42, + 0x8421, 0x4210, 0x4208, 0x2108, 0x1084, 0x8421, 0x4210, 0x4208, + 0x2108, 0x1084, 0x8421, 0x4210, 0x4208, 0x2108, 0x1084, 0x8421, + 0x7a10, 0x0008, 0x2000, 0xa068, 0x8694, 0x7a10, 0x0008, 0x2000, + 0xa528, 0x8421, 0x7bd0, 0x0008, 0xd000, 0xa529, 0x8421, 0x4210, + 0x0008, 0x0000, 0xa528, 0x87bd, 0x7a10, 0x0008, 0x2000, 0xed28, + 0x5ad6, 0xad6b, 0xd6b5, 0xad5a, 0xd6b5, 0x318c, 0x58c6, 0x0f8c, + 0xf7b6, 0x7b60, 0xc631, 0x6318, 0x178c, 0xad6b, 0xb6b5, 0xc631, + 0x6318, 0xf18c, 0x18c1, 0x5c63, 0xc62b, 0x9b28, 0x318b, 0x18c6, + 0x8c63, 0xca31, 0x62b8, 0x318c, 0x18c6, 0xb463, 0x6b5a, 0x7bdd, + 0xbdef, 0xad6b, 0xd6b5, 0xf42a, 0x94ae, 0x4a52, 0x2949, 0x0b9b, + 0x294a, 0x94a5, 0x4a52, 0x2949, 0xeb9b, 0x8c63, 0x7a31, 0xbdef, + 0xdef7, 0xef7b, 0xce73, 0xe739, 0x739c, 0x39ce, 0x9ce7, 0xce73, + 0x6739, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x39ce, 0x9ca7, 0x4a73, + 0xa529, 0x5294, 0x294a, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x82b5, 0x6b5a, 0xb505, 0x0006, 0x0840, 0x8000, 0x4150, 0x15ad, + 0x0000, 0xad40, 0xd6b5, 0x2a0a, 0xa0a8, 0x0002, 0x0d40, 0x0000, + 0x0810, 0x2421, 0x1ad4, 0x0002, 0x4a52, 0x4129, 0x2108, 0x5954, + 0xe86b, 0x77bd, 0x94a5, 0x4a52, 0xa529, 0x5294, 0xa529, 0x5294, + 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, + 0x2529, 0x7a10, 0xbdef, 0xdef7, 0xef7b, 0x4a52, 0x6b29, 0xb5ad, + 0x594a, 0xad6b, 0x56b2, 0xab59, 0xb5ac, 0x5ad6, 0xacab, 0xd6b5, + 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, + 0x94ab, 0xcab5, 0x6b2a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, + 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0xa52a, 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, + 0xd6b5, 0x6b5a, 0x52ad, 0x594a, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, + 0x5ad6, 0xad6b, 0xd652, 0x6b5a, 0xb5ad, 0x5ab9, 0xad6b, 0xd6b5, + 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, + 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, + 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x2ad6, 0xad6b, + 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, + 0x2956, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, + 0x6b59, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, + 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x2ad6, 0x94a5, 0xd652, 0x6b5a, + 0xbdad, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 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, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0x294a, 0x94a5, + 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, + 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, + 0x5529, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, + 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, + 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, + 0xb5ad, 0xa52a, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, + 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, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, + 0x6b5a, 0xb595, 0x5ad6, 0xad6b, 0xd655, 0x6b5a, 0xb5ad, 0x5ad6, + 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, + 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0x52ad, 0x294a, 0x94a5, + 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, 0x956b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, + 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, + 0x5ad6, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 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, 0xb5ed, 0x5ad6, 0xed6b, 0xd6bd, 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, 0xdeca, + 0xef7b, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0x6529, + 0xcd73, 0xd735, 0xef7b, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, + 0xca52, 0x9ae6, 0xae6b, 0xe6b9, 0x6b9a, 0xb9ae, 0x9ae6, 0x4e6b, + 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, + 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, + 0x94a5, 0x4a52, 0xa529, 0xcd94, 0x2735, 0x94a5, 0x4a52, 0xa529, + 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0xd94a, 0x949c, + 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, + 0xded6, 0xef7b, 0xd6b5, 0x7bda, 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, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xe800, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0xe842, 0x0020, 0x4200, + 0x0100, 0x1004, 0xef7a, 0xf7bd, 0x401e, 0xbd08, 0xdef7, 0xef7b, + 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, + 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, + 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, + 0x0802, 0x8020, 0x0200, 0x2008, 0x0080, 0x0802, 0x8020, 0x6a10, + 0xb5ad, 0xded6, 0xef7b, 0xf7bd, 0x7bde, 0x3def, 0x18c6, 0x8c55, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 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, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0xbde9, + 0xdef7, 0xef7b, 0x1084, 0x0842, 0x84e9, 0x4210, 0xe908, 0x1084, + 0x0842, 0x84e9, 0x4210, 0xe908, 0x1084, 0x0842, 0x84e9, 0x4210, + 0xe908, 0x1084, 0x0842, 0x84e9, 0x4210, 0xe908, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x3e31, 0x60f8, 0xf18c, 0xf8c1, 0x8c60, 0xc631, 0x6318, 0xbd64, + 0xfef7, 0xef60, 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, + 0x5af6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, + 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, + 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, + 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x7bda, 0xbdef, 0xdef7, 0xef7b, + 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, + 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, + 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, + 0xad6b, 0xd6b5, 0x6b5a, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 0xdad6, 0xef7b, + 0xc636, 0x0758, 0xcd49, 0xd735, 0x735c, 0xd5cd, 0x5cda, 0xcd73, + 0xc735, 0x739a, 0xa535, 0x5294, 0x294a, 0x5295, 0x294a, 0x8c6c, + 0x4631, 0x29ad, 0x41a5, 0xad62, 0x109d, 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, 0xbde9, + 0x4a14, 0x20c7, 0x108c, 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, 0x3890, 0x20c6, + 0xf7bd, 0x09de, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0xef7a, 0x109d, + 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, 0xe908, 0x2ab5, 0x54a5, 0xb5ad, + 0x5ad6, 0xad6b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0xbd21, 0xdef7, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, + 0xad6b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, + 0x5ad6, 0xed6b, 0x294a, 0x94a5, 0x4a52, 0x5ad5, 0xad6b, 0xd6b5, + 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x7bda, 0xbdef, 0xdef7, + 0xef7b, 0x2955, 0x94a5, 0x4a52, 0xa529, 0x5294, 0xd6b5, 0x6b5a, + 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, + 0x294a, 0x94a5, 0x4a52, 0x5ad5, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, + 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0x2955, + 0x94a5, 0x4a52, 0xa529, 0x5294, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, + 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, + 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xed6b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x4842, 0xbdef, 0xdef7, 0xef7b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, + 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, + 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0xd210, 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, 0x0642, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0xef7a, 0xd6b5, 0x6b5a, 0xb5ad, + 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, + 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xbded, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x631d, + 0xde8c, 0xef7b, 0xf694, 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, + 0x1884, 0x4842, 0x8421, 0x4290, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x4a63, 0xb531, 0xdad6, 0xef7b, 0xf7bd, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x6312, 0xbd8c, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x7bd2, 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, + 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, + 0x739c, 0x39ce, 0x9ce7, 0xce73, 0xe739, 0x739c, 0x39ce, 0x9ce7, + 0xce73, 0xe739, 0x739c, 0x39ce, 0x9ce7, 0xce73, 0xe739, 0x739c, + 0x39ce, 0x9ce7, 0xce73, 0xe739, 0x739c, 0x39ce, 0x9ce7, 0xce73, + 0xe739, 0x739c, 0x39ce, 0x9ce7, 0xce73, 0xe739, 0x739c, 0x39ce, + 0x9ce7, 0xce73, 0xe739, 0x739c, 0x39ce, 0x9ce7, 0xce73, 0xe739, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0xef48, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0xde90, 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0xdef4, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x8421, 0x4210, 0xbde8, 0xdef7, 0xef7b, 0xf7bd, 0x4210, 0xbd08, + 0xdef7, 0x2149, 0x1084, 0x0842, 0x4421, 0x4212, 0x2108, 0x1084, + 0x0842, 0x84e9, 0x4210, 0xe93a, 0x7484, 0x3a42, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0xf484, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 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, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x7348, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x13bd, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0xbd21, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0x1084, 0x0842, 0x8421, 0x3210, 0xef6b, + 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0xc631, 0x6318, 0x2e6c, + 0xdef6, 0xef7b, 0x94a5, 0x7bd2, 0xbdef, 0xdef7, 0xef7b, 0xb191, + 0x9ab5, 0xae6b, 0xe6b9, 0x6b9a, 0xb9ae, 0x62e6, 0x2e6c, 0x18c6, + 0x5ad7, 0xc631, 0x631e, 0xac8c, 0xe6b9, 0x8b9a, 0x4a31, 0xa526, + 0x71ec, 0xd8c6, 0xef7b, 0x1084, 0x3a42, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0xd77a, + 0xc63d, 0x6338, 0xcd8c, 0x1945, 0x8c59, 0x2108, 0x1084, 0x0842, + 0x28c5, 0x8ca5, 0x0011, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x1680, 0x5d1d, 0x8434, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x2684, 0x6c9d, 0x362e, 0x2317, + 0x8421, 0x4210, 0x2108, 0x1083, 0x0842, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x18c8, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0xe908, 0x13bd, 0x0842, 0xbd21, 0x4213, + 0x2108, 0x13bd, 0x0842, 0xbd21, 0x4213, 0xef7a, 0x4a73, 0xe75a, + 0x55ec, 0x294a, 0xed6b, 0xf7bd, 0x7bde, 0x5def, 0x5d6b, 0xef6b, + 0x1084, 0x0842, 0x8421, 0xd210, 0x2109, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x84e9, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4e90, 0x2748, 0x1084, 0x0842, 0x8421, 0x4210, + 0xef48, 0x1084, 0x0842, 0x8421, 0x4210, 0xef48, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0xde90, 0xef7b, + 0xd631, 0x7bde, 0x4a57, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, + 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, + 0x7bd5, 0xb5af, 0x5ad6, 0xad6b, 0xa529, 0x5294, 0x294a, 0x94a5, + 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, + 0x294a, 0x94a5, 0x4a52, 0xa529, 0x9494, 0xaa52, 0x5ad6, 0xad6b, + 0xd6b5, 0x6b5a, 0xb5ad, 0xdeaa, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, + 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, + 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0xe908, 0x294a, 0x7bd5, 0xbdef, 0xdef7, 0xef7b, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1124, 0x0842, 0x8421, 0xdea4, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x8f48, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x7bd2, 0x84ef, 0x4210, + 0x2108, 0xa531, 0x5294, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x2100, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 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, 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, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x4842, 0xa4ef, 0x4213, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x4842, 0xa427, 0x4ef7, 0x277a, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, + 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x8842, 0x4a52, + 0xdef5, 0x8f7b, 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, + 0x94a4, 0x4bd2, 0xbde9, 0x5ef7, 0x294a, 0x1084, 0x09d2, 0x9d21, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x7bd2, 0xa5ef, 0xde94, 0x2f7b, 0x294a, 0x94a5, 0xbd52, 0xdef7, + 0xef7b, 0xc631, 0x6318, 0xb18c, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0xe908, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, + 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, + 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, + 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xc631, 0x7bd8, 0xbdef, 0xdef7, 0xef7b, + 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, 0xbdef, 0xdef7, 0xef7b, + 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, + 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xbded, 0x5ad7, 0xad6b, 0xd6b5, + 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, + 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x8d5a, + 0xa529, 0x5ad4, 0x318d, 0x18c6, 0xb5ad, 0x5ad6, 0x52eb, 0x294a, + 0x94a5, 0x4b5a, 0xa529, 0x5294, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, + 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5296, 0xad4a, 0xd6b5, + 0x6b5a, 0xb5ad, 0x5ad6, 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, + 0xad6b, 0xd6b5, 0x6b5a, 0xb5ad, 0x5ad6, 0xef6b, 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, 0x96b5, 0x6a52, 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, + 0xad6b, 0xd6b5, 0x6b5a, 0xbded, 0xdef7, 0xef7b, 0x294a, 0x94a5, + 0x4a52, 0xa529, 0x5294, 0xf54a, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0840, 0x8421, 0x7a10, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x0008, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x8400, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0x0084, 0x003a, 0x83bd, 0x01de, 0x1de8, 0x0000, 0x003a, 0x0000, + 0x4000, 0x2108, 0xd0f4, 0x0843, 0x8421, 0x43d0, 0x2108, 0x1084, + 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4000, 0x0007, 0xde80, 0x0001, 0x0000, 0x3a00, 0x0000, + 0x0000, 0x087a, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x0008, 0x0074, 0xe800, 0x0000, 0x3a00, 0xbde8, 0x0003, + 0x0000, 0x87a0, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x0084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x4000, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0840, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x0008, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x8400, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x0084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x4000, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, + 0x1084, 0x0842, 0x8421, 0x4210, 0x00ef, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x8640, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1904, 0x0842, 0x0021, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1900, 0x0842, + 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x6410, 0x2108, + 0x0084, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x6400, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x9042, 0x8421, 0x0210, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x9000, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, + 0x8421, 0x4210, 0x4108, 0x1086, 0x0842, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x4000, 0x1086, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x0421, 0x4219, 0x2108, 0xd080, + 0x423b, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, + 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, 0x4210, + 0x2108, 0x1084, 0x0842, 0xbde9, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, + 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x1084, 0x0842, 0x8421, 0x4210, 0x2108, 0x1084, 0x0842, 0x8421, + 0x4210, 0xef48, 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, + 0xf75d, 0x7bde, 0xbdef, 0xdef7, 0xef7b, 0xf7bd, 0x7bde, 0xbdef, + 0xdef7, 0xef7b, 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, + 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, 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, + 0x294a, 0x94a5, 0x4a52, 0xa529, 0x5294, 0x294a, 0x94a5, 0x4a52, + 0xa529, 0x5294, 0x294a, 0xf7bd, 0x7bde, 0xbdef, 0xdef7, 0xef7b, + 0x739c, 0x39ce, 0x9ce7, 0xce73, 0xe739, 0x739c, 0x39ce, 0x9ce7, + 0xce73, 0xe739, 0x739c, 0x39ce, 0x9ce7, 0xce73, 0xe739, 0x739c, + 0x39ce, 0x9ce7, 0xce73, 0xe739, 0x739c, 0x39ce, 0x9ce7, 0xce73, + 0xe739, 0x739c, 0x39ce, 0x9ce7, 0xce73, 0xe739, 0x739c, 0x39ce, + 0x9ce7, 0xce73, 0xe739, 0x739c, 0x39ce, 0x9ce7, 0xce73, 0xef79, + 0x0000 + } +}; diff --git a/lib/unictype/categ_or.c b/lib/unictype/categ_or.c new file mode 100644 index 000000000..9864210c8 --- /dev/null +++ b/lib/unictype/categ_or.c @@ -0,0 +1,42 @@ +/* Categories of Unicode characters. + Copyright (C) 2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2007. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +uc_general_category_t +uc_general_category_or (uc_general_category_t category1, + uc_general_category_t category2) +{ + uint32_t bitmask; + uc_general_category_t result; + + bitmask = category1.bitmask | category2.bitmask; + + if (bitmask == category1.bitmask) + return category1; + + if (bitmask == category2.bitmask) + return category2; + + result.bitmask = bitmask; + result.generic = 1; + result.lookup.lookup_fn = &uc_is_general_category_withtable; + return result; +} diff --git a/lib/unictype/categ_test.c b/lib/unictype/categ_test.c new file mode 100644 index 000000000..e46f0f65b --- /dev/null +++ b/lib/unictype/categ_test.c @@ -0,0 +1,32 @@ +/* Categories of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +bool +uc_is_general_category (ucs4_t uc, uc_general_category_t category) +{ + if (category.generic) + return category.lookup.lookup_fn (uc, category.bitmask); + else + return bitmap_lookup (category.lookup.table, uc); +} diff --git a/lib/unictype/combining.c b/lib/unictype/combining.c new file mode 100644 index 000000000..d2e33e63c --- /dev/null +++ b/lib/unictype/combining.c @@ -0,0 +1,47 @@ +/* Combining classes of Unicode characters. + Copyright (C) 2002, 2006 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_combclass table. */ +#include "combining.h" + +int +uc_combining_class (ucs4_t uc) +{ + unsigned int index1 = uc >> combclass_header_0; + if (index1 < combclass_header_1) + { + int lookup1 = u_combclass.level1[index1]; + if (lookup1 >= 0) + { + unsigned int index2 = (uc >> combclass_header_2) & combclass_header_3; + int lookup2 = u_combclass.level2[lookup1 + index2]; + if (lookup2 >= 0) + { + unsigned int index3 = (uc & combclass_header_4); + unsigned int lookup3 = u_combclass.level3[lookup2 + index3]; + + return lookup3; + } + } + } + return 0; +} diff --git a/lib/unictype/combining.h b/lib/unictype/combining.h new file mode 100644 index 000000000..d2dfea031 --- /dev/null +++ b/lib/unictype/combining.h @@ -0,0 +1,711 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Combining class of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define combclass_header_0 16 +#define combclass_header_1 2 +#define combclass_header_2 7 +#define combclass_header_3 511 +#define combclass_header_4 127 +static const +struct + { + int level1[2]; + short level2[2 << 9]; + unsigned char level3[35 << 7]; + } +u_combclass = +{ + { 0, 512 }, + { + -1, -1, -1, -1, -1, -1, 0, -1, + -1, 128, -1, 256, 384, 512, 640, 768, + -1, -1, 896, 1024, 1024, 1024, 1024, 1152, + 1280, 1024, 1152, 1408, 1536, 1664, 1792, 1920, + 2048, -1, -1, -1, -1, -1, 2176, -1, + -1, -1, -1, -1, -1, -1, 2304, 2432, + -1, 2560, 2688, -1, 2816, -1, 2944, -1, + -1, -1, -1, 3072, -1, -1, -1, -1, + -1, 3200, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 3328, 3456, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 3584, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 3712, -1, + -1, -1, -1, -1, 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, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -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, 4224, 4352, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1 + }, + { + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 232, 220, 220, + 220, 220, 232, 216, 220, 220, 220, 220, + 220, 202, 202, 220, 220, 220, 220, 202, + 202, 220, 220, 220, 220, 220, 220, 220, + 220, 220, 220, 220, 1, 1, 1, 1, + 1, 220, 220, 220, 220, 230, 230, 230, + 230, 230, 230, 230, 230, 240, 230, 220, + 220, 220, 230, 230, 230, 220, 220, 0, + 230, 230, 230, 220, 220, 220, 220, 230, + 232, 220, 220, 230, 233, 234, 234, 233, + 234, 234, 233, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 230, 230, 230, 230, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 230, 230, 230, 230, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 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, 230, 230, 230, 230, 220, 230, + 230, 230, 222, 220, 230, 230, 230, 230, + 230, 230, 220, 220, 220, 220, 220, 220, + 230, 230, 220, 230, 230, 222, 228, 230, + 10, 11, 12, 13, 14, 15, 16, 17, + 18, 19, 19, 20, 21, 22, 0, 23, + 0, 24, 25, 0, 230, 220, 0, 18, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 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, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 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, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 35, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 230, 230, + 230, 230, 230, 230, 230, 0, 0, 230, + 230, 230, 230, 220, 230, 0, 0, 230, + 230, 0, 220, 230, 230, 220, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 36, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 230, 220, 230, 230, 220, 230, 230, 220, + 220, 220, 230, 220, 220, 230, 220, 230, + 230, 230, 220, 230, 220, 230, 220, 230, + 220, 230, 230, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 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, 220, 230, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 7, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 9, 0, 0, + 0, 230, 220, 230, 230, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 7, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 9, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 9, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 9, 0, 0, + 0, 0, 0, 0, 0, 84, 91, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 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, + 103, 103, 9, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 107, 107, 107, 107, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 118, 118, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 122, 122, 122, 122, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 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, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 220, 0, 220, + 0, 216, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 129, 130, 0, 132, 0, 0, 0, + 0, 0, 130, 130, 130, 130, 0, 0, + 130, 0, 230, 230, 9, 0, 230, 230, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 220, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 7, + 0, 9, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 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, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 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, 9, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 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, 230, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 228, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 222, 230, 220, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 230, + 220, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 7, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 9, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 230, 220, 230, 230, 230, + 230, 230, 230, 230, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 230, 230, 220, 230, 230, 230, 230, 230, + 230, 230, 220, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 230, 220, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 230, 230, 1, 1, 230, 230, 230, 230, + 1, 1, 1, 230, 230, 0, 0, 0, + 0, 230, 0, 0, 0, 1, 1, 230, + 220, 230, 1, 1, 220, 220, 220, 220, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 218, 228, 232, 222, 224, 224, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 8, 8, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 9, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 26, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 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, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 220, 0, 230, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 230, 1, 220, 0, 0, 0, 0, 9, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 216, 216, 1, + 1, 1, 0, 0, 0, 226, 216, 216, + 216, 216, 216, 0, 0, 0, 0, 0, + 0, 0, 0, 220, 220, 220, 220, 220, + 220, 220, 220, 0, 0, 230, 230, 230, + 230, 230, 220, 220, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 230, 230, 230, 230, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 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, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0 + } +}; diff --git a/lib/unictype/ctype_alnum.c b/lib/unictype/ctype_alnum.c new file mode 100644 index 000000000..464fbb0de --- /dev/null +++ b/lib/unictype/ctype_alnum.c @@ -0,0 +1,32 @@ +/* ISO C like properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_is_alnum table. */ +#include "ctype_alnum.h" + +bool +uc_is_alnum (ucs4_t uc) +{ + return bitmap_lookup (&u_is_alnum, uc); +} diff --git a/lib/unictype/ctype_alnum.h b/lib/unictype/ctype_alnum.h new file mode 100644 index 000000000..4786f734e --- /dev/null +++ b/lib/unictype/ctype_alnum.h @@ -0,0 +1,580 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* ISO C like properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[3]; + short level2[3 << 7]; + /*unsigned*/ int level3[42 << 4]; + } +u_is_alnum = +{ + { 3 }, + { + 4 * sizeof (int) / sizeof (short) + 0, + 4 * sizeof (int) / sizeof (short) + 128, + 4 * sizeof (int) / sizeof (short) + 256 + }, + { + 4 + 384 * sizeof (short) / sizeof (int) + 0, + 4 + 384 * sizeof (short) / sizeof (int) + 16, + 4 + 384 * sizeof (short) / sizeof (int) + 32, + 4 + 384 * sizeof (short) / sizeof (int) + 48, + 4 + 384 * sizeof (short) / sizeof (int) + 64, + 4 + 384 * sizeof (short) / sizeof (int) + 80, + 4 + 384 * sizeof (short) / sizeof (int) + 96, + 4 + 384 * sizeof (short) / sizeof (int) + 112, + 4 + 384 * sizeof (short) / sizeof (int) + 128, + 4 + 384 * sizeof (short) / sizeof (int) + 144, + 4 + 384 * sizeof (short) / sizeof (int) + 160, + 4 + 384 * sizeof (short) / sizeof (int) + 176, + 4 + 384 * sizeof (short) / sizeof (int) + 192, + 4 + 384 * sizeof (short) / sizeof (int) + 208, + 4 + 384 * sizeof (short) / sizeof (int) + 224, + 4 + 384 * sizeof (short) / sizeof (int) + 240, + 4 + 384 * sizeof (short) / sizeof (int) + 256, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + -1, + 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) + 320, + 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) + 320, + 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) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 336, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 352, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 368, + 4 + 384 * sizeof (short) / sizeof (int) + 384, + 4 + 384 * sizeof (short) / sizeof (int) + 400, + -1, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 416, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 432, + 4 + 384 * sizeof (short) / sizeof (int) + 448, + 4 + 384 * sizeof (short) / sizeof (int) + 464, + 4 + 384 * sizeof (short) / sizeof (int) + 480, + 4 + 384 * sizeof (short) / sizeof (int) + 496, + 4 + 384 * sizeof (short) / sizeof (int) + 512, + 4 + 384 * sizeof (short) / sizeof (int) + 528, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 544, + 4 + 384 * sizeof (short) / sizeof (int) + 560, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 576, + 4 + 384 * sizeof (short) / sizeof (int) + 592, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 608, + 4 + 384 * sizeof (short) / sizeof (int) + 624, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 640, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 656, + -1, + -1 + }, + { + 0x00000000, 0x03FF0000, 0x07FFFFFE, 0x07FFFFFE, + 0x00000000, 0x04200400, 0xFF7FFFFF, 0xFF7FFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x0003FFC3, 0x0000401F, + 0x00000000, 0x00000000, 0x00000020, 0x3C000000, + 0xFFFFD740, 0xFFFFFFFB, 0xFFFF7FFF, 0xFFBFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x000FFFFF, 0xFFFE0000, 0x027FFFFF, 0xFFFFFFFE, + 0x000000FF, 0x00000000, 0xFFFF0000, 0x000707FF, + 0x00000000, 0x07FFFFFE, 0x000007FF, 0xFFFEC3FF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x002FFFFF, 0x9FFFC060, + 0xFFFD0000, 0x0000FFFF, 0xFFFFE000, 0x00003FFF, + 0xFFFFFFFF, 0x0002003F, 0xFFFFFFFF, 0x043007FF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xF800FFC3, + 0xFFF99FE0, 0x23C5FDFF, 0xB0004000, 0x0003FFC3, + 0xFFF987E0, 0x036DFDFF, 0x5E000000, 0x001CFFC0, + 0xFFFBBFE0, 0x23EDFDFF, 0x00010000, 0x0000FFC3, + 0xFFF99FE0, 0x23EDFDFF, 0xB0000000, 0x0002FFC3, + 0xD63DC7E8, 0x03FFC718, 0x00000000, 0x0000FFC0, + 0xFFFDDFE0, 0x03EFFDFF, 0x00000000, 0x0000FFC3, + 0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x0000FFC3, + 0xFFFDDFE0, 0x03FFFDFF, 0x00000000, 0x0000FFC3, + 0xFC7FFFE0, 0x2FFBFFFF, 0x0000007F, 0x00000000, + 0xFFFFFFFE, 0x07FF7FFF, 0x03FF7FBF, 0x00000000, + 0xFEF02596, 0x200DECAE, 0x33FF005F, 0x00000000, + 0x00000001, 0x000003FF, 0xFFFFFEFF, 0x000007FF, + 0x00000F00, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0x000006FB, 0x003F03FF, 0x00000000, + 0x00000000, 0xFFFFFFFF, 0xFFFF003F, 0x17FFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x83FFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF07, 0xFFFFFFFF, 0x03FFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x3D7F3DFF, 0xFFFFFFFF, + 0xFFFF3DFF, 0x7F3DFFFF, 0xFF7FFF3D, 0xFFFFFFFF, + 0xFF3DFFFF, 0xFFFFFFFF, 0x07FFFFFF, 0x00000000, + 0x0000FFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x001FFFFF, + 0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x007F9FFF, + 0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x0001C7FF, + 0x0003DFFF, 0x0003FFFF, 0x0003FFFF, 0x0001DFFF, + 0xFFFFFFFF, 0x000FFFFF, 0x10800000, 0x000003FF, + 0x03FF0000, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF, + 0xFFFFFFFF, 0x000001FF, 0x00000000, 0x00000000, + 0x1FFFFFFF, 0x00000000, 0xFFFFFFC0, 0x001F3FFF, + 0xFFFFFFFF, 0x000003FF, 0x03FF00FE, 0x00000000, + 0x007FFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFE0, 0x000FFFFF, 0x03FF0FE0, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x0FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, + 0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF, + 0xFFFFFFFF, 0x5FDFFFFF, 0x0FCF1FDC, 0x1FDC1FFF, + 0x00000000, 0x00000000, 0x00000000, 0x80020000, + 0x001F0000, 0x00000000, 0x00000000, 0x00000000, + 0x3E2FFC84, 0xF3FFBF50, 0x000043E0, 0xFFFFFFFF, + 0x0000001F, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xF0000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x000003FF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFF7FFF, 0x7FFFFFFF, 0x00F01FFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000001F, + 0xFFFFFFFF, 0xFFFF003F, 0xFFFFFFFF, 0x0000803F, + 0x007FFFFF, 0x7F7F7F7F, 0x7F7F7F7F, 0x00000000, + 0x000000E0, 0x1F3E03FE, 0xFFFFFFFE, 0xFFFFFFFF, + 0xE07FFFFF, 0xFFFFFFFE, 0xFFFFFFFF, 0xF7FFFFFF, + 0xFFFFFFE0, 0xFFFE1FFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00007FFF, 0x00FFFFFF, 0x00000000, 0xFFFF0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x003FFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0FFFFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00001FFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x07800000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFF7BB, 0x00000007, 0xFFFFFFFF, 0x000FFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFF3FFF, 0xFFFFFFFF, 0xFFFF07FF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, 0x00000000, + 0xA0F8007F, 0x5F7FFDFF, 0xFFFFFFDB, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0003FFFF, 0xFFF80000, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x3FFFFFFF, 0xFFFF0000, 0xFFFFFFFF, + 0xFFFCFFFF, 0xFFFFFFFF, 0x000000FF, 0x0FFF0000, + 0x00000000, 0x00000000, 0x00000000, 0xFFDF0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFFFFFF, + 0x03FF0000, 0x07FFFFFE, 0x07FFFFFE, 0xFFFFFFC0, + 0xFFFFFFFF, 0x7FFFFFFF, 0x1CFCFCFC, 0x00000000, + 0xFFFFEFFF, 0xB7FFFF7F, 0x3FFF3FFF, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF, + 0x00000000, 0x00000000, 0xFFFFFFFF, 0x001FFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x7FFFFFFF, 0xFFFF0000, 0x000007FF, 0x00000000, + 0x3FFFFFFF, 0xFFFFFFFF, 0x003EFF0F, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x3FFFFFFF, 0x000003FF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFD3F, 0x91BFFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x003FFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFEEF0001, 0x000FFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000007, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF, + 0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF, + 0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF3F, 0xF7FFFFFD, 0xF7FFFFFF, + 0xFFDFFFFF, 0xFFDFFFFF, 0xFFFF7FFF, 0xFFFF7FFF, + 0xFFFFFDFF, 0xFFFFFDFF, 0xFFFFCFF7, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/ctype_alpha.c b/lib/unictype/ctype_alpha.c new file mode 100644 index 000000000..4ca6e9963 --- /dev/null +++ b/lib/unictype/ctype_alpha.c @@ -0,0 +1,32 @@ +/* ISO C like properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_is_alpha table. */ +#include "ctype_alpha.h" + +bool +uc_is_alpha (ucs4_t uc) +{ + return bitmap_lookup (&u_is_alpha, uc); +} diff --git a/lib/unictype/ctype_alpha.h b/lib/unictype/ctype_alpha.h new file mode 100644 index 000000000..5d58aa043 --- /dev/null +++ b/lib/unictype/ctype_alpha.h @@ -0,0 +1,580 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* ISO C like properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[3]; + short level2[3 << 7]; + /*unsigned*/ int level3[42 << 4]; + } +u_is_alpha = +{ + { 3 }, + { + 4 * sizeof (int) / sizeof (short) + 0, + 4 * sizeof (int) / sizeof (short) + 128, + 4 * sizeof (int) / sizeof (short) + 256 + }, + { + 4 + 384 * sizeof (short) / sizeof (int) + 0, + 4 + 384 * sizeof (short) / sizeof (int) + 16, + 4 + 384 * sizeof (short) / sizeof (int) + 32, + 4 + 384 * sizeof (short) / sizeof (int) + 48, + 4 + 384 * sizeof (short) / sizeof (int) + 64, + 4 + 384 * sizeof (short) / sizeof (int) + 80, + 4 + 384 * sizeof (short) / sizeof (int) + 96, + 4 + 384 * sizeof (short) / sizeof (int) + 112, + 4 + 384 * sizeof (short) / sizeof (int) + 128, + 4 + 384 * sizeof (short) / sizeof (int) + 144, + 4 + 384 * sizeof (short) / sizeof (int) + 160, + 4 + 384 * sizeof (short) / sizeof (int) + 176, + 4 + 384 * sizeof (short) / sizeof (int) + 192, + 4 + 384 * sizeof (short) / sizeof (int) + 208, + 4 + 384 * sizeof (short) / sizeof (int) + 224, + 4 + 384 * sizeof (short) / sizeof (int) + 240, + 4 + 384 * sizeof (short) / sizeof (int) + 256, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + -1, + 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) + 320, + 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) + 320, + 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) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 336, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 352, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 368, + 4 + 384 * sizeof (short) / sizeof (int) + 384, + 4 + 384 * sizeof (short) / sizeof (int) + 400, + -1, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 416, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 432, + 4 + 384 * sizeof (short) / sizeof (int) + 448, + 4 + 384 * sizeof (short) / sizeof (int) + 464, + 4 + 384 * sizeof (short) / sizeof (int) + 480, + 4 + 384 * sizeof (short) / sizeof (int) + 496, + 4 + 384 * sizeof (short) / sizeof (int) + 512, + 4 + 384 * sizeof (short) / sizeof (int) + 528, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 544, + 4 + 384 * sizeof (short) / sizeof (int) + 560, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 576, + 4 + 384 * sizeof (short) / sizeof (int) + 592, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 608, + 4 + 384 * sizeof (short) / sizeof (int) + 624, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 640, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 656, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x07FFFFFE, 0x07FFFFFE, + 0x00000000, 0x04200400, 0xFF7FFFFF, 0xFF7FFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x0003FFC3, 0x0000401F, + 0x00000000, 0x00000000, 0x00000020, 0x3C000000, + 0xFFFFD740, 0xFFFFFFFB, 0xFFFF7FFF, 0xFFBFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x000FFFFF, 0xFFFE0000, 0x027FFFFF, 0xFFFFFFFE, + 0x000000FF, 0x00000000, 0xFFFF0000, 0x000707FF, + 0x00000000, 0x07FFFFFE, 0x000007FF, 0xFFFEC3FF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x002FFFFF, 0x9FFFC060, + 0xFFFD0000, 0x0000FFFF, 0xFFFFE000, 0x00003FFF, + 0xFFFFFFFF, 0x0002003F, 0xFFFFFFFF, 0x043007FF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xF800FFC3, + 0xFFF99FE0, 0x23C5FDFF, 0xB0004000, 0x0003FFC3, + 0xFFF987E0, 0x036DFDFF, 0x5E000000, 0x001CFFC0, + 0xFFFBBFE0, 0x23EDFDFF, 0x00010000, 0x0000FFC3, + 0xFFF99FE0, 0x23EDFDFF, 0xB0000000, 0x0002FFC3, + 0xD63DC7E8, 0x03FFC718, 0x00000000, 0x0000FFC0, + 0xFFFDDFE0, 0x03EFFDFF, 0x00000000, 0x0000FFC3, + 0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x0000FFC3, + 0xFFFDDFE0, 0x03FFFDFF, 0x00000000, 0x0000FFC3, + 0xFC7FFFE0, 0x2FFBFFFF, 0x0000007F, 0x00000000, + 0xFFFFFFFE, 0x07FF7FFF, 0x03FF7FBF, 0x00000000, + 0xFEF02596, 0x200DECAE, 0x33FF005F, 0x00000000, + 0x00000001, 0x000003FF, 0xFFFFFEFF, 0x000007FF, + 0x00000F00, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0x000006FB, 0x003F03FF, 0x00000000, + 0x00000000, 0xFFFFFFFF, 0xFFFF003F, 0x17FFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x83FFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF07, 0xFFFFFFFF, 0x03FFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x3D7F3DFF, 0xFFFFFFFF, + 0xFFFF3DFF, 0x7F3DFFFF, 0xFF7FFF3D, 0xFFFFFFFF, + 0xFF3DFFFF, 0xFFFFFFFF, 0x07FFFFFF, 0x00000000, + 0x0000FFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x001FFFFF, + 0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x007F9FFF, + 0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x0001C7FF, + 0x0003DFFF, 0x0003FFFF, 0x0003FFFF, 0x0001DFFF, + 0xFFFFFFFF, 0x000FFFFF, 0x10800000, 0x000003FF, + 0x03FF0000, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF, + 0xFFFFFFFF, 0x000001FF, 0x00000000, 0x00000000, + 0x1FFFFFFF, 0x00000000, 0xFFFFFFC0, 0x001F3FFF, + 0xFFFFFFFF, 0x000003FF, 0x03FF00FE, 0x00000000, + 0x007FFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFE0, 0x000FFFFF, 0x03FF0FE0, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x0FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, + 0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF, + 0xFFFFFFFF, 0x5FDFFFFF, 0x0FCF1FDC, 0x1FDC1FFF, + 0x00000000, 0x00000000, 0x00000000, 0x80020000, + 0x001F0000, 0x00000000, 0x00000000, 0x00000000, + 0x3E2FFC84, 0xF3FFBF50, 0x000043E0, 0xFFFFFFFF, + 0x0000001F, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xF0000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x000003FF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFF7FFF, 0x7FFFFFFF, 0x00F01FFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000001F, + 0xFFFFFFFF, 0xFFFF003F, 0xFFFFFFFF, 0x0000803F, + 0x007FFFFF, 0x7F7F7F7F, 0x7F7F7F7F, 0x00000000, + 0x000000E0, 0x1F3E03FE, 0xFFFFFFFE, 0xFFFFFFFF, + 0xE07FFFFF, 0xFFFFFFFE, 0xFFFFFFFF, 0xF7FFFFFF, + 0xFFFFFFE0, 0xFFFE1FFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00007FFF, 0x00FFFFFF, 0x00000000, 0xFFFF0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x003FFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0FFFFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00001FFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x07800000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFF7BB, 0x00000007, 0xFFFFFFFF, 0x000FFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFF3FFF, 0xFFFFFFFF, 0xFFFF07FF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, 0x00000000, + 0xA0F8007F, 0x5F7FFDFF, 0xFFFFFFDB, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0003FFFF, 0xFFF80000, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x3FFFFFFF, 0xFFFF0000, 0xFFFFFFFF, + 0xFFFCFFFF, 0xFFFFFFFF, 0x000000FF, 0x0FFF0000, + 0x00000000, 0x00000000, 0x00000000, 0xFFDF0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFFFFFF, + 0x03FF0000, 0x07FFFFFE, 0x07FFFFFE, 0xFFFFFFC0, + 0xFFFFFFFF, 0x7FFFFFFF, 0x1CFCFCFC, 0x00000000, + 0xFFFFEFFF, 0xB7FFFF7F, 0x3FFF3FFF, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF, + 0x00000000, 0x00000000, 0xFFFFFFFF, 0x001FFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x7FFFFFFF, 0xFFFF0000, 0x000007FF, 0x00000000, + 0x3FFFFFFF, 0xFFFFFFFF, 0x003EFF0F, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x3FFFFFFF, 0x000003FF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFD3F, 0x91BFFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x003FFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFEEF0001, 0x000FFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000007, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF, + 0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF, + 0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF3F, 0xF7FFFFFD, 0xF7FFFFFF, + 0xFFDFFFFF, 0xFFDFFFFF, 0xFFFF7FFF, 0xFFFF7FFF, + 0xFFFFFDFF, 0xFFFFFDFF, 0xFFFFCFF7, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/ctype_blank.c b/lib/unictype/ctype_blank.c new file mode 100644 index 000000000..7e5e44f7b --- /dev/null +++ b/lib/unictype/ctype_blank.c @@ -0,0 +1,32 @@ +/* ISO C like properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_is_blank table. */ +#include "ctype_blank.h" + +bool +uc_is_blank (ucs4_t uc) +{ + return bitmap_lookup (&u_is_blank, uc); +} diff --git a/lib/unictype/ctype_blank.h b/lib/unictype/ctype_blank.h new file mode 100644 index 000000000..ab775923c --- /dev/null +++ b/lib/unictype/ctype_blank.h @@ -0,0 +1,172 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* ISO C like properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[5 << 4]; + } +u_is_blank = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000200, 0x00000001, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000001, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00004000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000077F, 0x00000000, 0x80000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000001, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/ctype_cntrl.c b/lib/unictype/ctype_cntrl.c new file mode 100644 index 000000000..8d9b148c4 --- /dev/null +++ b/lib/unictype/ctype_cntrl.c @@ -0,0 +1,32 @@ +/* ISO C like properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_is_cntrl table. */ +#include "ctype_cntrl.h" + +bool +uc_is_cntrl (ucs4_t uc) +{ + return bitmap_lookup (&u_is_cntrl, uc); +} diff --git a/lib/unictype/ctype_cntrl.h b/lib/unictype/ctype_cntrl.h new file mode 100644 index 000000000..de53f22f0 --- /dev/null +++ b/lib/unictype/ctype_cntrl.h @@ -0,0 +1,160 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* ISO C like properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[2 << 4]; + } +u_is_cntrl = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0xFFFFFFFF, 0x00000000, 0x00000000, 0x80000000, + 0xFFFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000300, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/ctype_digit.c b/lib/unictype/ctype_digit.c new file mode 100644 index 000000000..b18d92046 --- /dev/null +++ b/lib/unictype/ctype_digit.c @@ -0,0 +1,32 @@ +/* ISO C like properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_is_digit table. */ +#include "ctype_digit.h" + +bool +uc_is_digit (ucs4_t uc) +{ + return bitmap_lookup (&u_is_digit, uc); +} diff --git a/lib/unictype/ctype_digit.h b/lib/unictype/ctype_digit.h new file mode 100644 index 000000000..363398d70 --- /dev/null +++ b/lib/unictype/ctype_digit.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* ISO C like properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[1 << 4]; + } +u_is_digit = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x03FF0000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/ctype_graph.c b/lib/unictype/ctype_graph.c new file mode 100644 index 000000000..3c0ae1188 --- /dev/null +++ b/lib/unictype/ctype_graph.c @@ -0,0 +1,32 @@ +/* ISO C like properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_is_graph table. */ +#include "ctype_graph.h" + +bool +uc_is_graph (ucs4_t uc) +{ + return bitmap_lookup (&u_is_graph, uc); +} diff --git a/lib/unictype/ctype_graph.h b/lib/unictype/ctype_graph.h new file mode 100644 index 000000000..60954d71f --- /dev/null +++ b/lib/unictype/ctype_graph.h @@ -0,0 +1,882 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* ISO C like properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[17]; + short level2[5 << 7]; + /*unsigned*/ int level3[50 << 4]; + } +u_is_graph = +{ + { 17 }, + { + 18 * sizeof (int) / sizeof (short) + 0, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 256, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 512, + 18 * sizeof (int) / sizeof (short) + 512 + }, + { + 18 + 640 * sizeof (short) / sizeof (int) + 0, + 18 + 640 * sizeof (short) / sizeof (int) + 16, + 18 + 640 * sizeof (short) / sizeof (int) + 32, + 18 + 640 * sizeof (short) / sizeof (int) + 48, + 18 + 640 * sizeof (short) / sizeof (int) + 64, + 18 + 640 * sizeof (short) / sizeof (int) + 80, + 18 + 640 * sizeof (short) / sizeof (int) + 96, + 18 + 640 * sizeof (short) / sizeof (int) + 112, + 18 + 640 * sizeof (short) / sizeof (int) + 128, + 18 + 640 * sizeof (short) / sizeof (int) + 144, + 18 + 640 * sizeof (short) / sizeof (int) + 160, + 18 + 640 * sizeof (short) / sizeof (int) + 176, + 18 + 640 * sizeof (short) / sizeof (int) + 192, + 18 + 640 * sizeof (short) / sizeof (int) + 208, + 18 + 640 * sizeof (short) / sizeof (int) + 224, + 18 + 640 * sizeof (short) / sizeof (int) + 240, + 18 + 640 * sizeof (short) / sizeof (int) + 256, + 18 + 640 * sizeof (short) / sizeof (int) + 272, + 18 + 640 * sizeof (short) / sizeof (int) + 288, + 18 + 640 * sizeof (short) / sizeof (int) + 304, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 336, + 18 + 640 * sizeof (short) / sizeof (int) + 352, + 18 + 640 * sizeof (short) / sizeof (int) + 368, + 18 + 640 * sizeof (short) / sizeof (int) + 384, + 18 + 640 * sizeof (short) / sizeof (int) + 400, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 416, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 432, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 448, + 18 + 640 * sizeof (short) / sizeof (int) + 464, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 496, + -1, + -1, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 512, + 18 + 640 * sizeof (short) / sizeof (int) + 528, + 18 + 640 * sizeof (short) / sizeof (int) + 544, + 18 + 640 * sizeof (short) / sizeof (int) + 560, + 18 + 640 * sizeof (short) / sizeof (int) + 576, + 18 + 640 * sizeof (short) / sizeof (int) + 592, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 608, + 18 + 640 * sizeof (short) / sizeof (int) + 624, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 640, + 18 + 640 * sizeof (short) / sizeof (int) + 656, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 672, + 18 + 640 * sizeof (short) / sizeof (int) + 688, + 18 + 640 * sizeof (short) / sizeof (int) + 704, + 18 + 640 * sizeof (short) / sizeof (int) + 720, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 736, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 752, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 768, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 784 + }, + { + 0x00000000, 0xFFFFFFFE, 0xFFFFFFFF, 0x7FFFFFFF, + 0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x7C30FFFF, + 0xFFFFD7F0, 0xFFFFFFFB, 0xFFFF7FFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFF7F, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x000FFFFF, 0xFFFE0000, 0xFE7FFFFF, 0xFFFFFFFE, + 0xFFFE06FF, 0xFFFFFFFF, 0xFFFF00FF, 0x001F07FF, + 0xC83FF80F, 0x07FFFFFE, 0x7FFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFBFFF, 0xFFFFFFFF, 0xFFFFE7FF, 0x00003FFF, + 0xFFFFFFFF, 0x0003FFFF, 0xFFFFFFFF, 0x07FFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFE, 0xF3FFFFFF, 0xFF1F3FFF, 0xF801FFFF, + 0xFFF99FEE, 0xF3C5FDFF, 0xB080799F, 0x07FFFFCF, + 0xFFF987EE, 0xD36DFDFF, 0x5E003987, 0x001FFFC0, + 0xFFFBBFEE, 0xF3EDFDFF, 0x00013BBF, 0x0002FFCF, + 0xFFF99FEE, 0xF3EDFDFF, 0xB0C0398F, 0x0003FFC3, + 0xD63DC7EC, 0xC3FFC718, 0x00803DC7, 0x07FFFFC0, + 0xFFFDDFEE, 0xC3EFFDFF, 0x00603DDF, 0x0000FFC3, + 0xFFFDDFEC, 0xF3EFFDFF, 0x40603DDF, 0x0006FFCF, + 0xFFFDDFEC, 0xC3FFFDFF, 0x00803DCF, 0x0000FFC3, + 0xFC7FFFEC, 0x2FFBFFFF, 0xFF5F847F, 0x001C0000, + 0xFFFFFFFE, 0x87FFFFFF, 0x0FFFFFFF, 0x00000000, + 0xFEF02596, 0x3BFFECAE, 0x33FF3F5F, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFEFF, 0xFFFE07FF, + 0xFEFF0FFF, 0xDFFFFFFF, 0x00039FFF, 0x00000000, + 0xFFFFFFFF, 0x03C7F6FB, 0x03FFFFFF, 0x00000000, + 0x00000000, 0xFFFFFFFF, 0xFFFF003F, 0x1FFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x83FFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF07, 0xFFFFFFFF, 0x03FFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x3D7F3DFF, 0xFFFFFFFF, + 0xFFFF3DFF, 0x7F3DFFFF, 0xFF7FFF3D, 0xFFFFFFFF, + 0xFF3DFFFF, 0xFFFFFFFF, 0x87FFFFFF, 0x1FFFFFFF, + 0x03FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x001FFFFF, + 0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, + 0x1FFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x0001FFFF, + 0x001FDFFF, 0x007FFFFF, 0x000FFFFF, 0x000DDFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x3FFFFFFF, 0x03FF03FF, + 0x03FF3FFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF, + 0xFFFFFFFF, 0x000003FF, 0x00000000, 0x00000000, + 0x1FFFFFFF, 0x0FFF0FFF, 0xFFFFFFF1, 0x001F3FFF, + 0xFFFFFFFF, 0xFFFF03FF, 0xC3FF03FF, 0xFFFFFFFF, + 0xCFFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF0FFF, 0x1FFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x000007FF, 0xC0000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x0FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, + 0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF, + 0xFFFFFFFF, 0xFFDFFFFF, 0xEFCFFFDF, 0x7FDCFFFF, + 0xFFFFF880, 0xFFFFFCFF, 0x7FFFFFFF, 0xFFF3FC0F, + 0x001F7FFF, 0x003FFFFF, 0xFFFF0000, 0x0000FFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFF87FFF, 0xFFFFFFFF, + 0xFFFF001F, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000000FF, + 0xFFFFFFFF, 0x0000007F, 0x000007FF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x1FFFFFFF, 0x0007FFFF, 0x00000000, 0x00000000, + 0xFFFFF3DE, 0xFFFFFEFF, 0x7F47AFFF, 0xFFFFFFFE, + 0xFF1FFFFF, 0x7FFEFFFF, 0xFFFF07FF, 0xFFFF0FFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x07FFFFFF, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFF7FFF, 0x7FFFFFFF, 0x00F01FFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFE0007FF, + 0xFFFFFFFF, 0xFFFF003F, 0xFFFFFFFF, 0x0000803F, + 0x007FFFFF, 0x7F7F7F7F, 0x7F7F7F7F, 0x00000000, + 0x30FFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0xFBFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, 0x0FFF0000, + 0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFE, 0xFFFFFFFF, + 0xFE7FFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFE0, 0xFFFE1FFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFF7FFF, 0x00FFFFFF, 0x0000FFFF, 0xFFFF0000, + 0x7FFFFFFF, 0xFFFFFFFF, 0xFFFF000F, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x003FFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0FFFFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFF1FFF, 0xFFFFFFFF, 0x0000007F, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x07FFFFFF, 0x00000003, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0x00000FFF, 0xFFFFFFFF, 0x00FFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0000000F, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFF3FFF, 0xFFFFFFFF, 0xFFFF07FF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, 0x00000000, + 0xE0F8007F, 0x5F7FFFFF, 0xFFFFFFDB, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0003FFFF, 0xFFF80000, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF0000, 0xFFFFFFFF, + 0xFFFCFFFF, 0xFFFFFFFF, 0x000000FF, 0x3FFF0000, + 0x03FFFFFF, 0xFFFF000F, 0xFFF7FFFF, 0xFFDF0F7F, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x9FFFFFFF, + 0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x7FFFFFFF, 0x1CFCFCFC, 0x3E007F7F, + 0xFFFFEFFF, 0xB7FFFF7F, 0x3FFF3FFF, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF, + 0xFFFFFF87, 0xFF8FFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x000007FF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x7FFFFFFF, 0xFFFF000F, 0x000007FF, 0x00000000, + 0xBFFFFFFF, 0xFFFFFFFF, 0x003FFF0F, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x3FFFFFFF, 0x000003FF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFD3F, 0x91BFFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x83FFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFEEFF06F, 0x870FFFFF, 0x01FF00FF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000F0007, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, + 0xFFFFFFFF, 0xFFFFFC7F, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x3FFFFFFF, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x0003FFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF, + 0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF, + 0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF3F, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFCFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000002, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x3FFFFFFF + } +}; diff --git a/lib/unictype/ctype_lower.c b/lib/unictype/ctype_lower.c new file mode 100644 index 000000000..1bc843444 --- /dev/null +++ b/lib/unictype/ctype_lower.c @@ -0,0 +1,32 @@ +/* ISO C like properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_is_lower table. */ +#include "ctype_lower.h" + +bool +uc_is_lower (ucs4_t uc) +{ + return bitmap_lookup (&u_is_lower, uc); +} diff --git a/lib/unictype/ctype_lower.h b/lib/unictype/ctype_lower.h new file mode 100644 index 000000000..0bf39f0c1 --- /dev/null +++ b/lib/unictype/ctype_lower.h @@ -0,0 +1,323 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* ISO C like properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[10 << 4]; + } +u_is_lower = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 144, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x07FFFFFE, + 0x00000000, 0x00200000, 0x80000000, 0xFF7FFFFF, + 0xAAAAAAAA, 0x54AAAAAA, 0xAAAAA955, 0xD4AAAAAA, + 0x46241129, 0xA251212A, 0xB5555B60, 0xAA2CAAAA, + 0xAAAAAAAA, 0x100AAAA8, 0x0AD8AA84, 0x20248B09, + 0x00041F09, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000020, 0x38000000, + 0x00000000, 0xFFFEF000, 0xAA637FFF, 0x0927AAAA, + 0x00000000, 0xFFFF0000, 0xFFFFFFFF, 0xAAAAAAAA, + 0xAAAAA802, 0xAAAAAAAA, 0xAAAAD554, 0xAAAAAAAA, + 0x000AAAAA, 0x00000000, 0x00000000, 0xFFFFFFFE, + 0x0000007F, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x20000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xAAAAAAAA, 0xAAAAAAAA, 0xAAAAAAAA, 0xAAAAAAAA, + 0x082AAAAA, 0xAAAAAAAA, 0xAAAAAAAA, 0x02AAAAAA, + 0x003F00FF, 0x00FF00FF, 0x00AA003F, 0x3FFF00FF, + 0x00FF00FF, 0x400B00FF, 0x00030008, 0x00080023, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00004000, 0xFFFF0000, + 0x00000010, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFF0000, 0x000003FF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFFF0000, 0x7FFFFFFF, 0x00401562, + 0xAAAAAAAA, 0xAAAAAAAA, 0xAAAAAAAA, 0x0000000A, + 0xFFFFFFFF, 0x0000003F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x07FFFFFE, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFFFFF00, 0x0000FFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/ctype_print.c b/lib/unictype/ctype_print.c new file mode 100644 index 000000000..142380158 --- /dev/null +++ b/lib/unictype/ctype_print.c @@ -0,0 +1,32 @@ +/* ISO C like properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_is_print table. */ +#include "ctype_print.h" + +bool +uc_is_print (ucs4_t uc) +{ + return bitmap_lookup (&u_is_print, uc); +} diff --git a/lib/unictype/ctype_print.h b/lib/unictype/ctype_print.h new file mode 100644 index 000000000..4ae85a278 --- /dev/null +++ b/lib/unictype/ctype_print.h @@ -0,0 +1,882 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* ISO C like properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[17]; + short level2[5 << 7]; + /*unsigned*/ int level3[50 << 4]; + } +u_is_print = +{ + { 17 }, + { + 18 * sizeof (int) / sizeof (short) + 0, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 256, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 512, + 18 * sizeof (int) / sizeof (short) + 512 + }, + { + 18 + 640 * sizeof (short) / sizeof (int) + 0, + 18 + 640 * sizeof (short) / sizeof (int) + 16, + 18 + 640 * sizeof (short) / sizeof (int) + 32, + 18 + 640 * sizeof (short) / sizeof (int) + 48, + 18 + 640 * sizeof (short) / sizeof (int) + 64, + 18 + 640 * sizeof (short) / sizeof (int) + 80, + 18 + 640 * sizeof (short) / sizeof (int) + 96, + 18 + 640 * sizeof (short) / sizeof (int) + 112, + 18 + 640 * sizeof (short) / sizeof (int) + 128, + 18 + 640 * sizeof (short) / sizeof (int) + 144, + 18 + 640 * sizeof (short) / sizeof (int) + 160, + 18 + 640 * sizeof (short) / sizeof (int) + 176, + 18 + 640 * sizeof (short) / sizeof (int) + 192, + 18 + 640 * sizeof (short) / sizeof (int) + 208, + 18 + 640 * sizeof (short) / sizeof (int) + 224, + 18 + 640 * sizeof (short) / sizeof (int) + 240, + 18 + 640 * sizeof (short) / sizeof (int) + 256, + 18 + 640 * sizeof (short) / sizeof (int) + 272, + 18 + 640 * sizeof (short) / sizeof (int) + 288, + 18 + 640 * sizeof (short) / sizeof (int) + 304, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 336, + 18 + 640 * sizeof (short) / sizeof (int) + 352, + 18 + 640 * sizeof (short) / sizeof (int) + 368, + 18 + 640 * sizeof (short) / sizeof (int) + 384, + 18 + 640 * sizeof (short) / sizeof (int) + 400, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 416, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 432, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 448, + 18 + 640 * sizeof (short) / sizeof (int) + 464, + 18 + 640 * sizeof (short) / sizeof (int) + 480, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 496, + -1, + -1, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 512, + 18 + 640 * sizeof (short) / sizeof (int) + 528, + 18 + 640 * sizeof (short) / sizeof (int) + 544, + 18 + 640 * sizeof (short) / sizeof (int) + 560, + 18 + 640 * sizeof (short) / sizeof (int) + 576, + 18 + 640 * sizeof (short) / sizeof (int) + 592, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 608, + 18 + 640 * sizeof (short) / sizeof (int) + 624, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 640, + 18 + 640 * sizeof (short) / sizeof (int) + 656, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 672, + 18 + 640 * sizeof (short) / sizeof (int) + 688, + 18 + 640 * sizeof (short) / sizeof (int) + 704, + 18 + 640 * sizeof (short) / sizeof (int) + 720, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 736, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 752, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 768, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 320, + 18 + 640 * sizeof (short) / sizeof (int) + 784 + }, + { + 0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF, + 0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x7C30FFFF, + 0xFFFFD7F0, 0xFFFFFFFB, 0xFFFF7FFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFF7F, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x000FFFFF, 0xFFFE0000, 0xFE7FFFFF, 0xFFFFFFFE, + 0xFFFE06FF, 0xFFFFFFFF, 0xFFFF00FF, 0x001F07FF, + 0xC83FF80F, 0x07FFFFFE, 0x7FFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFBFFF, 0xFFFFFFFF, 0xFFFFE7FF, 0x00003FFF, + 0xFFFFFFFF, 0x0003FFFF, 0xFFFFFFFF, 0x07FFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFE, 0xF3FFFFFF, 0xFF1F3FFF, 0xF801FFFF, + 0xFFF99FEE, 0xF3C5FDFF, 0xB080799F, 0x07FFFFCF, + 0xFFF987EE, 0xD36DFDFF, 0x5E003987, 0x001FFFC0, + 0xFFFBBFEE, 0xF3EDFDFF, 0x00013BBF, 0x0002FFCF, + 0xFFF99FEE, 0xF3EDFDFF, 0xB0C0398F, 0x0003FFC3, + 0xD63DC7EC, 0xC3FFC718, 0x00803DC7, 0x07FFFFC0, + 0xFFFDDFEE, 0xC3EFFDFF, 0x00603DDF, 0x0000FFC3, + 0xFFFDDFEC, 0xF3EFFDFF, 0x40603DDF, 0x0006FFCF, + 0xFFFDDFEC, 0xC3FFFDFF, 0x00803DCF, 0x0000FFC3, + 0xFC7FFFEC, 0x2FFBFFFF, 0xFF5F847F, 0x001C0000, + 0xFFFFFFFE, 0x87FFFFFF, 0x0FFFFFFF, 0x00000000, + 0xFEF02596, 0x3BFFECAE, 0x33FF3F5F, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFEFF, 0xFFFE07FF, + 0xFEFF0FFF, 0xDFFFFFFF, 0x00039FFF, 0x00000000, + 0xFFFFFFFF, 0x03C7F6FB, 0x03FFFFFF, 0x00000000, + 0x00000000, 0xFFFFFFFF, 0xFFFF003F, 0x1FFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x83FFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF07, 0xFFFFFFFF, 0x03FFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x3D7F3DFF, 0xFFFFFFFF, + 0xFFFF3DFF, 0x7F3DFFFF, 0xFF7FFF3D, 0xFFFFFFFF, + 0xFF3DFFFF, 0xFFFFFFFF, 0x87FFFFFF, 0x1FFFFFFF, + 0x03FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x001FFFFF, + 0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, + 0x1FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0001FFFF, + 0x001FDFFF, 0x007FFFFF, 0x000FFFFF, 0x000DDFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x3FFFFFFF, 0x03FF03FF, + 0x03FF7FFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF, + 0xFFFFFFFF, 0x000003FF, 0x00000000, 0x00000000, + 0x1FFFFFFF, 0x0FFF0FFF, 0xFFFFFFF1, 0x001F3FFF, + 0xFFFFFFFF, 0xFFFF03FF, 0xC3FF03FF, 0xFFFFFFFF, + 0xCFFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF0FFF, 0x1FFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x000007FF, 0xC0000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x0FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, + 0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF, + 0xFFFFFFFF, 0xFFDFFFFF, 0xEFCFFFDF, 0x7FDCFFFF, + 0xFFFFFFFF, 0xFFFFFCFF, 0xFFFFFFFF, 0xFFF3FC0F, + 0x001F7FFF, 0x003FFFFF, 0xFFFF0000, 0x0000FFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFF87FFF, 0xFFFFFFFF, + 0xFFFF001F, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000000FF, + 0xFFFFFFFF, 0x0000007F, 0x000007FF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x1FFFFFFF, 0x0007FFFF, 0x00000000, 0x00000000, + 0xFFFFF3DE, 0xFFFFFEFF, 0x7F47AFFF, 0xFFFFFFFE, + 0xFF1FFFFF, 0x7FFEFFFF, 0xFFFF07FF, 0xFFFF0FFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x07FFFFFF, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFF7FFF, 0x7FFFFFFF, 0x00F01FFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFE0007FF, + 0xFFFFFFFF, 0xFFFF003F, 0xFFFFFFFF, 0x0000803F, + 0x007FFFFF, 0x7F7F7F7F, 0x7F7F7F7F, 0x00000000, + 0x30FFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0xFBFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, 0x0FFF0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFE, 0xFFFFFFFF, + 0xFE7FFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFE0, 0xFFFE1FFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFF7FFF, 0x00FFFFFF, 0x0000FFFF, 0xFFFF0000, + 0x7FFFFFFF, 0xFFFFFFFF, 0xFFFF000F, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x003FFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0FFFFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFF1FFF, 0xFFFFFFFF, 0x0000007F, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x07FFFFFF, 0x00000003, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0x00000FFF, 0xFFFFFFFF, 0x00FFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0000000F, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFF3FFF, 0xFFFFFFFF, 0xFFFF07FF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, 0x00000000, + 0xE0F8007F, 0x5F7FFFFF, 0xFFFFFFDB, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0003FFFF, 0xFFF80000, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF0000, 0xFFFFFFFF, + 0xFFFCFFFF, 0xFFFFFFFF, 0x000000FF, 0x3FFF0000, + 0x03FFFFFF, 0xFFFF000F, 0xFFF7FFFF, 0xFFDF0F7F, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x9FFFFFFF, + 0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x7FFFFFFF, 0x1CFCFCFC, 0x3E007F7F, + 0xFFFFEFFF, 0xB7FFFF7F, 0x3FFF3FFF, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF, + 0xFFFFFF87, 0xFF8FFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x000007FF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x7FFFFFFF, 0xFFFF000F, 0x000007FF, 0x00000000, + 0xBFFFFFFF, 0xFFFFFFFF, 0x003FFF0F, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x3FFFFFFF, 0x000003FF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFD3F, 0x91BFFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x83FFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFEEFF06F, 0x870FFFFF, 0x01FF00FF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000F0007, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, + 0xFFFFFFFF, 0xFFFFFC7F, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x3FFFFFFF, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x0003FFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF, + 0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF, + 0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF3F, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFCFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000002, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x3FFFFFFF + } +}; diff --git a/lib/unictype/ctype_punct.c b/lib/unictype/ctype_punct.c new file mode 100644 index 000000000..e6b79469b --- /dev/null +++ b/lib/unictype/ctype_punct.c @@ -0,0 +1,32 @@ +/* ISO C like properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_is_punct table. */ +#include "ctype_punct.h" + +bool +uc_is_punct (ucs4_t uc) +{ + return bitmap_lookup (&u_is_punct, uc); +} diff --git a/lib/unictype/ctype_punct.h b/lib/unictype/ctype_punct.h new file mode 100644 index 000000000..dc0409b66 --- /dev/null +++ b/lib/unictype/ctype_punct.h @@ -0,0 +1,726 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* ISO C like properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[17]; + short level2[4 << 7]; + /*unsigned*/ int level3[43 << 4]; + } +u_is_punct = +{ + { 17 }, + { + 18 * sizeof (int) / sizeof (short) + 0, + 18 * sizeof (int) / sizeof (short) + 128, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 384 + }, + { + 18 + 512 * sizeof (short) / sizeof (int) + 0, + 18 + 512 * sizeof (short) / sizeof (int) + 16, + 18 + 512 * sizeof (short) / sizeof (int) + 32, + 18 + 512 * sizeof (short) / sizeof (int) + 48, + 18 + 512 * sizeof (short) / sizeof (int) + 64, + 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) + 144, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 160, + 18 + 512 * sizeof (short) / sizeof (int) + 176, + 18 + 512 * sizeof (short) / sizeof (int) + 192, + 18 + 512 * sizeof (short) / sizeof (int) + 208, + 18 + 512 * sizeof (short) / sizeof (int) + 224, + 18 + 512 * sizeof (short) / sizeof (int) + 240, + 18 + 512 * sizeof (short) / sizeof (int) + 256, + 18 + 512 * sizeof (short) / sizeof (int) + 272, + 18 + 512 * sizeof (short) / sizeof (int) + 288, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 320, + 18 + 512 * sizeof (short) / sizeof (int) + 336, + 18 + 512 * sizeof (short) / sizeof (int) + 352, + 18 + 512 * sizeof (short) / sizeof (int) + 368, + 18 + 512 * sizeof (short) / sizeof (int) + 384, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 400, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 416, + 18 + 512 * sizeof (short) / sizeof (int) + 432, + 18 + 512 * sizeof (short) / sizeof (int) + 448, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 464, + 18 + 512 * sizeof (short) / sizeof (int) + 480, + 18 + 512 * sizeof (short) / sizeof (int) + 496, + 18 + 512 * sizeof (short) / sizeof (int) + 512, + 18 + 512 * sizeof (short) / sizeof (int) + 528, + 18 + 512 * sizeof (short) / sizeof (int) + 544, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 560, + 18 + 512 * sizeof (short) / sizeof (int) + 576, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 592, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 608, + 18 + 512 * sizeof (short) / sizeof (int) + 624, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 640, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 656, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 672 + }, + { + 0x00000000, 0xFC00FFFE, 0xF8000001, 0x78000001, + 0x00000000, 0xFBDFFBFF, 0x00800000, 0x00800000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFC003C, 0xFFFFBFE0, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFDF, 0x4030FFFF, + 0x000000B0, 0x00000000, 0x00000000, 0x00400000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000037C, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFC000000, 0x00000000, + 0xFFFE0600, 0xFFFFFFFF, 0x000000FF, 0x00180000, + 0xC83FF80F, 0x00000000, 0x7FFFF800, 0x00013C00, + 0x00000000, 0x00000000, 0xFFD00000, 0x60003F9F, + 0x0002BFFF, 0xFFFF0000, 0x000007FF, 0x00000000, + 0x00000000, 0x0001FFC0, 0x00000000, 0x03CFF800, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000000E, 0xD0000000, 0x001E3FFF, 0x0001003C, + 0x0000000E, 0xD0000000, 0x0080399F, 0x07FC000C, + 0x0000000E, 0xD0000000, 0x00003987, 0x00030000, + 0x0000000E, 0xD0000000, 0x00003BBF, 0x0002000C, + 0x0000000E, 0xD0000000, 0x00C0398F, 0x00010000, + 0x00000004, 0xC0000000, 0x00803DC7, 0x07FF0000, + 0x0000000E, 0xC0000000, 0x00603DDF, 0x00000000, + 0x0000000C, 0xD0000000, 0x00603DDF, 0x0006000C, + 0x0000000C, 0xC0000000, 0x00803DCF, 0x00000000, + 0x0000000C, 0x00000000, 0xFF5F8400, 0x001C0000, + 0x00000000, 0x80008000, 0x0C008040, 0x00000000, + 0x00000000, 0x1BF20000, 0x00003F00, 0x00000000, + 0xFFFFFFFE, 0xFFFFFC00, 0x00000000, 0xFFFE0000, + 0xFEFF00FF, 0xDFFFFFFF, 0x00039FFF, 0x00000000, + 0x00000000, 0x03C7F000, 0x03C0FC00, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x08000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x80000000, 0x1FFFFFFF, + 0x03FF0000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00006000, + 0x18000000, 0x00000000, 0x00000000, 0x00003800, + 0x001C0000, 0x007C0000, 0x000C0000, 0x000C0000, + 0x00000000, 0xFFF00000, 0x2F7FFFFF, 0x03FF0000, + 0x00003FFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000200, 0x00000000, 0x00000000, + 0x00000000, 0x0FFF0FFF, 0x00000031, 0x00000000, + 0x00000000, 0xFFFF0000, 0xC0000301, 0xFFFFFFFF, + 0xCF800000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000001F, 0xFFF00000, 0xFC00001F, 0x1FFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x000007FF, 0xC0000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xA0000000, 0xE000E003, 0x6000E000, + 0xFFFFF880, 0xFFFFFCFF, 0x7FFFFFFF, 0x7FF1FC0F, + 0x00007FFF, 0x003FFFFF, 0xFFFF0000, 0x0000FFFF, + 0xC1D0037B, 0x0C0040AF, 0xFFF83C1F, 0x00000000, + 0xFFFF0000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000000FF, + 0xFFFFFFFF, 0x0000007F, 0x000007FF, 0xFFFFFFFF, + 0x0FFFFFFF, 0x00000000, 0x00000000, 0xFFFFFC00, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x1FFFFFFF, 0x0007FFFF, 0x00000000, 0x00000000, + 0xFFFFF3DE, 0xFFFFFEFF, 0x7F47AFFF, 0xFFFFFFFE, + 0xFF1FFFFF, 0x7FFEFFFF, 0xFFFF07FF, 0xFFFF0FFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x07FFFFFF, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFE0007E0, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x30FFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0xFBFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, 0x0FFF0000, + 0xFFFFFF1E, 0xE0C1FC01, 0x00000000, 0x00000000, + 0x1E000000, 0x00000001, 0x00000000, 0x08000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFF0000, 0x00000000, 0x0000FFFF, 0x00000000, + 0x7FFFFFFF, 0xFFFFFFFF, 0xFFFF000F, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFF0000, 0xFFFFFFFF, 0x0000007F, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x007FFFFF, 0x00000003, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000844, 0x00000FF8, 0x00000000, 0x00F00000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x40000000, 0x00000200, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xC0000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x30000000, + 0x03FFFFFF, 0xFFFF000F, 0xFFF7FFFF, 0x00000F7F, + 0x00000000, 0x00000000, 0x00000000, 0x80000000, + 0xFC00FFFE, 0xF8000001, 0xF8000001, 0x0000003F, + 0x00000000, 0x00000000, 0x00000000, 0x3E007F7F, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFF87, 0xFF8FFFFF, 0x00000000, 0xFFE00000, + 0x000007FF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x0000000F, 0x00000000, 0x00000000, + 0x80000000, 0x00000000, 0x00010000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x83C00000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000F06E, 0x87000000, 0x01FF00FF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x000F0000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, + 0xFFFFFFFF, 0xFFFFFC7F, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x3FFFFFFF, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0x0000003F, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x0003FFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x08000002, 0x08000000, + 0x00200000, 0x00200000, 0x00008000, 0x00008000, + 0x00000200, 0x00000200, 0x00000008, 0x00000000, + 0x00000002, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x3FFFFFFF + } +}; diff --git a/lib/unictype/ctype_space.c b/lib/unictype/ctype_space.c new file mode 100644 index 000000000..09d2c112a --- /dev/null +++ b/lib/unictype/ctype_space.c @@ -0,0 +1,32 @@ +/* ISO C like properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_is_space table. */ +#include "ctype_space.h" + +bool +uc_is_space (ucs4_t uc) +{ + return bitmap_lookup (&u_is_space, uc); +} diff --git a/lib/unictype/ctype_space.h b/lib/unictype/ctype_space.h new file mode 100644 index 000000000..6d11a784b --- /dev/null +++ b/lib/unictype/ctype_space.h @@ -0,0 +1,172 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* ISO C like properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[5 << 4]; + } +u_is_space = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00003E00, 0x00000001, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000001, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00004000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000077F, 0x00000300, 0x80000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000001, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/ctype_upper.c b/lib/unictype/ctype_upper.c new file mode 100644 index 000000000..7724a048b --- /dev/null +++ b/lib/unictype/ctype_upper.c @@ -0,0 +1,32 @@ +/* ISO C like properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_is_upper table. */ +#include "ctype_upper.h" + +bool +uc_is_upper (ucs4_t uc) +{ + return bitmap_lookup (&u_is_upper, uc); +} diff --git a/lib/unictype/ctype_upper.h b/lib/unictype/ctype_upper.h new file mode 100644 index 000000000..042b59b44 --- /dev/null +++ b/lib/unictype/ctype_upper.h @@ -0,0 +1,323 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* ISO C like properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[10 << 4]; + } +u_is_upper = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 144, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x07FFFFFE, 0x00000000, + 0x00000000, 0x00000000, 0x7F7FFFFF, 0x00000000, + 0x55555555, 0xAA555555, 0x555554AA, 0x2B555555, + 0xB1DBCED6, 0x11AED2D5, 0x4AAAADB0, 0x55D65555, + 0x55555555, 0x6C055555, 0x0000557A, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFED740, 0x00000FFB, 0x55000000, 0xE6905555, + 0xFFFFFFFF, 0x0000FFFF, 0x00000000, 0x55555555, + 0x55555401, 0x55555555, 0x55552AAB, 0x55555555, + 0x00055555, 0xFFFE0000, 0x007FFFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFFFFFFF, 0x0000003F, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x55555555, 0x55555555, 0x55555555, 0x55555555, + 0x00155555, 0x55555555, 0x55555555, 0x01555555, + 0x3F00FF00, 0xFF00FF00, 0xAA003F00, 0x0000FF00, + 0xFF00FF00, 0x1F00FF00, 0x0F001F00, 0x1F001F00, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00040C40, 0x00000000, 0x0000FFFF, + 0x00000008, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFC00000, 0x0000FFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0x00007FFF, 0x00000000, 0x00200A9D, + 0x55555555, 0x55555555, 0x55555555, 0x00000005, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x07FFFFFE, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0x000000FF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/ctype_xdigit.c b/lib/unictype/ctype_xdigit.c new file mode 100644 index 000000000..60c44c4f0 --- /dev/null +++ b/lib/unictype/ctype_xdigit.c @@ -0,0 +1,32 @@ +/* ISO C like properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_is_xdigit table. */ +#include "ctype_xdigit.h" + +bool +uc_is_xdigit (ucs4_t uc) +{ + return bitmap_lookup (&u_is_xdigit, uc); +} diff --git a/lib/unictype/ctype_xdigit.h b/lib/unictype/ctype_xdigit.h new file mode 100644 index 000000000..1cd227971 --- /dev/null +++ b/lib/unictype/ctype_xdigit.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* ISO C like properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[1 << 4]; + } +u_is_xdigit = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x03FF0000, 0x0000007E, 0x0000007E, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/decdigit.c b/lib/unictype/decdigit.c new file mode 100644 index 000000000..48b059258 --- /dev/null +++ b/lib/unictype/decdigit.c @@ -0,0 +1,49 @@ +/* Values of decimal digit Unicode characters. + Copyright (C) 2002, 2006 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_decdigit table. */ +#include "decdigit.h" + +int +uc_decimal_value (ucs4_t uc) +{ + unsigned int index1 = uc >> decdigit_header_0; + if (index1 < decdigit_header_1) + { + int lookup1 = u_decdigit.level1[index1]; + if (lookup1 >= 0) + { + unsigned int index2 = (uc >> decdigit_header_2) & decdigit_header_3; + int lookup2 = u_decdigit.level2[lookup1 + index2]; + if (lookup2 >= 0) + { + unsigned int index3 = (uc & decdigit_header_4) + lookup2; + /* level3 contains 4-bit values. */ + unsigned int lookup3 = + (u_decdigit.level3[index3>>1] >> ((index3 % 2) * 4)) & 0x0f; + + return (int) lookup3 - 1; + } + } + } + return -1; +} diff --git a/lib/unictype/decdigit.h b/lib/unictype/decdigit.h new file mode 100644 index 000000000..51f98105b --- /dev/null +++ b/lib/unictype/decdigit.h @@ -0,0 +1,231 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Decimal digit values of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define decdigit_header_0 16 +#define decdigit_header_1 2 +#define decdigit_header_2 7 +#define decdigit_header_3 511 +#define decdigit_header_4 127 +static const +struct + { + int level1[2]; + short level2[2 << 9]; + unsigned char level3[10 << 6]; + } +u_decdigit = +{ + { 0, 512 }, + { + 0, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 128, 256, -1, 384, + -1, -1, 512, 512, 512, 512, 512, 512, + 512, 512, 512, -1, 640, 640, 768, -1, + 384, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 128, + 896, -1, 1024, 640, -1, -1, 640, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 896, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, 768, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 1152, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1 + }, + { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x21, 0x43, 0x65, 0x87, 0xa9, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x21, 0x43, 0x65, 0x87, 0xa9, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x21, 0x43, 0x65, 0x87, 0xa9, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x21, 0x43, 0x65, 0x87, 0xa9, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x21, 0x43, 0x65, 0x87, 0xa9, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x21, 0x43, 0x65, 0x87, 0xa9, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x21, 0x43, 0x65, 0x87, 0xa9, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x21, 0x43, 0x65, 0x87, 0xa9, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x21, 0x43, 0x65, 0x87, 0xa9, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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, + 0x65, 0x87, 0xa9, 0x21, 0x43, 0x65, 0x87, 0xa9 + } +}; diff --git a/lib/unictype/digit.c b/lib/unictype/digit.c new file mode 100644 index 000000000..21545c7b0 --- /dev/null +++ b/lib/unictype/digit.c @@ -0,0 +1,49 @@ +/* Values of digit Unicode characters. + Copyright (C) 2002, 2006 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_digit table. */ +#include "digit.h" + +int +uc_digit_value (ucs4_t uc) +{ + unsigned int index1 = uc >> digit_header_0; + if (index1 < digit_header_1) + { + int lookup1 = u_digit.level1[index1]; + if (lookup1 >= 0) + { + unsigned int index2 = (uc >> digit_header_2) & digit_header_3; + int lookup2 = u_digit.level2[lookup1 + index2]; + if (lookup2 >= 0) + { + unsigned int index3 = (uc & digit_header_4) + lookup2; + /* level3 contains 4-bit values. */ + unsigned int lookup3 = + (u_digit.level3[index3>>1] >> ((index3 % 2) * 4)) & 0x0f; + + return (int) lookup3 - 1; + } + } + } + return -1; +} diff --git a/lib/unictype/digit.h b/lib/unictype/digit.h new file mode 100644 index 000000000..83672c5d9 --- /dev/null +++ b/lib/unictype/digit.h @@ -0,0 +1,303 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Digit values of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define digit_header_0 16 +#define digit_header_1 2 +#define digit_header_2 7 +#define digit_header_3 511 +#define digit_header_4 127 +static const +struct + { + int level1[2]; + short level2[2 << 9]; + unsigned char level3[19 << 6]; + } +u_digit = +{ + { 0, 512 }, + { + 0, 128, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 256, 384, -1, 512, + -1, -1, 640, 640, 640, 640, 640, 640, + 640, 640, 640, -1, 768, 768, 896, -1, + 512, -1, -1, -1, -1, -1, 1024, -1, + -1, -1, -1, -1, -1, -1, -1, 256, + 1152, -1, 1280, 768, -1, -1, 768, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 1408, 1536, -1, -1, -1, -1, -1, -1, + 1664, 1792, -1, -1, -1, -1, 1920, 2048, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 1152, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, 896, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 2176, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 2304, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1 + }, + { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x21, 0x43, 0x65, 0x87, 0xa9, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x43, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x21, 0x43, 0x65, 0x87, 0xa9, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x21, 0x43, 0x65, 0x87, 0xa9, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x21, 0x43, 0x65, 0x87, 0xa9, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x21, 0x43, 0x65, 0x87, 0xa9, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x21, 0x43, 0x65, 0x87, 0xa9, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x21, 0x43, 0x65, 0x87, 0xa9, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x20, 0x43, 0x65, 0x87, + 0xa9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x21, 0x43, 0x65, 0x87, 0xa9, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x21, 0x43, 0x65, 0x87, 0xa9, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x65, 0x87, 0xa9, 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, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 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, 0x32, 0x54, 0x76, 0x98, 0x0a, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x32, 0x54, 0x76, 0x98, + 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x20, 0x43, 0x65, 0x87, 0xa9, 0x10, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 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, + 0x32, 0x54, 0x76, 0x98, 0x0a, 0x32, 0x54, 0x76, + 0x98, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x32, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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, + 0x65, 0x87, 0xa9, 0x21, 0x43, 0x65, 0x87, 0xa9 + } +}; diff --git a/lib/unictype/gen-ctype.c b/lib/unictype/gen-ctype.c new file mode 100644 index 000000000..e8ff2b6f9 --- /dev/null +++ b/lib/unictype/gen-ctype.c @@ -0,0 +1,5135 @@ +/* Generate Unicode conforming character classification tables from a + UnicodeData file. + Copyright (C) 2000-2002, 2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2000-2002. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software Foundation, + Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + +/* Usage example: + $ gen-ctype /usr/local/share/Unidata/UnicodeData.txt \ + /usr/local/share/Unidata/PropList.txt \ + /usr/local/share/Unidata/DerivedCoreProperties.txt \ + /usr/local/share/Unidata/Scripts.txt \ + /usr/local/share/Unidata/Blocks.txt \ + /usr/local/share/Unidata/PropList-3.0.1.txt \ + 5.0.0 + */ + +#include +#include +#include +#include +#include +#include + +/* ========================================================================= */ + +/* Reading UnicodeData.txt. */ +/* See UCD.html. */ + +/* This structure represents one line in the UnicodeData.txt file. */ +struct unicode_attribute +{ + const char *name; /* Character name */ + const char *category; /* General category */ + const char *combining; /* Canonical combining class */ + const char *bidi; /* Bidirectional category */ + const char *decomposition; /* Character decomposition mapping */ + const char *decdigit; /* Decimal digit value */ + const char *digit; /* Digit value */ + const char *numeric; /* Numeric value */ + bool mirrored; /* mirrored */ + const char *oldname; /* Old Unicode 1.0 name */ + const char *comment; /* Comment */ + unsigned int upper; /* Uppercase mapping */ + unsigned int lower; /* Lowercase mapping */ + unsigned int title; /* Titlecase mapping */ +}; + +/* Missing fields are represented with "" for strings, and NONE for + characters. */ +#define NONE (~(unsigned int)0) + +/* The entire contents of the UnicodeData.txt file. */ +struct unicode_attribute unicode_attributes [0x110000]; + +/* Stores in unicode_attributes[i] the values from the given fields. */ +static void +fill_attribute (unsigned int i, + const char *field1, const char *field2, + const char *field3, const char *field4, + const char *field5, const char *field6, + const char *field7, const char *field8, + const char *field9, const char *field10, + const char *field11, const char *field12, + const char *field13, const char *field14) +{ + struct unicode_attribute * uni; + + if (i >= 0x110000) + { + fprintf (stderr, "index too large\n"); + exit (1); + } + if (strcmp (field2, "Cs") == 0) + /* Surrogates are UTF-16 artefacts, not real characters. Ignore them. */ + return; + uni = &unicode_attributes[i]; + /* Copy the strings. */ + uni->name = strdup (field1); + uni->category = (field2[0] == '\0' ? "" : strdup (field2)); + uni->combining = (field3[0] == '\0' ? "" : strdup (field3)); + uni->bidi = (field4[0] == '\0' ? "" : strdup (field4)); + uni->decomposition = (field5[0] == '\0' ? "" : strdup (field5)); + uni->decdigit = (field6[0] == '\0' ? "" : strdup (field6)); + uni->digit = (field7[0] == '\0' ? "" : strdup (field7)); + uni->numeric = (field8[0] == '\0' ? "" : strdup (field8)); + uni->mirrored = (field9[0] == 'Y'); + uni->oldname = (field10[0] == '\0' ? "" : strdup (field10)); + uni->comment = (field11[0] == '\0' ? "" : strdup (field11)); + uni->upper = (field12[0] =='\0' ? NONE : strtoul (field12, NULL, 16)); + uni->lower = (field13[0] =='\0' ? NONE : strtoul (field13, NULL, 16)); + uni->title = (field14[0] =='\0' ? NONE : strtoul (field14, NULL, 16)); +} + +/* Maximum length of a field in the UnicodeData.txt file. */ +#define FIELDLEN 120 + +/* Reads the next field from STREAM. The buffer BUFFER has size FIELDLEN. + Reads up to (but excluding) DELIM. + Returns 1 when a field was successfully read, otherwise 0. */ +static int +getfield (FILE *stream, char *buffer, int delim) +{ + int count = 0; + int c; + + for (; (c = getc (stream)), (c != EOF && c != delim); ) + { + /* The original unicode.org UnicodeData.txt file happens to have + CR/LF line terminators. Silently convert to LF. */ + if (c == '\r') + continue; + + /* Put c into the buffer. */ + if (++count >= FIELDLEN - 1) + { + fprintf (stderr, "field longer than expected, increase FIELDLEN\n"); + exit (1); + } + *buffer++ = c; + } + + if (c == EOF) + return 0; + + *buffer = '\0'; + return 1; +} + +/* Stores in unicode_attributes[] the entire contents of the UnicodeData.txt + file. */ +static void +fill_attributes (const char *unicodedata_filename) +{ + unsigned int i, j; + FILE *stream; + char field0[FIELDLEN]; + char field1[FIELDLEN]; + char field2[FIELDLEN]; + char field3[FIELDLEN]; + char field4[FIELDLEN]; + char field5[FIELDLEN]; + char field6[FIELDLEN]; + char field7[FIELDLEN]; + char field8[FIELDLEN]; + char field9[FIELDLEN]; + char field10[FIELDLEN]; + char field11[FIELDLEN]; + char field12[FIELDLEN]; + char field13[FIELDLEN]; + char field14[FIELDLEN]; + int lineno = 0; + + for (i = 0; i < 0x110000; i++) + unicode_attributes[i].name = NULL; + + stream = fopen (unicodedata_filename, "r"); + if (stream == NULL) + { + fprintf (stderr, "error during fopen of '%s'\n", unicodedata_filename); + exit (1); + } + + for (;;) + { + int n; + + lineno++; + n = getfield (stream, field0, ';'); + n += getfield (stream, field1, ';'); + n += getfield (stream, field2, ';'); + n += getfield (stream, field3, ';'); + n += getfield (stream, field4, ';'); + n += getfield (stream, field5, ';'); + n += getfield (stream, field6, ';'); + n += getfield (stream, field7, ';'); + n += getfield (stream, field8, ';'); + n += getfield (stream, field9, ';'); + n += getfield (stream, field10, ';'); + n += getfield (stream, field11, ';'); + n += getfield (stream, field12, ';'); + n += getfield (stream, field13, ';'); + n += getfield (stream, field14, '\n'); + if (n == 0) + break; + if (n != 15) + { + fprintf (stderr, "short line in '%s':%d\n", + unicodedata_filename, lineno); + exit (1); + } + i = strtoul (field0, NULL, 16); + if (field1[0] == '<' + && strlen (field1) >= 9 + && strcmp (field1 + strlen(field1) - 8, ", First>") == 0) + { + /* Deal with a range. */ + lineno++; + n = getfield (stream, field0, ';'); + n += getfield (stream, field1, ';'); + n += getfield (stream, field2, ';'); + n += getfield (stream, field3, ';'); + n += getfield (stream, field4, ';'); + n += getfield (stream, field5, ';'); + n += getfield (stream, field6, ';'); + n += getfield (stream, field7, ';'); + n += getfield (stream, field8, ';'); + n += getfield (stream, field9, ';'); + n += getfield (stream, field10, ';'); + n += getfield (stream, field11, ';'); + n += getfield (stream, field12, ';'); + n += getfield (stream, field13, ';'); + n += getfield (stream, field14, '\n'); + if (n != 15) + { + fprintf (stderr, "missing end range in '%s':%d\n", + unicodedata_filename, lineno); + exit (1); + } + if (!(field1[0] == '<' + && strlen (field1) >= 8 + && strcmp (field1 + strlen (field1) - 7, ", Last>") == 0)) + { + fprintf (stderr, "missing end range in '%s':%d\n", + unicodedata_filename, lineno); + exit (1); + } + field1[strlen (field1) - 7] = '\0'; + j = strtoul (field0, NULL, 16); + for (; i <= j; i++) + fill_attribute (i, field1+1, field2, field3, field4, field5, + field6, field7, field8, field9, field10, + field11, field12, field13, field14); + } + else + { + /* Single character line */ + fill_attribute (i, field1, field2, field3, field4, field5, + field6, field7, field8, field9, field10, + field11, field12, field13, field14); + } + } + if (ferror (stream) || fclose (stream)) + { + fprintf (stderr, "error reading from '%s'\n", unicodedata_filename); + exit (1); + } +} + +/* ========================================================================= */ + +/* General category. */ +/* See Unicode 3.0 book, section 4.5, + UCD.html. */ + +static bool +is_category_L (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'L'); +} + +static bool +is_category_Lu (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'L' + && unicode_attributes[ch].category[1] == 'u'); +} + +static bool +is_category_Ll (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'L' + && unicode_attributes[ch].category[1] == 'l'); +} + +static bool +is_category_Lt (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'L' + && unicode_attributes[ch].category[1] == 't'); +} + +static bool +is_category_Lm (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'L' + && unicode_attributes[ch].category[1] == 'm'); +} + +static bool +is_category_Lo (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'L' + && unicode_attributes[ch].category[1] == 'o'); +} + +static bool +is_category_M (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'M'); +} + +static bool +is_category_Mn (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'M' + && unicode_attributes[ch].category[1] == 'n'); +} + +static bool +is_category_Mc (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'M' + && unicode_attributes[ch].category[1] == 'c'); +} + +static bool +is_category_Me (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'M' + && unicode_attributes[ch].category[1] == 'e'); +} + +static bool +is_category_N (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'N'); +} + +static bool +is_category_Nd (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'N' + && unicode_attributes[ch].category[1] == 'd'); +} + +static bool +is_category_Nl (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'N' + && unicode_attributes[ch].category[1] == 'l'); +} + +static bool +is_category_No (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'N' + && unicode_attributes[ch].category[1] == 'o'); +} + +static bool +is_category_P (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'P'); +} + +static bool +is_category_Pc (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'P' + && unicode_attributes[ch].category[1] == 'c'); +} + +static bool +is_category_Pd (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'P' + && unicode_attributes[ch].category[1] == 'd'); +} + +static bool +is_category_Ps (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'P' + && unicode_attributes[ch].category[1] == 's'); +} + +static bool +is_category_Pe (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'P' + && unicode_attributes[ch].category[1] == 'e'); +} + +static bool +is_category_Pi (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'P' + && unicode_attributes[ch].category[1] == 'i'); +} + +static bool +is_category_Pf (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'P' + && unicode_attributes[ch].category[1] == 'f'); +} + +static bool +is_category_Po (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'P' + && unicode_attributes[ch].category[1] == 'o'); +} + +static bool +is_category_S (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'S'); +} + +static bool +is_category_Sm (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'S' + && unicode_attributes[ch].category[1] == 'm'); +} + +static bool +is_category_Sc (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'S' + && unicode_attributes[ch].category[1] == 'c'); +} + +static bool +is_category_Sk (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'S' + && unicode_attributes[ch].category[1] == 'k'); +} + +static bool +is_category_So (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'S' + && unicode_attributes[ch].category[1] == 'o'); +} + +static bool +is_category_Z (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'Z'); +} + +static bool +is_category_Zs (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'Z' + && unicode_attributes[ch].category[1] == 's'); +} + +static bool +is_category_Zl (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'Z' + && unicode_attributes[ch].category[1] == 'l'); +} + +static bool +is_category_Zp (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'Z' + && unicode_attributes[ch].category[1] == 'p'); +} + +static bool +is_category_C (unsigned int ch) +{ + return (unicode_attributes[ch].name == NULL + || unicode_attributes[ch].category[0] == 'C'); +} + +static bool +is_category_Cc (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'C' + && unicode_attributes[ch].category[1] == 'c'); +} + +static bool +is_category_Cf (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'C' + && unicode_attributes[ch].category[1] == 'f'); +} + +static bool +is_category_Cs (unsigned int ch) +{ + return (ch >= 0xd800 && ch < 0xe000); +} + +static bool +is_category_Co (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'C' + && unicode_attributes[ch].category[1] == 'o'); +} + +static bool +is_category_Cn (unsigned int ch) +{ + return (unicode_attributes[ch].name == NULL + && !(ch >= 0xd800 && ch < 0xe000)); +} + +/* Output a boolean property in a human readable format. */ +static void +debug_output_predicate (const char *filename, bool (*predicate) (unsigned int)) +{ + FILE *stream; + unsigned int ch; + + stream = fopen (filename, "w"); + if (stream == NULL) + { + fprintf (stderr, "cannot open '%s' for writing\n", filename); + exit (1); + } + +#if 0 /* This yields huge text output. */ + for (ch = 0; ch < 0x110000; ch++) + if (predicate (ch)) + { + fprintf (stream, "0x%04X\n", ch); + } +#else + for (ch = 0; ch < 0x110000; ch++) + if (predicate (ch)) + { + unsigned int first = ch; + unsigned int last; + + while (ch + 1 < 0x110000 && predicate (ch + 1)) + ch++; + last = ch; + if (first < last) + fprintf (stream, "0x%04X..0x%04X\n", first, last); + else + fprintf (stream, "0x%04X\n", ch); + } +#endif + + if (ferror (stream) || fclose (stream)) + { + fprintf (stderr, "error writing to '%s'\n", filename); + exit (1); + } +} + +/* Output the unit test for a boolean property. */ +static void +output_predicate_test (const char *filename, bool (*predicate) (unsigned int), const char *expression) +{ + FILE *stream; + bool need_comma; + unsigned int ch; + + stream = fopen (filename, "w"); + if (stream == NULL) + { + fprintf (stderr, "cannot open '%s' for writing\n", filename); + exit (1); + } + + fprintf (stream, "/* DO NOT EDIT! GENERATED AUTOMATICALLY! */\n"); + fprintf (stream, "/* Test the Unicode character type functions.\n"); + fprintf (stream, " Copyright (C) 2007 Free Software Foundation, Inc.\n"); + fprintf (stream, "\n"); + fprintf (stream, " This program is free software: you can redistribute it and/or modify\n"); + fprintf (stream, " it under the terms of the GNU General Public License as published by\n"); + fprintf (stream, " the Free Software Foundation; either version 3 of the License, or\n"); + fprintf (stream, " (at your option) any later version.\n"); + fprintf (stream, "\n"); + fprintf (stream, " This program is distributed in the hope that it will be useful,\n"); + fprintf (stream, " but WITHOUT ANY WARRANTY; without even the implied warranty of\n"); + fprintf (stream, " MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n"); + fprintf (stream, " GNU General Public License for more details.\n"); + fprintf (stream, "\n"); + fprintf (stream, " You should have received a copy of the GNU General Public License\n"); + fprintf (stream, " along with this program. If not, see . */\n"); + fprintf (stream, "\n"); + fprintf (stream, "#include \"test-predicate-part1.h\"\n"); + fprintf (stream, "\n"); + + need_comma = false; + for (ch = 0; ch < 0x110000; ch++) + if (predicate (ch)) + { + unsigned int first = ch; + unsigned int last; + + while (ch + 1 < 0x110000 && predicate (ch + 1)) + ch++; + last = ch; + if (need_comma) + fprintf (stream, ",\n"); + fprintf (stream, " { 0x%04X, 0x%04X }", first, last); + need_comma = true; + } + if (need_comma) + fprintf (stream, "\n"); + + fprintf (stream, "\n"); + fprintf (stream, "#define PREDICATE(c) %s\n", expression); + fprintf (stream, "#include \"test-predicate-part2.h\"\n"); + + if (ferror (stream) || fclose (stream)) + { + fprintf (stderr, "error writing to '%s'\n", filename); + exit (1); + } +} + +/* Construction of sparse 3-level tables. */ +#define TABLE predicate_table +#define xmalloc malloc +#define xrealloc realloc +#include "3levelbit.h" + +/* Output a boolean property in a three-level bitmap. */ +static void +output_predicate (const char *filename, bool (*predicate) (unsigned int), const char *name, const char *comment, const char *version) +{ + FILE *stream; + unsigned int ch, i; + struct predicate_table t; + unsigned int level1_offset, level2_offset, level3_offset; + + stream = fopen (filename, "w"); + if (stream == NULL) + { + fprintf (stderr, "cannot open '%s' for writing\n", filename); + exit (1); + } + + fprintf (stream, "/* DO NOT EDIT! GENERATED AUTOMATICALLY! */\n"); + fprintf (stream, "/* %s of Unicode characters. */\n", comment); + fprintf (stream, "/* Generated automatically by gen-ctype.c for Unicode %s. */\n", + version); + + t.p = 4; /* or: 5 */ + t.q = 7; /* or: 6 */ + predicate_table_init (&t); + + for (ch = 0; ch < 0x110000; ch++) + if (predicate (ch)) + predicate_table_add (&t, ch); + + predicate_table_finalize (&t); + + /* Offsets in t.result, in memory of this process. */ + level1_offset = + 5 * sizeof (uint32_t); + level2_offset = + 5 * sizeof (uint32_t) + + t.level1_size * sizeof (uint32_t); + level3_offset = + 5 * sizeof (uint32_t) + + t.level1_size * sizeof (uint32_t) + + (t.level2_size << t.q) * sizeof (uint32_t); + + for (i = 0; i < 5; i++) + if (i != 1) + fprintf (stream, "#define header_%d %d\n", i, + ((uint32_t *) t.result)[i]); + + fprintf (stream, "static const\n"); + fprintf (stream, "struct\n"); + fprintf (stream, " {\n"); + fprintf (stream, " int header[1];\n"); + fprintf (stream, " int level1[%d];\n", t.level1_size); + fprintf (stream, " short level2[%d << %d];\n", t.level2_size, t.q); + fprintf (stream, " /*unsigned*/ int level3[%d << %d];\n", t.level3_size, t.p); + fprintf (stream, " }\n"); + fprintf (stream, "%s =\n", name); + fprintf (stream, "{\n"); + fprintf (stream, " { %d },\n", ((uint32_t *) t.result)[1]); + fprintf (stream, " {"); + if (t.level1_size > 1) + fprintf (stream, "\n "); + for (i = 0; i < t.level1_size; i++) + { + uint32_t offset; + if (i > 0 && (i % 1) == 0) + fprintf (stream, "\n "); + offset = ((uint32_t *) (t.result + level1_offset))[i]; + if (offset == 0) + fprintf (stream, " %5d", -1); + else + fprintf (stream, " %5d * sizeof (int) / sizeof (short) + %5d", + 1 + t.level1_size, (offset - level2_offset) / sizeof (uint32_t)); + if (i+1 < t.level1_size) + fprintf (stream, ","); + } + if (t.level1_size > 1) + fprintf (stream, "\n "); + fprintf (stream, " },\n"); + fprintf (stream, " {"); + if (t.level2_size << t.q > 1) + fprintf (stream, "\n "); + for (i = 0; i < t.level2_size << t.q; i++) + { + uint32_t offset; + if (i > 0 && (i % 1) == 0) + fprintf (stream, "\n "); + offset = ((uint32_t *) (t.result + level2_offset))[i]; + if (offset == 0) + fprintf (stream, " %5d", -1); + else + fprintf (stream, " %5d + %5d * sizeof (short) / sizeof (int) + %5d", + 1 + t.level1_size, t.level2_size << t.q, (offset - level3_offset) / sizeof (uint32_t)); + if (i+1 < t.level2_size << t.q) + fprintf (stream, ","); + } + if (t.level2_size << t.q > 1) + fprintf (stream, "\n "); + fprintf (stream, " },\n"); + fprintf (stream, " {"); + if (t.level3_size << t.p > 4) + fprintf (stream, "\n "); + for (i = 0; i < t.level3_size << t.p; i++) + { + if (i > 0 && (i % 4) == 0) + fprintf (stream, "\n "); + fprintf (stream, " 0x%08X", + ((uint32_t *) (t.result + level3_offset))[i]); + if (i+1 < t.level3_size << t.p) + fprintf (stream, ","); + } + if (t.level3_size << t.p > 4) + fprintf (stream, "\n "); + fprintf (stream, " }\n"); + fprintf (stream, "};\n"); + + if (ferror (stream) || fclose (stream)) + { + fprintf (stderr, "error writing to '%s'\n", filename); + exit (1); + } +} + +/* Output all categories. */ +static void +output_categories (const char *version) +{ +#define CATEGORY(C) \ + debug_output_predicate ("categ_" #C ".txt", is_category_ ## C); \ + output_predicate_test ("test-categ_" #C ".c", is_category_ ## C, "uc_is_general_category (c, UC_CATEGORY_" #C ")"); \ + output_predicate ("categ_" #C ".h", is_category_ ## C, "u_categ_" #C, "Categories", version); + CATEGORY (L) + CATEGORY (Lu) + CATEGORY (Ll) + CATEGORY (Lt) + CATEGORY (Lm) + CATEGORY (Lo) + CATEGORY (M) + CATEGORY (Mn) + CATEGORY (Mc) + CATEGORY (Me) + CATEGORY (N) + CATEGORY (Nd) + CATEGORY (Nl) + CATEGORY (No) + CATEGORY (P) + CATEGORY (Pc) + CATEGORY (Pd) + CATEGORY (Ps) + CATEGORY (Pe) + CATEGORY (Pi) + CATEGORY (Pf) + CATEGORY (Po) + CATEGORY (S) + CATEGORY (Sm) + CATEGORY (Sc) + CATEGORY (Sk) + CATEGORY (So) + CATEGORY (Z) + CATEGORY (Zs) + CATEGORY (Zl) + CATEGORY (Zp) + CATEGORY (C) + CATEGORY (Cc) + CATEGORY (Cf) + CATEGORY (Cs) + CATEGORY (Co) + CATEGORY (Cn) +#undef CATEGORY +} + +enum +{ + UC_CATEGORY_MASK_L = 0x0000001f, + UC_CATEGORY_MASK_Lu = 0x00000001, + UC_CATEGORY_MASK_Ll = 0x00000002, + UC_CATEGORY_MASK_Lt = 0x00000004, + UC_CATEGORY_MASK_Lm = 0x00000008, + UC_CATEGORY_MASK_Lo = 0x00000010, + UC_CATEGORY_MASK_M = 0x000000e0, + UC_CATEGORY_MASK_Mn = 0x00000020, + UC_CATEGORY_MASK_Mc = 0x00000040, + UC_CATEGORY_MASK_Me = 0x00000080, + UC_CATEGORY_MASK_N = 0x00000700, + UC_CATEGORY_MASK_Nd = 0x00000100, + UC_CATEGORY_MASK_Nl = 0x00000200, + UC_CATEGORY_MASK_No = 0x00000400, + UC_CATEGORY_MASK_P = 0x0003f800, + UC_CATEGORY_MASK_Pc = 0x00000800, + UC_CATEGORY_MASK_Pd = 0x00001000, + UC_CATEGORY_MASK_Ps = 0x00002000, + UC_CATEGORY_MASK_Pe = 0x00004000, + UC_CATEGORY_MASK_Pi = 0x00008000, + UC_CATEGORY_MASK_Pf = 0x00010000, + UC_CATEGORY_MASK_Po = 0x00020000, + UC_CATEGORY_MASK_S = 0x003c0000, + UC_CATEGORY_MASK_Sm = 0x00040000, + UC_CATEGORY_MASK_Sc = 0x00080000, + UC_CATEGORY_MASK_Sk = 0x00100000, + UC_CATEGORY_MASK_So = 0x00200000, + UC_CATEGORY_MASK_Z = 0x01c00000, + UC_CATEGORY_MASK_Zs = 0x00400000, + UC_CATEGORY_MASK_Zl = 0x00800000, + UC_CATEGORY_MASK_Zp = 0x01000000, + UC_CATEGORY_MASK_C = 0x3e000000, + UC_CATEGORY_MASK_Cc = 0x02000000, + UC_CATEGORY_MASK_Cf = 0x04000000, + UC_CATEGORY_MASK_Cs = 0x08000000, + UC_CATEGORY_MASK_Co = 0x10000000, + UC_CATEGORY_MASK_Cn = 0x20000000 +}; + +static int +general_category_byname (const char *category_name) +{ + if (category_name[0] != '\0' + && (category_name[1] == '\0' || category_name[2] == '\0')) + switch (category_name[0]) + { + case 'L': + switch (category_name[1]) + { + case '\0': return UC_CATEGORY_MASK_L; + case 'u': return UC_CATEGORY_MASK_Lu; + case 'l': return UC_CATEGORY_MASK_Ll; + case 't': return UC_CATEGORY_MASK_Lt; + case 'm': return UC_CATEGORY_MASK_Lm; + case 'o': return UC_CATEGORY_MASK_Lo; + } + break; + case 'M': + switch (category_name[1]) + { + case '\0': return UC_CATEGORY_MASK_M; + case 'n': return UC_CATEGORY_MASK_Mn; + case 'c': return UC_CATEGORY_MASK_Mc; + case 'e': return UC_CATEGORY_MASK_Me; + } + break; + case 'N': + switch (category_name[1]) + { + case '\0': return UC_CATEGORY_MASK_N; + case 'd': return UC_CATEGORY_MASK_Nd; + case 'l': return UC_CATEGORY_MASK_Nl; + case 'o': return UC_CATEGORY_MASK_No; + } + break; + case 'P': + switch (category_name[1]) + { + case '\0': return UC_CATEGORY_MASK_P; + case 'c': return UC_CATEGORY_MASK_Pc; + case 'd': return UC_CATEGORY_MASK_Pd; + case 's': return UC_CATEGORY_MASK_Ps; + case 'e': return UC_CATEGORY_MASK_Pe; + case 'i': return UC_CATEGORY_MASK_Pi; + case 'f': return UC_CATEGORY_MASK_Pf; + case 'o': return UC_CATEGORY_MASK_Po; + } + break; + case 'S': + switch (category_name[1]) + { + case '\0': return UC_CATEGORY_MASK_S; + case 'm': return UC_CATEGORY_MASK_Sm; + case 'c': return UC_CATEGORY_MASK_Sc; + case 'k': return UC_CATEGORY_MASK_Sk; + case 'o': return UC_CATEGORY_MASK_So; + } + break; + case 'Z': + switch (category_name[1]) + { + case '\0': return UC_CATEGORY_MASK_Z; + case 's': return UC_CATEGORY_MASK_Zs; + case 'l': return UC_CATEGORY_MASK_Zl; + case 'p': return UC_CATEGORY_MASK_Zp; + } + break; + case 'C': + switch (category_name[1]) + { + case '\0': return UC_CATEGORY_MASK_C; + case 'c': return UC_CATEGORY_MASK_Cc; + case 'f': return UC_CATEGORY_MASK_Cf; + case 's': return UC_CATEGORY_MASK_Cs; + case 'o': return UC_CATEGORY_MASK_Co; + case 'n': return UC_CATEGORY_MASK_Cn; + } + break; + } + /* Invalid category name. */ + abort (); +} + +/* Construction of sparse 3-level tables. */ +#define TABLE category_table +#define ELEMENT uint8_t +#define DEFAULT 29 /* = log2(UC_CATEGORY_MASK_Cn) */ +#define xmalloc malloc +#define xrealloc realloc +#include "3level.h" + +/* Output the per-character category table. */ +static void +output_category (const char *filename, const char *version) +{ + FILE *stream; + unsigned int ch, i; + struct category_table t; + unsigned int level1_offset, level2_offset, level3_offset; + uint16_t *level3_packed; + + stream = fopen (filename, "w"); + if (stream == NULL) + { + fprintf (stderr, "cannot open '%s' for writing\n", filename); + exit (1); + } + + fprintf (stream, "/* DO NOT EDIT! GENERATED AUTOMATICALLY! */\n"); + fprintf (stream, "/* Categories of Unicode characters. */\n"); + fprintf (stream, "/* Generated automatically by gen-ctype.c for Unicode %s. */\n", + version); + + t.p = 7; + t.q = 9; + category_table_init (&t); + + for (ch = 0; ch < 0x110000; ch++) + { + int value; + unsigned int log2_value; + + if (is_category_Cs (ch)) + value = UC_CATEGORY_MASK_Cs; + else if (unicode_attributes[ch].name != NULL) + value = general_category_byname (unicode_attributes[ch].category); + else + continue; + + /* Now value should contain exactly one bit. */ + if (value == 0 || ((value & (value - 1)) != 0)) + abort (); + + for (log2_value = 0; value > 1; value >>= 1, log2_value++); + + category_table_add (&t, ch, log2_value); + } + + category_table_finalize (&t); + + /* Offsets in t.result, in memory of this process. */ + level1_offset = + 5 * sizeof (uint32_t); + level2_offset = + 5 * sizeof (uint32_t) + + t.level1_size * sizeof (uint32_t); + level3_offset = + 5 * sizeof (uint32_t) + + t.level1_size * sizeof (uint32_t) + + (t.level2_size << t.q) * sizeof (uint32_t); + + for (i = 0; i < 5; i++) + fprintf (stream, "#define category_header_%d %d\n", i, + ((uint32_t *) t.result)[i]); + fprintf (stream, "static const\n"); + fprintf (stream, "struct\n"); + fprintf (stream, " {\n"); + fprintf (stream, " int level1[%d];\n", t.level1_size); + fprintf (stream, " short level2[%d << %d];\n", t.level2_size, t.q); + fprintf (stream, " unsigned short level3[%d * %d + 1];\n", t.level3_size, + (1 << t.p) * 5 / 16); + fprintf (stream, " }\n"); + fprintf (stream, "u_category =\n"); + fprintf (stream, "{\n"); + fprintf (stream, " {"); + if (t.level1_size > 8) + fprintf (stream, "\n "); + for (i = 0; i < t.level1_size; i++) + { + uint32_t offset; + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + offset = ((uint32_t *) (t.result + level1_offset))[i]; + if (offset == 0) + fprintf (stream, " %5d", -1); + else + fprintf (stream, " %5d", + (offset - level2_offset) / sizeof (uint32_t)); + if (i+1 < t.level1_size) + fprintf (stream, ","); + } + if (t.level1_size > 8) + fprintf (stream, "\n "); + fprintf (stream, " },\n"); + fprintf (stream, " {"); + if (t.level2_size << t.q > 8) + fprintf (stream, "\n "); + for (i = 0; i < t.level2_size << t.q; i++) + { + uint32_t offset; + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + offset = ((uint32_t *) (t.result + level2_offset))[i]; + if (offset == 0) + fprintf (stream, " %5d", -1); + else + fprintf (stream, " %5d", + (offset - level3_offset) / sizeof (uint8_t)); + if (i+1 < t.level2_size << t.q) + fprintf (stream, ","); + } + if (t.level2_size << t.q > 8) + fprintf (stream, "\n "); + fprintf (stream, " },\n"); + /* Pack the level3 array. Each entry needs 5 bits only. Use 16-bit units, + not 32-bit units, in order to make the lookup function easier. */ + level3_packed = + (uint16_t *) + calloc ((t.level3_size << t.p) * 5 / 16 + 1, sizeof (uint16_t)); + for (i = 0; i < t.level3_size << t.p; i++) + { + unsigned int j = (i * 5) / 16; + unsigned int k = (i * 5) % 16; + uint32_t value = ((unsigned char *) (t.result + level3_offset))[i]; + value = level3_packed[j] | (level3_packed[j+1] << 16) | (value << k); + level3_packed[j] = value & 0xffff; + level3_packed[j+1] = value >> 16; + } + fprintf (stream, " {"); + if ((t.level3_size << t.p) * 5 / 16 + 1 > 8) + fprintf (stream, "\n "); + for (i = 0; i < (t.level3_size << t.p) * 5 / 16 + 1; i++) + { + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + fprintf (stream, " 0x%04x", level3_packed[i]); + if (i+1 < (t.level3_size << t.p) * 5 / 16 + 1) + fprintf (stream, ","); + } + if ((t.level3_size << t.p) * 5 / 16 + 1 > 8) + fprintf (stream, "\n "); + fprintf (stream, " }\n"); + free (level3_packed); + fprintf (stream, "};\n"); + + if (ferror (stream) || fclose (stream)) + { + fprintf (stderr, "error writing to '%s'\n", filename); + exit (1); + } +} + +/* ========================================================================= */ + +/* Canonical combining class. */ +/* See Unicode 3.0 book, section 4.2, + UCD.html. */ + +/* Construction of sparse 3-level tables. */ +#define TABLE combclass_table +#define ELEMENT uint8_t +#define DEFAULT 0 +#define xmalloc malloc +#define xrealloc realloc +#include "3level.h" + +/* Output the per-character combining class table. */ +static void +output_combclass (const char *filename, const char *version) +{ + FILE *stream; + unsigned int ch, i; + struct combclass_table t; + unsigned int level1_offset, level2_offset, level3_offset; + + stream = fopen (filename, "w"); + if (stream == NULL) + { + fprintf (stderr, "cannot open '%s' for writing\n", filename); + exit (1); + } + + fprintf (stream, "/* DO NOT EDIT! GENERATED AUTOMATICALLY! */\n"); + fprintf (stream, "/* Combining class of Unicode characters. */\n"); + fprintf (stream, "/* Generated automatically by gen-ctype.c for Unicode %s. */\n", + version); + + t.p = 7; + t.q = 9; + combclass_table_init (&t); + + for (ch = 0; ch < 0x110000; ch++) + if (unicode_attributes[ch].name != NULL) + { + int value = atoi (unicode_attributes[ch].combining); + if (!(value >= 0 && value <= 255)) + abort (); + combclass_table_add (&t, ch, value); + } + + combclass_table_finalize (&t); + + /* Offsets in t.result, in memory of this process. */ + level1_offset = + 5 * sizeof (uint32_t); + level2_offset = + 5 * sizeof (uint32_t) + + t.level1_size * sizeof (uint32_t); + level3_offset = + 5 * sizeof (uint32_t) + + t.level1_size * sizeof (uint32_t) + + (t.level2_size << t.q) * sizeof (uint32_t); + + for (i = 0; i < 5; i++) + fprintf (stream, "#define combclass_header_%d %d\n", i, + ((uint32_t *) t.result)[i]); + fprintf (stream, "static const\n"); + fprintf (stream, "struct\n"); + fprintf (stream, " {\n"); + fprintf (stream, " int level1[%d];\n", t.level1_size); + fprintf (stream, " short level2[%d << %d];\n", t.level2_size, t.q); + fprintf (stream, " unsigned char level3[%d << %d];\n", t.level3_size, t.p); + fprintf (stream, " }\n"); + fprintf (stream, "u_combclass =\n"); + fprintf (stream, "{\n"); + fprintf (stream, " {"); + if (t.level1_size > 8) + fprintf (stream, "\n "); + for (i = 0; i < t.level1_size; i++) + { + uint32_t offset; + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + offset = ((uint32_t *) (t.result + level1_offset))[i]; + if (offset == 0) + fprintf (stream, " %5d", -1); + else + fprintf (stream, " %5d", + (offset - level2_offset) / sizeof (uint32_t)); + if (i+1 < t.level1_size) + fprintf (stream, ","); + } + if (t.level1_size > 8) + fprintf (stream, "\n "); + fprintf (stream, " },\n"); + fprintf (stream, " {"); + if (t.level2_size << t.q > 8) + fprintf (stream, "\n "); + for (i = 0; i < t.level2_size << t.q; i++) + { + uint32_t offset; + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + offset = ((uint32_t *) (t.result + level2_offset))[i]; + if (offset == 0) + fprintf (stream, " %5d", -1); + else + fprintf (stream, " %5d", + (offset - level3_offset) / sizeof (uint8_t)); + if (i+1 < t.level2_size << t.q) + fprintf (stream, ","); + } + if (t.level2_size << t.q > 8) + fprintf (stream, "\n "); + fprintf (stream, " },\n"); + fprintf (stream, " {"); + if (t.level3_size << t.p > 8) + fprintf (stream, "\n "); + for (i = 0; i < t.level3_size << t.p; i++) + { + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + fprintf (stream, " %3d", ((uint8_t *) (t.result + level3_offset))[i]); + if (i+1 < t.level3_size << t.p) + fprintf (stream, ","); + } + if (t.level3_size << t.p > 8) + fprintf (stream, "\n "); + fprintf (stream, " }\n"); + fprintf (stream, "};\n"); + + if (ferror (stream) || fclose (stream)) + { + fprintf (stderr, "error writing to '%s'\n", filename); + exit (1); + } +} + +/* ========================================================================= */ + +/* Bidirectional category. */ +/* See Unicode 3.0 book, section 4.3, + UCD.html. */ + +enum +{ + UC_BIDI_L, /* Left-to-Right */ + UC_BIDI_LRE, /* Left-to-Right Embedding */ + UC_BIDI_LRO, /* Left-to-Right Override */ + UC_BIDI_R, /* Right-to-Left */ + UC_BIDI_AL, /* Right-to-Left Arabic */ + UC_BIDI_RLE, /* Right-to-Left Embedding */ + UC_BIDI_RLO, /* Right-to-Left Override */ + UC_BIDI_PDF, /* Pop Directional Format */ + UC_BIDI_EN, /* European Number */ + UC_BIDI_ES, /* European Number Separator */ + UC_BIDI_ET, /* European Number Terminator */ + UC_BIDI_AN, /* Arabic Number */ + UC_BIDI_CS, /* Common Number Separator */ + UC_BIDI_NSM, /* Non-Spacing Mark */ + UC_BIDI_BN, /* Boundary Neutral */ + UC_BIDI_B, /* Paragraph Separator */ + UC_BIDI_S, /* Segment Separator */ + UC_BIDI_WS, /* Whitespace */ + UC_BIDI_ON /* Other Neutral */ +}; + +static int +bidi_category_byname (const char *category_name) +{ + switch (category_name[0]) + { + case 'A': + switch (category_name[1]) + { + case 'L': + if (category_name[2] == '\0') + return UC_BIDI_AL; + break; + case 'N': + if (category_name[2] == '\0') + return UC_BIDI_AN; + break; + } + break; + case 'B': + switch (category_name[1]) + { + case '\0': + return UC_BIDI_B; + case 'N': + if (category_name[2] == '\0') + return UC_BIDI_BN; + break; + } + break; + case 'C': + switch (category_name[1]) + { + case 'S': + if (category_name[2] == '\0') + return UC_BIDI_CS; + break; + } + break; + case 'E': + switch (category_name[1]) + { + case 'N': + if (category_name[2] == '\0') + return UC_BIDI_EN; + break; + case 'S': + if (category_name[2] == '\0') + return UC_BIDI_ES; + break; + case 'T': + if (category_name[2] == '\0') + return UC_BIDI_ET; + break; + } + break; + case 'L': + switch (category_name[1]) + { + case '\0': + return UC_BIDI_L; + case 'R': + switch (category_name[2]) + { + case 'E': + if (category_name[3] == '\0') + return UC_BIDI_LRE; + break; + case 'O': + if (category_name[3] == '\0') + return UC_BIDI_LRO; + break; + } + break; + } + break; + case 'N': + switch (category_name[1]) + { + case 'S': + switch (category_name[2]) + { + case 'M': + if (category_name[3] == '\0') + return UC_BIDI_NSM; + break; + } + break; + } + break; + case 'O': + switch (category_name[1]) + { + case 'N': + if (category_name[2] == '\0') + return UC_BIDI_ON; + break; + } + break; + case 'P': + switch (category_name[1]) + { + case 'D': + switch (category_name[2]) + { + case 'F': + if (category_name[3] == '\0') + return UC_BIDI_PDF; + break; + } + break; + } + break; + case 'R': + switch (category_name[1]) + { + case '\0': + return UC_BIDI_R; + case 'L': + switch (category_name[2]) + { + case 'E': + if (category_name[3] == '\0') + return UC_BIDI_RLE; + break; + case 'O': + if (category_name[3] == '\0') + return UC_BIDI_RLO; + break; + } + break; + } + break; + case 'S': + if (category_name[1] == '\0') + return UC_BIDI_S; + break; + case 'W': + switch (category_name[1]) + { + case 'S': + if (category_name[2] == '\0') + return UC_BIDI_WS; + break; + } + break; + } + /* Invalid bidi category name. */ + abort (); +} + +static int +get_bidi_category (unsigned int ch) +{ + if (unicode_attributes[ch].name != NULL) + return bidi_category_byname (unicode_attributes[ch].bidi); + else + { + /* The bidi category of unassigned characters depends on the range. + See UTR #9 and DerivedBidiClass.txt. */ + if ((ch >= 0x0590 && ch <= 0x05FF) + || (ch >= 0x07FB && ch <= 0x08FF) + || (ch >= 0xFB37 && ch <= 0xFB45) + || (ch >= 0x10800 && ch <= 0x10FFF)) + return UC_BIDI_R; + else if ((ch >= 0x0600 && ch <= 0x07BF) + || (ch >= 0x2064 && ch <= 0x2069) + || (ch >= 0xFBB2 && ch <= 0xFDCF) + || (ch >= 0xFDFE && ch <= 0xFEFE)) + return UC_BIDI_AL; + else if ((ch >= 0xFDD0 && ch <= 0xFDEF) + || (ch >= 0xFFF0 && ch <= 0xFFFF) + || (ch & 0xFFFF) == 0xFFFE + || (ch & 0xFFFF) == 0xFFFF + || (ch >= 0xE0000 && ch <= 0xE0FFF)) + return UC_BIDI_BN; + else + return UC_BIDI_L; + } +} + +/* Construction of sparse 3-level tables. */ +#define TABLE bidi_category_table +#define ELEMENT uint8_t +#define DEFAULT UC_BIDI_L +#define xmalloc malloc +#define xrealloc realloc +#include "3level.h" + +/* Output the per-character bidi category table. */ +static void +output_bidi_category (const char *filename, const char *version) +{ + FILE *stream; + unsigned int ch, i; + struct bidi_category_table t; + unsigned int level1_offset, level2_offset, level3_offset; + uint16_t *level3_packed; + + stream = fopen (filename, "w"); + if (stream == NULL) + { + fprintf (stderr, "cannot open '%s' for writing\n", filename); + exit (1); + } + + fprintf (stream, "/* DO NOT EDIT! GENERATED AUTOMATICALLY! */\n"); + fprintf (stream, "/* Bidi categories of Unicode characters. */\n"); + fprintf (stream, "/* Generated automatically by gen-ctype.c for Unicode %s. */\n", + version); + + t.p = 7; + t.q = 9; + bidi_category_table_init (&t); + + for (ch = 0; ch < 0x110000; ch++) + { + int value = get_bidi_category (ch); + + bidi_category_table_add (&t, ch, value); + } + + bidi_category_table_finalize (&t); + + /* Offsets in t.result, in memory of this process. */ + level1_offset = + 5 * sizeof (uint32_t); + level2_offset = + 5 * sizeof (uint32_t) + + t.level1_size * sizeof (uint32_t); + level3_offset = + 5 * sizeof (uint32_t) + + t.level1_size * sizeof (uint32_t) + + (t.level2_size << t.q) * sizeof (uint32_t); + + for (i = 0; i < 5; i++) + fprintf (stream, "#define bidi_category_header_%d %d\n", i, + ((uint32_t *) t.result)[i]); + fprintf (stream, "static const\n"); + fprintf (stream, "struct\n"); + fprintf (stream, " {\n"); + fprintf (stream, " int level1[%d];\n", t.level1_size); + fprintf (stream, " short level2[%d << %d];\n", t.level2_size, t.q); + fprintf (stream, " unsigned short level3[%d * %d + 1];\n", t.level3_size, + (1 << t.p) * 5 / 16); + fprintf (stream, " }\n"); + fprintf (stream, "u_bidi_category =\n"); + fprintf (stream, "{\n"); + fprintf (stream, " {"); + if (t.level1_size > 8) + fprintf (stream, "\n "); + for (i = 0; i < t.level1_size; i++) + { + uint32_t offset; + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + offset = ((uint32_t *) (t.result + level1_offset))[i]; + if (offset == 0) + fprintf (stream, " %5d", -1); + else + fprintf (stream, " %5d", + (offset - level2_offset) / sizeof (uint32_t)); + if (i+1 < t.level1_size) + fprintf (stream, ","); + } + if (t.level1_size > 8) + fprintf (stream, "\n "); + fprintf (stream, " },\n"); + fprintf (stream, " {"); + if (t.level2_size << t.q > 8) + fprintf (stream, "\n "); + for (i = 0; i < t.level2_size << t.q; i++) + { + uint32_t offset; + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + offset = ((uint32_t *) (t.result + level2_offset))[i]; + if (offset == 0) + fprintf (stream, " %5d", -1); + else + fprintf (stream, " %5d", + (offset - level3_offset) / sizeof (uint8_t)); + if (i+1 < t.level2_size << t.q) + fprintf (stream, ","); + } + if (t.level2_size << t.q > 8) + fprintf (stream, "\n "); + fprintf (stream, " },\n"); + /* Pack the level3 array. Each entry needs 5 bits only. Use 16-bit units, + not 32-bit units, in order to make the lookup function easier. */ + level3_packed = + (uint16_t *) + calloc ((t.level3_size << t.p) * 5 / 16 + 1, sizeof (uint16_t)); + for (i = 0; i < t.level3_size << t.p; i++) + { + unsigned int j = (i * 5) / 16; + unsigned int k = (i * 5) % 16; + uint32_t value = ((unsigned char *) (t.result + level3_offset))[i]; + value = level3_packed[j] | (level3_packed[j+1] << 16) | (value << k); + level3_packed[j] = value & 0xffff; + level3_packed[j+1] = value >> 16; + } + fprintf (stream, " {"); + if ((t.level3_size << t.p) * 5 / 16 + 1 > 8) + fprintf (stream, "\n "); + for (i = 0; i < (t.level3_size << t.p) * 5 / 16 + 1; i++) + { + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + fprintf (stream, " 0x%04x", level3_packed[i]); + if (i+1 < (t.level3_size << t.p) * 5 / 16 + 1) + fprintf (stream, ","); + } + if ((t.level3_size << t.p) * 5 / 16 + 1 > 8) + fprintf (stream, "\n "); + fprintf (stream, " }\n"); + free (level3_packed); + fprintf (stream, "};\n"); + + if (ferror (stream) || fclose (stream)) + { + fprintf (stderr, "error writing to '%s'\n", filename); + exit (1); + } +} + +/* ========================================================================= */ + +/* Decimal digit value. */ +/* See Unicode 3.0 book, section 4.6. */ + +static int +get_decdigit_value (unsigned int ch) +{ + if (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].decdigit[0] != '\0') + return atoi (unicode_attributes[ch].decdigit); + return -1; +} + +/* Construction of sparse 3-level tables. */ +#define TABLE decdigit_table +#define ELEMENT uint8_t +#define DEFAULT 0 +#define xmalloc malloc +#define xrealloc realloc +#include "3level.h" + +/* Output the unit test for the per-character decimal digit value table. */ +static void +output_decimal_digit_test (const char *filename, const char *version) +{ + FILE *stream; + bool need_comma; + unsigned int ch; + + stream = fopen (filename, "w"); + if (stream == NULL) + { + fprintf (stderr, "cannot open '%s' for writing\n", filename); + exit (1); + } + + fprintf (stream, "/* DO NOT EDIT! GENERATED AUTOMATICALLY! */\n"); + fprintf (stream, "/* Decimal digit values of Unicode characters. */\n"); + fprintf (stream, "/* Generated automatically by gen-ctype.c for Unicode %s. */\n", + version); + + need_comma = false; + for (ch = 0; ch < 0x110000; ch++) + { + int value = get_decdigit_value (ch); + + if (!(value >= -1 && value < 10)) + abort (); + + if (value >= 0) + { + if (need_comma) + fprintf (stream, ",\n"); + fprintf (stream, " { 0x%04X, %d }", ch, value); + need_comma = true; + } + } + if (need_comma) + fprintf (stream, "\n"); + + if (ferror (stream) || fclose (stream)) + { + fprintf (stderr, "error writing to '%s'\n", filename); + exit (1); + } +} + +/* Output the per-character decimal digit value table. */ +static void +output_decimal_digit (const char *filename, const char *version) +{ + FILE *stream; + unsigned int ch, i; + struct decdigit_table t; + unsigned int level1_offset, level2_offset, level3_offset; + + stream = fopen (filename, "w"); + if (stream == NULL) + { + fprintf (stderr, "cannot open '%s' for writing\n", filename); + exit (1); + } + + fprintf (stream, "/* DO NOT EDIT! GENERATED AUTOMATICALLY! */\n"); + fprintf (stream, "/* Decimal digit values of Unicode characters. */\n"); + fprintf (stream, "/* Generated automatically by gen-ctype.c for Unicode %s. */\n", + version); + + t.p = 7; + t.q = 9; + decdigit_table_init (&t); + + for (ch = 0; ch < 0x110000; ch++) + { + int value = 1 + get_decdigit_value (ch); + + if (!(value >= 0 && value <= 10)) + abort (); + + decdigit_table_add (&t, ch, value); + } + + decdigit_table_finalize (&t); + + /* Offsets in t.result, in memory of this process. */ + level1_offset = + 5 * sizeof (uint32_t); + level2_offset = + 5 * sizeof (uint32_t) + + t.level1_size * sizeof (uint32_t); + level3_offset = + 5 * sizeof (uint32_t) + + t.level1_size * sizeof (uint32_t) + + (t.level2_size << t.q) * sizeof (uint32_t); + + for (i = 0; i < 5; i++) + fprintf (stream, "#define decdigit_header_%d %d\n", i, + ((uint32_t *) t.result)[i]); + fprintf (stream, "static const\n"); + fprintf (stream, "struct\n"); + fprintf (stream, " {\n"); + fprintf (stream, " int level1[%d];\n", t.level1_size); + fprintf (stream, " short level2[%d << %d];\n", t.level2_size, t.q); + fprintf (stream, " unsigned char level3[%d << %d];\n", t.level3_size, + t.p - 1); + fprintf (stream, " }\n"); + fprintf (stream, "u_decdigit =\n"); + fprintf (stream, "{\n"); + fprintf (stream, " {"); + if (t.level1_size > 8) + fprintf (stream, "\n "); + for (i = 0; i < t.level1_size; i++) + { + uint32_t offset; + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + offset = ((uint32_t *) (t.result + level1_offset))[i]; + if (offset == 0) + fprintf (stream, " %5d", -1); + else + fprintf (stream, " %5d", + (offset - level2_offset) / sizeof (uint32_t)); + if (i+1 < t.level1_size) + fprintf (stream, ","); + } + if (t.level1_size > 8) + fprintf (stream, "\n "); + fprintf (stream, " },\n"); + fprintf (stream, " {"); + if (t.level2_size << t.q > 8) + fprintf (stream, "\n "); + for (i = 0; i < t.level2_size << t.q; i++) + { + uint32_t offset; + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + offset = ((uint32_t *) (t.result + level2_offset))[i]; + if (offset == 0) + fprintf (stream, " %5d", -1); + else + fprintf (stream, " %5d", + (offset - level3_offset) / sizeof (uint8_t)); + if (i+1 < t.level2_size << t.q) + fprintf (stream, ","); + } + if (t.level2_size << t.q > 8) + fprintf (stream, "\n "); + fprintf (stream, " },\n"); + /* Pack the level3 array. Each entry needs 4 bits only. */ + fprintf (stream, " {"); + if (t.level3_size << (t.p - 1) > 8) + fprintf (stream, "\n "); + for (i = 0; i < t.level3_size << (t.p - 1); i++) + { + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + fprintf (stream, " 0x%02x", + ((uint8_t *) (t.result + level3_offset))[2*i] + + (((uint8_t *) (t.result + level3_offset))[2*i+1] << 4)); + if (i+1 < t.level3_size << (t.p - 1)) + fprintf (stream, ","); + } + if (t.level3_size << (t.p - 1) > 8) + fprintf (stream, "\n "); + fprintf (stream, " }\n"); + fprintf (stream, "};\n"); + + if (ferror (stream) || fclose (stream)) + { + fprintf (stderr, "error writing to '%s'\n", filename); + exit (1); + } +} + +/* ========================================================================= */ + +/* Digit value. */ +/* See Unicode 3.0 book, section 4.6. */ + +static int +get_digit_value (unsigned int ch) +{ + if (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].digit[0] != '\0') + return atoi (unicode_attributes[ch].digit); + return -1; +} + +/* Output the unit test for the per-character digit value table. */ +static void +output_digit_test (const char *filename, const char *version) +{ + FILE *stream; + bool need_comma; + unsigned int ch; + + stream = fopen (filename, "w"); + if (stream == NULL) + { + fprintf (stderr, "cannot open '%s' for writing\n", filename); + exit (1); + } + + fprintf (stream, "/* DO NOT EDIT! GENERATED AUTOMATICALLY! */\n"); + fprintf (stream, "/* Digit values of Unicode characters. */\n"); + fprintf (stream, "/* Generated automatically by gen-ctype.c for Unicode %s. */\n", + version); + + need_comma = false; + for (ch = 0; ch < 0x110000; ch++) + { + int value = get_digit_value (ch); + + if (!(value >= -1 && value < 10)) + abort (); + + if (value >= 0) + { + if (need_comma) + fprintf (stream, ",\n"); + fprintf (stream, " { 0x%04X, %d }", ch, value); + need_comma = true; + } + } + if (need_comma) + fprintf (stream, "\n"); + + if (ferror (stream) || fclose (stream)) + { + fprintf (stderr, "error writing to '%s'\n", filename); + exit (1); + } +} + +/* Output the per-character digit value table. */ +static void +output_digit (const char *filename, const char *version) +{ + FILE *stream; + unsigned int ch, i; + struct decdigit_table t; + unsigned int level1_offset, level2_offset, level3_offset; + + stream = fopen (filename, "w"); + if (stream == NULL) + { + fprintf (stderr, "cannot open '%s' for writing\n", filename); + exit (1); + } + + fprintf (stream, "/* DO NOT EDIT! GENERATED AUTOMATICALLY! */\n"); + fprintf (stream, "/* Digit values of Unicode characters. */\n"); + fprintf (stream, "/* Generated automatically by gen-ctype.c for Unicode %s. */\n", + version); + + t.p = 7; + t.q = 9; + decdigit_table_init (&t); + + for (ch = 0; ch < 0x110000; ch++) + { + int value = 1 + get_digit_value (ch); + + if (!(value >= 0 && value <= 10)) + abort (); + + decdigit_table_add (&t, ch, value); + } + + decdigit_table_finalize (&t); + + /* Offsets in t.result, in memory of this process. */ + level1_offset = + 5 * sizeof (uint32_t); + level2_offset = + 5 * sizeof (uint32_t) + + t.level1_size * sizeof (uint32_t); + level3_offset = + 5 * sizeof (uint32_t) + + t.level1_size * sizeof (uint32_t) + + (t.level2_size << t.q) * sizeof (uint32_t); + + for (i = 0; i < 5; i++) + fprintf (stream, "#define digit_header_%d %d\n", i, + ((uint32_t *) t.result)[i]); + fprintf (stream, "static const\n"); + fprintf (stream, "struct\n"); + fprintf (stream, " {\n"); + fprintf (stream, " int level1[%d];\n", t.level1_size); + fprintf (stream, " short level2[%d << %d];\n", t.level2_size, t.q); + fprintf (stream, " unsigned char level3[%d << %d];\n", t.level3_size, + t.p - 1); + fprintf (stream, " }\n"); + fprintf (stream, "u_digit =\n"); + fprintf (stream, "{\n"); + fprintf (stream, " {"); + if (t.level1_size > 8) + fprintf (stream, "\n "); + for (i = 0; i < t.level1_size; i++) + { + uint32_t offset; + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + offset = ((uint32_t *) (t.result + level1_offset))[i]; + if (offset == 0) + fprintf (stream, " %5d", -1); + else + fprintf (stream, " %5d", + (offset - level2_offset) / sizeof (uint32_t)); + if (i+1 < t.level1_size) + fprintf (stream, ","); + } + if (t.level1_size > 8) + fprintf (stream, "\n "); + fprintf (stream, " },\n"); + fprintf (stream, " {"); + if (t.level2_size << t.q > 8) + fprintf (stream, "\n "); + for (i = 0; i < t.level2_size << t.q; i++) + { + uint32_t offset; + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + offset = ((uint32_t *) (t.result + level2_offset))[i]; + if (offset == 0) + fprintf (stream, " %5d", -1); + else + fprintf (stream, " %5d", + (offset - level3_offset) / sizeof (uint8_t)); + if (i+1 < t.level2_size << t.q) + fprintf (stream, ","); + } + if (t.level2_size << t.q > 8) + fprintf (stream, "\n "); + fprintf (stream, " },\n"); + /* Pack the level3 array. Each entry needs 4 bits only. */ + fprintf (stream, " {"); + if (t.level3_size << (t.p - 1) > 8) + fprintf (stream, "\n "); + for (i = 0; i < t.level3_size << (t.p - 1); i++) + { + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + fprintf (stream, " 0x%02x", + ((uint8_t *) (t.result + level3_offset))[2*i] + + (((uint8_t *) (t.result + level3_offset))[2*i+1] << 4)); + if (i+1 < t.level3_size << (t.p - 1)) + fprintf (stream, ","); + } + if (t.level3_size << (t.p - 1) > 8) + fprintf (stream, "\n "); + fprintf (stream, " }\n"); + fprintf (stream, "};\n"); + + if (ferror (stream) || fclose (stream)) + { + fprintf (stderr, "error writing to '%s'\n", filename); + exit (1); + } +} + +/* ========================================================================= */ + +/* Numeric value. */ +/* See Unicode 3.0 book, section 4.6. */ + +typedef struct { int numerator; int denominator; } uc_fraction_t; + +static uc_fraction_t +get_numeric_value (unsigned int ch) +{ + uc_fraction_t value; + + if (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].numeric[0] != '\0') + { + const char *str = unicode_attributes[ch].numeric; + /* str is of the form "integer" or "integer/posinteger". */ + value.numerator = atoi (str); + if (strchr (str, '/') != NULL) + value.denominator = atoi (strchr (str, '/') + 1); + else + value.denominator = 1; + } + else + { + value.numerator = 0; + value.denominator = 0; + } + return value; +} + +/* Output the unit test for the per-character numeric value table. */ +static void +output_numeric_test (const char *filename, const char *version) +{ + FILE *stream; + bool need_comma; + unsigned int ch; + + stream = fopen (filename, "w"); + if (stream == NULL) + { + fprintf (stderr, "cannot open '%s' for writing\n", filename); + exit (1); + } + + fprintf (stream, "/* DO NOT EDIT! GENERATED AUTOMATICALLY! */\n"); + fprintf (stream, "/* Numeric values of Unicode characters. */\n"); + fprintf (stream, "/* Generated automatically by gen-ctype.c for Unicode %s. */\n", + version); + + need_comma = false; + for (ch = 0; ch < 0x110000; ch++) + { + uc_fraction_t value = get_numeric_value (ch); + + if (value.numerator != 0 || value.denominator != 0) + { + if (need_comma) + fprintf (stream, ",\n"); + fprintf (stream, " { 0x%04X, %d, %d }", + ch, value.numerator, value.denominator); + need_comma = true; + } + } + if (need_comma) + fprintf (stream, "\n"); + + if (ferror (stream) || fclose (stream)) + { + fprintf (stderr, "error writing to '%s'\n", filename); + exit (1); + } +} + +/* Construction of sparse 3-level tables. */ +#define TABLE numeric_table +#define ELEMENT uint8_t +#define DEFAULT 0 +#define xmalloc malloc +#define xrealloc realloc +#include "3level.h" + +/* Output the per-character numeric value table. */ +static void +output_numeric (const char *filename, const char *version) +{ + FILE *stream; + uc_fraction_t fractions[128]; + unsigned int nfractions; + unsigned int ch, i, j; + struct numeric_table t; + unsigned int level1_offset, level2_offset, level3_offset; + uint16_t *level3_packed; + + stream = fopen (filename, "w"); + if (stream == NULL) + { + fprintf (stderr, "cannot open '%s' for writing\n", filename); + exit (1); + } + + fprintf (stream, "/* DO NOT EDIT! GENERATED AUTOMATICALLY! */\n"); + fprintf (stream, "/* Numeric values of Unicode characters. */\n"); + fprintf (stream, "/* Generated automatically by gen-ctype.c for Unicode %s. */\n", + version); + + /* Create table of occurring fractions. */ + nfractions = 0; + for (ch = 0; ch < 0x110000; ch++) + { + uc_fraction_t value = get_numeric_value (ch); + + for (i = 0; i < nfractions; i++) + if (value.numerator == fractions[i].numerator + && value.denominator == fractions[i].denominator) + break; + if (i == nfractions) + { + if (nfractions == 128) + abort (); + for (i = 0; i < nfractions; i++) + if (value.denominator < fractions[i].denominator + || (value.denominator == fractions[i].denominator + && value.numerator < fractions[i].numerator)) + break; + for (j = nfractions; j > i; j--) + fractions[j] = fractions[j - 1]; + fractions[i] = value; + nfractions++; + } + } + + fprintf (stream, "static const uc_fraction_t u_numeric_values[%d] =\n", + nfractions); + fprintf (stream, "{\n"); + for (i = 0; i < nfractions; i++) + { + fprintf (stream, " { %d, %d }", fractions[i].numerator, + fractions[i].denominator); + if (i+1 < nfractions) + fprintf (stream, ","); + fprintf (stream, "\n"); + } + fprintf (stream, "};\n"); + + t.p = 7; + t.q = 9; + numeric_table_init (&t); + + for (ch = 0; ch < 0x110000; ch++) + { + uc_fraction_t value = get_numeric_value (ch); + + for (i = 0; i < nfractions; i++) + if (value.numerator == fractions[i].numerator + && value.denominator == fractions[i].denominator) + break; + if (i == nfractions) + abort (); + + numeric_table_add (&t, ch, i); + } + + numeric_table_finalize (&t); + + /* Offsets in t.result, in memory of this process. */ + level1_offset = + 5 * sizeof (uint32_t); + level2_offset = + 5 * sizeof (uint32_t) + + t.level1_size * sizeof (uint32_t); + level3_offset = + 5 * sizeof (uint32_t) + + t.level1_size * sizeof (uint32_t) + + (t.level2_size << t.q) * sizeof (uint32_t); + + for (i = 0; i < 5; i++) + fprintf (stream, "#define numeric_header_%d %d\n", i, + ((uint32_t *) t.result)[i]); + fprintf (stream, "static const\n"); + fprintf (stream, "struct\n"); + fprintf (stream, " {\n"); + fprintf (stream, " int level1[%d];\n", t.level1_size); + fprintf (stream, " short level2[%d << %d];\n", t.level2_size, t.q); + fprintf (stream, " unsigned short level3[%d * %d + 1];\n", t.level3_size, + (1 << t.p) * 7 / 16); + fprintf (stream, " }\n"); + fprintf (stream, "u_numeric =\n"); + fprintf (stream, "{\n"); + fprintf (stream, " {"); + if (t.level1_size > 8) + fprintf (stream, "\n "); + for (i = 0; i < t.level1_size; i++) + { + uint32_t offset; + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + offset = ((uint32_t *) (t.result + level1_offset))[i]; + if (offset == 0) + fprintf (stream, " %5d", -1); + else + fprintf (stream, " %5d", + (offset - level2_offset) / sizeof (uint32_t)); + if (i+1 < t.level1_size) + fprintf (stream, ","); + } + if (t.level1_size > 8) + fprintf (stream, "\n "); + fprintf (stream, " },\n"); + fprintf (stream, " {"); + if (t.level2_size << t.q > 8) + fprintf (stream, "\n "); + for (i = 0; i < t.level2_size << t.q; i++) + { + uint32_t offset; + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + offset = ((uint32_t *) (t.result + level2_offset))[i]; + if (offset == 0) + fprintf (stream, " %5d", -1); + else + fprintf (stream, " %5d", + (offset - level3_offset) / sizeof (uint8_t)); + if (i+1 < t.level2_size << t.q) + fprintf (stream, ","); + } + if (t.level2_size << t.q > 8) + fprintf (stream, "\n "); + fprintf (stream, " },\n"); + /* Pack the level3 array. Each entry needs 7 bits only. Use 16-bit units, + not 32-bit units, in order to make the lookup function easier. */ + level3_packed = + (uint16_t *) + calloc ((t.level3_size << t.p) * 7 / 16 + 1, sizeof (uint16_t)); + for (i = 0; i < t.level3_size << t.p; i++) + { + unsigned int j = (i * 7) / 16; + unsigned int k = (i * 7) % 16; + uint32_t value = ((unsigned char *) (t.result + level3_offset))[i]; + value = level3_packed[j] | (level3_packed[j+1] << 16) | (value << k); + level3_packed[j] = value & 0xffff; + level3_packed[j+1] = value >> 16; + } + fprintf (stream, " {"); + if ((t.level3_size << t.p) * 7 / 16 + 1 > 8) + fprintf (stream, "\n "); + for (i = 0; i < (t.level3_size << t.p) * 7 / 16 + 1; i++) + { + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + fprintf (stream, " 0x%04x", level3_packed[i]); + if (i+1 < (t.level3_size << t.p) * 7 / 16 + 1) + fprintf (stream, ","); + } + if ((t.level3_size << t.p) * 7 / 16 + 1 > 8) + fprintf (stream, "\n "); + fprintf (stream, " }\n"); + free (level3_packed); + fprintf (stream, "};\n"); + + if (ferror (stream) || fclose (stream)) + { + fprintf (stderr, "error writing to '%s'\n", filename); + exit (1); + } +} + +/* ========================================================================= */ + +/* Mirrored. */ +/* See Unicode 3.0 book, section 4.7, + UAX #9. */ + +/* List of mirrored character pairs. This is a subset of the characters + having the BidiMirrored property. */ +static unsigned int mirror_pairs[][2] = +{ + { 0x0028, 0x0029 }, + { 0x003C, 0x003E }, + { 0x005B, 0x005D }, + { 0x007B, 0x007D }, + { 0x00AB, 0x00BB }, + { 0x2039, 0x203A }, + { 0x2045, 0x2046 }, + { 0x207D, 0x207E }, + { 0x208D, 0x208E }, + { 0x2208, 0x220B }, + { 0x220A, 0x220D }, + { 0x223C, 0x223D }, + { 0x2243, 0x22CD }, + { 0x2252, 0x2253 }, + { 0x2254, 0x2255 }, + { 0x2264, 0x2265 }, + { 0x2266, 0x2267 }, + { 0x226A, 0x226B }, + { 0x2276, 0x2277 }, + { 0x2278, 0x2279 }, + { 0x227A, 0x227B }, + { 0x227C, 0x227D }, + { 0x2282, 0x2283 }, + { 0x2286, 0x2287 }, + { 0x228F, 0x2290 }, + { 0x2291, 0x2292 }, + { 0x22A2, 0x22A3 }, + { 0x22B0, 0x22B1 }, + { 0x22B2, 0x22B3 }, + { 0x22B4, 0x22B5 }, + { 0x22B6, 0x22B7 }, + { 0x22C9, 0x22CA }, + { 0x22CB, 0x22CC }, + { 0x22D0, 0x22D1 }, + { 0x22D6, 0x22D7 }, + { 0x22D8, 0x22D9 }, + { 0x22DA, 0x22DB }, + { 0x22DC, 0x22DD }, + { 0x22DE, 0x22DF }, + { 0x22F0, 0x22F1 }, + { 0x2308, 0x2309 }, + { 0x230A, 0x230B }, + { 0x2329, 0x232A }, + { 0x3008, 0x3009 }, + { 0x300A, 0x300B }, + { 0x300C, 0x300D }, + { 0x300E, 0x300F }, + { 0x3010, 0x3011 }, + { 0x3014, 0x3015 }, + { 0x3016, 0x3017 }, + { 0x3018, 0x3019 }, + { 0x301A, 0x301B } +}; + +static int +get_mirror_value (unsigned int ch) +{ + bool mirrored; + unsigned int mirror_char; + unsigned int i; + + mirrored = (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].mirrored); + mirror_char = 0xfffd; + for (i = 0; i < sizeof (mirror_pairs) / sizeof (mirror_pairs[0]); i++) + if (ch == mirror_pairs[i][0]) + { + mirror_char = mirror_pairs[i][1]; + break; + } + else if (ch == mirror_pairs[i][1]) + { + mirror_char = mirror_pairs[i][0]; + break; + } + if (mirrored) + return (int) mirror_char - (int) ch; + else + { + if (mirror_char != 0xfffd) + abort (); + return 0; + } +} + +/* Construction of sparse 3-level tables. */ +#define TABLE mirror_table +#define ELEMENT int32_t +#define DEFAULT 0 +#define xmalloc malloc +#define xrealloc realloc +#include "3level.h" + +/* Output the per-character mirror table. */ +static void +output_mirror (const char *filename, const char *version) +{ + FILE *stream; + unsigned int ch, i; + struct mirror_table t; + unsigned int level1_offset, level2_offset, level3_offset; + + stream = fopen (filename, "w"); + if (stream == NULL) + { + fprintf (stderr, "cannot open '%s' for writing\n", filename); + exit (1); + } + + fprintf (stream, "/* DO NOT EDIT! GENERATED AUTOMATICALLY! */\n"); + fprintf (stream, "/* Mirrored Unicode characters. */\n"); + fprintf (stream, "/* Generated automatically by gen-ctype.c for Unicode %s. */\n", + version); + + t.p = 7; + t.q = 9; + mirror_table_init (&t); + + for (ch = 0; ch < 0x110000; ch++) + { + int value = get_mirror_value (ch); + + mirror_table_add (&t, ch, value); + } + + mirror_table_finalize (&t); + + /* Offsets in t.result, in memory of this process. */ + level1_offset = + 5 * sizeof (uint32_t); + level2_offset = + 5 * sizeof (uint32_t) + + t.level1_size * sizeof (uint32_t); + level3_offset = + 5 * sizeof (uint32_t) + + t.level1_size * sizeof (uint32_t) + + (t.level2_size << t.q) * sizeof (uint32_t); + + for (i = 0; i < 5; i++) + fprintf (stream, "#define mirror_header_%d %d\n", i, + ((uint32_t *) t.result)[i]); + fprintf (stream, "static const\n"); + fprintf (stream, "struct\n"); + fprintf (stream, " {\n"); + fprintf (stream, " int level1[%d];\n", t.level1_size); + fprintf (stream, " short level2[%d << %d];\n", t.level2_size, t.q); + fprintf (stream, " int level3[%d << %d];\n", t.level3_size, t.p); + fprintf (stream, " }\n"); + fprintf (stream, "u_mirror =\n"); + fprintf (stream, "{\n"); + fprintf (stream, " {"); + if (t.level1_size > 8) + fprintf (stream, "\n "); + for (i = 0; i < t.level1_size; i++) + { + uint32_t offset; + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + offset = ((uint32_t *) (t.result + level1_offset))[i]; + if (offset == 0) + fprintf (stream, " %5d", -1); + else + fprintf (stream, " %5d", + (offset - level2_offset) / sizeof (uint32_t)); + if (i+1 < t.level1_size) + fprintf (stream, ","); + } + if (t.level1_size > 8) + fprintf (stream, "\n "); + fprintf (stream, " },\n"); + fprintf (stream, " {"); + if (t.level2_size << t.q > 8) + fprintf (stream, "\n "); + for (i = 0; i < t.level2_size << t.q; i++) + { + uint32_t offset; + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + offset = ((uint32_t *) (t.result + level2_offset))[i]; + if (offset == 0) + fprintf (stream, " %5d", -1); + else + fprintf (stream, " %5d", + (offset - level3_offset) / sizeof (int32_t)); + if (i+1 < t.level2_size << t.q) + fprintf (stream, ","); + } + if (t.level2_size << t.q > 8) + fprintf (stream, "\n "); + fprintf (stream, " },\n"); + fprintf (stream, " {"); + if (t.level3_size << t.p > 8) + fprintf (stream, "\n "); + for (i = 0; i < t.level3_size << t.p; i++) + { + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + fprintf (stream, " %5d", ((int32_t *) (t.result + level3_offset))[i]); + if (i+1 < t.level3_size << t.p) + fprintf (stream, ","); + } + if (t.level3_size << t.p > 8) + fprintf (stream, "\n "); + fprintf (stream, " }\n"); + fprintf (stream, "};\n"); + + if (ferror (stream) || fclose (stream)) + { + fprintf (stderr, "error writing to '%s'\n", filename); + exit (1); + } +} + +/* ========================================================================= */ + +/* Properties. */ + +/* Reading PropList.txt and DerivedCoreProperties.txt. */ +enum +{ + /* PropList.txt */ + PROP_WHITE_SPACE, + PROP_BIDI_CONTROL, + PROP_JOIN_CONTROL, + PROP_DASH, + PROP_HYPHEN, + PROP_QUOTATION_MARK, + PROP_TERMINAL_PUNCTUATION, + PROP_OTHER_MATH, + PROP_HEX_DIGIT, + PROP_ASCII_HEX_DIGIT, + PROP_OTHER_ALPHABETIC, + PROP_IDEOGRAPHIC, + PROP_DIACRITIC, + PROP_EXTENDER, + PROP_OTHER_LOWERCASE, + PROP_OTHER_UPPERCASE, + PROP_NONCHARACTER_CODE_POINT, + PROP_OTHER_GRAPHEME_EXTEND, + PROP_IDS_BINARY_OPERATOR, + PROP_IDS_TRINARY_OPERATOR, + PROP_RADICAL, + PROP_UNIFIED_IDEOGRAPH, + PROP_OTHER_DEFAULT_IGNORABLE_CODE_POINT, + PROP_DEPRECATED, + PROP_SOFT_DOTTED, + PROP_LOGICAL_ORDER_EXCEPTION, + PROP_OTHER_ID_START, + PROP_OTHER_ID_CONTINUE, + PROP_STERM, + PROP_VARIATION_SELECTOR, + PROP_PATTERN_WHITE_SPACE, + PROP_PATTERN_SYNTAX, + /* DerivedCoreProperties.txt */ + PROP_MATH, + PROP_ALPHABETIC, + PROP_LOWERCASE, + PROP_UPPERCASE, + PROP_ID_START, + PROP_ID_CONTINUE, + PROP_XID_START, + PROP_XID_CONTINUE, + PROP_DEFAULT_IGNORABLE_CODE_POINT, + PROP_GRAPHEME_EXTEND, + PROP_GRAPHEME_BASE, + PROP_GRAPHEME_LINK +}; +unsigned long long unicode_properties[0x110000]; + +static void +clear_properties (void) +{ + unsigned int i; + + for (i = 0; i < 0x110000; i++) + unicode_properties[i] = 0; +} + +/* Stores in unicode_properties[] the properties from the + PropList.txt or DerivedCoreProperties.txt file. */ +static void +fill_properties (const char *proplist_filename) +{ + unsigned int i; + FILE *stream; + + stream = fopen (proplist_filename, "r"); + if (stream == NULL) + { + fprintf (stderr, "error during fopen of '%s'\n", proplist_filename); + exit (1); + } + + for (;;) + { + char buf[200+1]; + unsigned int i1, i2; + char padding[200+1]; + char propname[200+1]; + unsigned int propvalue; + + if (fscanf (stream, "%200[^\n]\n", buf) < 1) + break; + + if (buf[0] == '\0' || buf[0] == '#') + continue; + + if (sscanf (buf, "%X..%X%[ ;]%[^ ]", &i1, &i2, padding, propname) != 4) + { + if (sscanf (buf, "%X%[ ;]%[^ ]", &i1, padding, propname) != 3) + { + fprintf (stderr, "parse error in '%s'\n", proplist_filename); + exit (1); + } + i2 = i1; + } +#define PROP(name,value) \ + if (strcmp (propname, name) == 0) propvalue = value; else + /* PropList.txt */ + PROP ("White_Space", PROP_WHITE_SPACE) + PROP ("Bidi_Control", PROP_BIDI_CONTROL) + PROP ("Join_Control", PROP_JOIN_CONTROL) + PROP ("Dash", PROP_DASH) + PROP ("Hyphen", PROP_HYPHEN) + PROP ("Quotation_Mark", PROP_QUOTATION_MARK) + PROP ("Terminal_Punctuation", PROP_TERMINAL_PUNCTUATION) + PROP ("Other_Math", PROP_OTHER_MATH) + PROP ("Hex_Digit", PROP_HEX_DIGIT) + PROP ("ASCII_Hex_Digit", PROP_ASCII_HEX_DIGIT) + PROP ("Other_Alphabetic", PROP_OTHER_ALPHABETIC) + PROP ("Ideographic", PROP_IDEOGRAPHIC) + PROP ("Diacritic", PROP_DIACRITIC) + PROP ("Extender", PROP_EXTENDER) + PROP ("Other_Lowercase", PROP_OTHER_LOWERCASE) + PROP ("Other_Uppercase", PROP_OTHER_UPPERCASE) + PROP ("Noncharacter_Code_Point", PROP_NONCHARACTER_CODE_POINT) + PROP ("Other_Grapheme_Extend", PROP_OTHER_GRAPHEME_EXTEND) + PROP ("IDS_Binary_Operator", PROP_IDS_BINARY_OPERATOR) + PROP ("IDS_Trinary_Operator", PROP_IDS_TRINARY_OPERATOR) + PROP ("Radical", PROP_RADICAL) + PROP ("Unified_Ideograph", PROP_UNIFIED_IDEOGRAPH) + PROP ("Other_Default_Ignorable_Code_Point", PROP_OTHER_DEFAULT_IGNORABLE_CODE_POINT) + PROP ("Deprecated", PROP_DEPRECATED) + PROP ("Soft_Dotted", PROP_SOFT_DOTTED) + PROP ("Logical_Order_Exception", PROP_LOGICAL_ORDER_EXCEPTION) + PROP ("Other_ID_Start", PROP_OTHER_ID_START) + PROP ("Other_ID_Continue", PROP_OTHER_ID_CONTINUE) + PROP ("STerm", PROP_STERM) + PROP ("Variation_Selector", PROP_VARIATION_SELECTOR) + PROP ("Pattern_White_Space", PROP_PATTERN_WHITE_SPACE) + PROP ("Pattern_Syntax", PROP_PATTERN_SYNTAX) + /* DerivedCoreProperties.txt */ + PROP ("Math", PROP_MATH) + PROP ("Alphabetic", PROP_ALPHABETIC) + PROP ("Lowercase", PROP_LOWERCASE) + PROP ("Uppercase", PROP_UPPERCASE) + PROP ("ID_Start", PROP_ID_START) + PROP ("ID_Continue", PROP_ID_CONTINUE) + PROP ("XID_Start", PROP_XID_START) + PROP ("XID_Continue", PROP_XID_CONTINUE) + PROP ("Default_Ignorable_Code_Point", PROP_DEFAULT_IGNORABLE_CODE_POINT) + PROP ("Grapheme_Extend", PROP_GRAPHEME_EXTEND) + PROP ("Grapheme_Base", PROP_GRAPHEME_BASE) + PROP ("Grapheme_Link", PROP_GRAPHEME_LINK) +#undef PROP + { + fprintf (stderr, "unknown property named '%s' in '%s'\n", propname, + proplist_filename); + exit (1); + } + if (!(i1 <= i2 && i2 < 0x110000)) + abort (); + + for (i = i1; i <= i2; i++) + unicode_properties[i] |= 1ULL << propvalue; + } + + if (ferror (stream) || fclose (stream)) + { + fprintf (stderr, "error reading from '%s'\n", proplist_filename); + exit (1); + } +} + +/* Stores in array the given property from the Unicode 3.0 PropList.txt + file. */ +static void +fill_property30 (char array[0x110000], const char *proplist_filename, const char *property_name) +{ + unsigned int i; + FILE *stream; + char buf[100+1]; + + for (i = 0; i < 0x110000; i++) + array[i] = 0; + + stream = fopen (proplist_filename, "r"); + if (stream == NULL) + { + fprintf (stderr, "error during fopen of '%s'\n", proplist_filename); + exit (1); + } + + /* Search for the "Property dump for: ..." line. */ + do + { + if (fscanf (stream, "%100[^\n]\n", buf) < 1) + { + fprintf (stderr, "no property found in '%s'\n", proplist_filename); + exit (1); + } + } + while (strstr (buf, property_name) == NULL); + + for (;;) + { + unsigned int i1, i2; + + if (fscanf (stream, "%100[^\n]\n", buf) < 1) + break; + if (buf[0] == '*') + break; + if (strlen (buf) >= 10 && buf[4] == '.' && buf[5] == '.') + { + if (sscanf (buf, "%4X..%4X", &i1, &i2) < 2) + { + fprintf (stderr, "parse error in property in '%s'\n", + proplist_filename); + exit (1); + } + } + else if (strlen (buf) >= 4) + { + if (sscanf (buf, "%4X", &i1) < 1) + { + fprintf (stderr, "parse error in property in '%s'\n", + proplist_filename); + exit (1); + } + i2 = i1; + } + else + { + fprintf (stderr, "parse error in property in '%s'\n", + proplist_filename); + exit (1); + } + if (!(i1 <= i2 && i2 < 0x110000)) + abort (); + for (i = i1; i <= i2; i++) + array[i] = 1; + } + if (ferror (stream) || fclose (stream)) + { + fprintf (stderr, "error reading from '%s'\n", proplist_filename); + exit (1); + } +} + +/* Properties from Unicode 3.0 PropList.txt file. */ + +/* The paired punctuation property from the PropList.txt file. */ +char unicode_pairedpunctuation[0x110000]; + +/* The left of pair property from the PropList.txt file. */ +char unicode_leftofpair[0x110000]; + +static void +fill_properties30 (const char *proplist30_filename) +{ + fill_property30 (unicode_pairedpunctuation, proplist30_filename, "(Paired Punctuation)"); + fill_property30 (unicode_leftofpair, proplist30_filename, "(Left of Pair)"); +} + +/* ------------------------------------------------------------------------- */ + +/* See PropList.txt, UCD.html. */ +static bool +is_property_white_space (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_WHITE_SPACE)) != 0); +} + +/* See Unicode 3.0 book, section 4.10, + PropList.txt, UCD.html, + DerivedCoreProperties.txt, UCD.html. */ +static bool +is_property_alphabetic (unsigned int ch) +{ + bool result1 = + is_category_L (ch) + || ((unicode_properties[ch] & (1ULL << PROP_OTHER_ALPHABETIC)) != 0) + /* For some reason, the following are listed as having property + Alphabetic but not as having property Other_Alphabetic. */ + || (ch >= 0x16EE && ch <= 0x16F0) /* RUNIC SYMBOLS */ + || (ch >= 0x2160 && ch <= 0x2182) /* ROMAN NUMERALS */ + || (ch >= 0x24D0 && ch <= 0x24E9) /* CIRCLED LATIN SMALL LETTER */ + || (ch == 0x3007) /* IDEOGRAPHIC NUMBER ZERO */ + || (ch >= 0x3021 && ch <= 0x3029) /* HANGZHOU NUMERAL */ + || (ch >= 0x3038 && ch <= 0x303A) /* HANGZHOU NUMERAL */ + || (ch >= 0x10140 && ch <= 0x10174) /* GREEK ACROPHONICS */ + || (ch == 0x10341) /* GOTHIC LETTER NINETY */ + || (ch == 0x1034A) /* GOTHIC LETTER NINE HUNDRED */ + || (ch >= 0x103D1 && ch <= 0x103D5) /* OLD PERSIAN NUMBERS */ + || (ch >= 0x12400 && ch <= 0x12462); /* CUNEIFORM NUMERIC SIGNS */ + bool result2 = + ((unicode_properties[ch] & (1ULL << PROP_ALPHABETIC)) != 0); + + if (result1 != result2) + abort (); + return result1; +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_other_alphabetic (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_OTHER_ALPHABETIC)) != 0); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_not_a_character (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_NONCHARACTER_CODE_POINT)) != 0); +} + +/* See PropList.txt, UCD.html, + DerivedCoreProperties.txt, UCD.html. */ +static bool +is_property_default_ignorable_code_point (unsigned int ch) +{ + bool result1 = + (is_category_Cf (ch) + && !(ch >= 0xFFF9 && ch <= 0xFFFB)) /* Annotations */ + || ((is_category_Cc (ch) || is_category_Cs (ch)) + && !is_property_white_space (ch)) + || ((unicode_properties[ch] & (1ULL << PROP_OTHER_DEFAULT_IGNORABLE_CODE_POINT)) != 0) + || ((unicode_properties[ch] & (1ULL << PROP_VARIATION_SELECTOR)) != 0) + || is_property_not_a_character (ch); + bool result2 = + ((unicode_properties[ch] & (1ULL << PROP_DEFAULT_IGNORABLE_CODE_POINT)) != 0); + + if (result1 != result2) + abort (); + return result1; +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_other_default_ignorable_code_point (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_OTHER_DEFAULT_IGNORABLE_CODE_POINT)) != 0); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_deprecated (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_DEPRECATED)) != 0); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_logical_order_exception (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_LOGICAL_ORDER_EXCEPTION)) != 0); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_variation_selector (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_VARIATION_SELECTOR)) != 0); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_private_use (unsigned int ch) +{ + /* Determined through "grep 'Private Use,' UnicodeData-3.1.0.txt". */ + return (ch >= 0xE000 && ch <= 0xF8FF) + || (ch >= 0xF0000 && ch <= 0xFFFFD) + || (ch >= 0x100000 && ch <= 0x10FFFD); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_unassigned_code_value (unsigned int ch) +{ + return (is_category_Cn (ch) && !is_property_not_a_character (ch)); +} + +/* See PropList.txt, UCD.html, + DerivedCoreProperties.txt, UCD.html. */ +static bool +is_property_uppercase (unsigned int ch) +{ + bool result1 = + is_category_Lu (ch) + || ((unicode_properties[ch] & (1ULL << PROP_OTHER_UPPERCASE)) != 0); + bool result2 = + ((unicode_properties[ch] & (1ULL << PROP_UPPERCASE)) != 0); + + if (result1 != result2) + abort (); + return result1; +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_other_uppercase (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_OTHER_UPPERCASE)) != 0); +} + +/* See PropList.txt, UCD.html, + DerivedCoreProperties.txt, UCD.html. */ +static bool +is_property_lowercase (unsigned int ch) +{ + bool result1 = + is_category_Ll (ch) + || ((unicode_properties[ch] & (1ULL << PROP_OTHER_LOWERCASE)) != 0); + bool result2 = + ((unicode_properties[ch] & (1ULL << PROP_LOWERCASE)) != 0); + + if (result1 != result2) + abort (); + return result1; +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_other_lowercase (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_OTHER_LOWERCASE)) != 0); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_titlecase (unsigned int ch) +{ + return is_category_Lt (ch); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_soft_dotted (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_SOFT_DOTTED)) != 0); +} + +/* See DerivedCoreProperties.txt, UCD.html. */ +static bool +is_property_id_start (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_ID_START)) != 0); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_other_id_start (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_OTHER_ID_START)) != 0); +} + +/* See DerivedCoreProperties.txt, UCD.html. */ +static bool +is_property_id_continue (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_ID_CONTINUE)) != 0); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_other_id_continue (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_OTHER_ID_CONTINUE)) != 0); +} + +/* See DerivedCoreProperties.txt, UCD.html. */ +static bool +is_property_xid_start (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_XID_START)) != 0); +} + +/* See DerivedCoreProperties.txt, UCD.html. */ +static bool +is_property_xid_continue (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_XID_CONTINUE)) != 0); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_pattern_white_space (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_PATTERN_WHITE_SPACE)) != 0); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_pattern_syntax (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_PATTERN_SYNTAX)) != 0); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_join_control (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_JOIN_CONTROL)) != 0); +} + +/* See DerivedCoreProperties.txt, UCD.html. */ +static bool +is_property_grapheme_base (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_GRAPHEME_BASE)) != 0); +} + +/* See DerivedCoreProperties.txt, UCD.html. */ +static bool +is_property_grapheme_extend (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_GRAPHEME_EXTEND)) != 0); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_other_grapheme_extend (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_OTHER_GRAPHEME_EXTEND)) != 0); +} + +/* See DerivedCoreProperties.txt, UCD.html. */ +static bool +is_property_grapheme_link (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_GRAPHEME_LINK)) != 0); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_bidi_control (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_BIDI_CONTROL)) != 0); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_bidi_left_to_right (unsigned int ch) +{ + return (get_bidi_category (ch) == UC_BIDI_L); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_bidi_hebrew_right_to_left (unsigned int ch) +{ + return (get_bidi_category (ch) == UC_BIDI_R); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_bidi_arabic_right_to_left (unsigned int ch) +{ + return (get_bidi_category (ch) == UC_BIDI_AL); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_bidi_european_digit (unsigned int ch) +{ + return (get_bidi_category (ch) == UC_BIDI_EN); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_bidi_eur_num_separator (unsigned int ch) +{ + return (get_bidi_category (ch) == UC_BIDI_ES); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_bidi_eur_num_terminator (unsigned int ch) +{ + return (get_bidi_category (ch) == UC_BIDI_ET); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_bidi_arabic_digit (unsigned int ch) +{ + return (get_bidi_category (ch) == UC_BIDI_AN); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_bidi_common_separator (unsigned int ch) +{ + return (get_bidi_category (ch) == UC_BIDI_CS); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_bidi_block_separator (unsigned int ch) +{ + return (get_bidi_category (ch) == UC_BIDI_B); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_bidi_segment_separator (unsigned int ch) +{ + return (get_bidi_category (ch) == UC_BIDI_S); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_bidi_whitespace (unsigned int ch) +{ + return (get_bidi_category (ch) == UC_BIDI_WS); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_bidi_non_spacing_mark (unsigned int ch) +{ + return (get_bidi_category (ch) == UC_BIDI_NSM); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_bidi_boundary_neutral (unsigned int ch) +{ + return (get_bidi_category (ch) == UC_BIDI_BN); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_bidi_pdf (unsigned int ch) +{ + return (get_bidi_category (ch) == UC_BIDI_PDF); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_bidi_embedding_or_override (unsigned int ch) +{ + int category = get_bidi_category (ch); + return (category == UC_BIDI_LRE || category == UC_BIDI_LRO + || category == UC_BIDI_RLE || category == UC_BIDI_RLO); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_bidi_other_neutral (unsigned int ch) +{ + return (get_bidi_category (ch) == UC_BIDI_ON); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_hex_digit (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_HEX_DIGIT)) != 0); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_ascii_hex_digit (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_ASCII_HEX_DIGIT)) != 0); +} + +/* See Unicode 3.0 book, section 4.10, + PropList.txt, UCD.html. */ +static bool +is_property_ideographic (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_IDEOGRAPHIC)) != 0); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_unified_ideograph (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_UNIFIED_IDEOGRAPH)) != 0); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_radical (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_RADICAL)) != 0); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_ids_binary_operator (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_IDS_BINARY_OPERATOR)) != 0); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_ids_trinary_operator (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_IDS_TRINARY_OPERATOR)) != 0); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_zero_width (unsigned int ch) +{ + return is_category_Cf (ch) + || (unicode_attributes[ch].name != NULL + && strstr (unicode_attributes[ch].name, "ZERO WIDTH") != NULL); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_space (unsigned int ch) +{ + return is_category_Zs (ch); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_non_break (unsigned int ch) +{ + /* This is exactly the set of characters having line breaking + property GL. */ + return (ch == 0x00A0 /* NO-BREAK SPACE */ + || ch == 0x034F /* COMBINING GRAPHEME JOINER */ + || ch == 0x035C /* COMBINING DOUBLE BREVE BELOW */ + || ch == 0x035D /* COMBINING DOUBLE BREVE */ + || ch == 0x035E /* COMBINING DOUBLE MACRON */ + || ch == 0x035F /* COMBINING DOUBLE MACRON BELOW */ + || ch == 0x0360 /* COMBINING DOUBLE TILDE */ + || ch == 0x0361 /* COMBINING DOUBLE INVERTED BREVE */ + || ch == 0x0362 /* COMBINING DOUBLE RIGHTWARDS ARROW BELOW */ + || ch == 0x0F08 /* TIBETAN MARK SBRUL SHAD */ + || ch == 0x0F0C /* TIBETAN MARK DELIMITER TSHEG BSTAR */ + || ch == 0x0F12 /* TIBETAN MARK RGYA GRAM SHAD */ + || ch == 0x180E /* MONGOLIAN VOWEL SEPARATOR */ + || ch == 0x2007 /* FIGURE SPACE */ + || ch == 0x2011 /* NON-BREAKING HYPHEN */ + || ch == 0x202F /* NARROW NO-BREAK SPACE */); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_iso_control (unsigned int ch) +{ + bool result1 = + (unicode_attributes[ch].name != NULL + && strcmp (unicode_attributes[ch].name, "") == 0); + bool result2 = + is_category_Cc (ch); + + if (result1 != result2) + abort (); + return result1; +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_format_control (unsigned int ch) +{ + return (is_category_Cf (ch) + && get_bidi_category (ch) == UC_BIDI_BN + && !is_property_join_control (ch) + && ch != 0xFEFF); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_dash (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_DASH)) != 0); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_hyphen (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_HYPHEN)) != 0); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_punctuation (unsigned int ch) +{ + return is_category_P (ch); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_line_separator (unsigned int ch) +{ + return is_category_Zl (ch); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_paragraph_separator (unsigned int ch) +{ + return is_category_Zp (ch); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_quotation_mark (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_QUOTATION_MARK)) != 0); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_sentence_terminal (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_STERM)) != 0); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_terminal_punctuation (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_TERMINAL_PUNCTUATION)) != 0); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_currency_symbol (unsigned int ch) +{ + return is_category_Sc (ch); +} + +/* See Unicode 3.0 book, section 4.9, + PropList.txt, UCD.html, + DerivedCoreProperties.txt, UCD.html. */ +static bool +is_property_math (unsigned int ch) +{ + bool result1 = + is_category_Sm (ch) + || ((unicode_properties[ch] & (1ULL << PROP_OTHER_MATH)) != 0); + bool result2 = + ((unicode_properties[ch] & (1ULL << PROP_MATH)) != 0); + + if (result1 != result2) + abort (); + return result1; +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_other_math (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_OTHER_MATH)) != 0); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_paired_punctuation (unsigned int ch) +{ + return unicode_pairedpunctuation[ch]; +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_left_of_pair (unsigned int ch) +{ + return unicode_leftofpair[ch]; +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_combining (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && (strcmp (unicode_attributes[ch].combining, "0") != 0 + || is_category_Mc (ch) + || is_category_Me (ch) + || is_category_Mn (ch))); +} + +#if 0 /* same as is_property_bidi_non_spacing_mark */ +/* See PropList-3.0.1.txt. */ +static bool +is_property_non_spacing (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && get_bidi_category (ch) == UC_BIDI_NSM); +} +#endif + +/* See PropList-3.0.1.txt. */ +static bool +is_property_composite (unsigned int ch) +{ + /* This definition differs from the one in PropList-3.0.1.txt, but is more + logical in some sense. */ + if (ch >= 0xAC00 && ch <= 0xD7A4) /* Hangul Syllables */ + return true; + if (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].decomposition != NULL) + { + /* Test whether the decomposition contains more than one character, + and the first is not a space. */ + const char *decomp = unicode_attributes[ch].decomposition; + if (decomp[0] == '<') + { + decomp = strchr (decomp, '>') + 1; + if (decomp[0] == ' ') + decomp++; + } + return strchr (decomp, ' ') != NULL && strncmp (decomp, "0020 ", 5) != 0; + } + return false; +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_decimal_digit (unsigned int ch) +{ + return is_category_Nd (ch); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_numeric (unsigned int ch) +{ + return ((get_numeric_value (ch)).denominator > 0) + || (ch == 0x09F8) /* BENGALI CURRENCY NUMERATOR ONE LESS THAN THE DENOMINATOR */ + || (ch == 0x2183); /* ROMAN NUMERAL REVERSED ONE HUNDRED */ +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_diacritic (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_DIACRITIC)) != 0); +} + +/* See PropList.txt, UCD.html. */ +static bool +is_property_extender (unsigned int ch) +{ + return ((unicode_properties[ch] & (1ULL << PROP_EXTENDER)) != 0); +} + +/* See PropList-3.0.1.txt. */ +static bool +is_property_ignorable_control (unsigned int ch) +{ + return ((is_category_Cc (ch) && get_bidi_category (ch) == UC_BIDI_BN) + || is_category_Cf (ch)) + && ch != 0x0000; +} + +/* ------------------------------------------------------------------------- */ + +/* Output all properties. */ +static void +output_properties (const char *version) +{ +#define PROPERTY(P) \ + debug_output_predicate ("pr_" #P ".txt", is_property_ ## P); \ + output_predicate_test ("test-pr_" #P ".c", is_property_ ## P, "uc_is_property_" #P " (c)"); \ + output_predicate ("pr_" #P ".h", is_property_ ## P, "u_property_" #P, "Properties", version); + PROPERTY(white_space) + PROPERTY(alphabetic) + PROPERTY(other_alphabetic) + PROPERTY(not_a_character) + PROPERTY(default_ignorable_code_point) + PROPERTY(other_default_ignorable_code_point) + PROPERTY(deprecated) + PROPERTY(logical_order_exception) + PROPERTY(variation_selector) + PROPERTY(private_use) + PROPERTY(unassigned_code_value) + PROPERTY(uppercase) + PROPERTY(other_uppercase) + PROPERTY(lowercase) + PROPERTY(other_lowercase) + PROPERTY(titlecase) + PROPERTY(soft_dotted) + PROPERTY(id_start) + PROPERTY(other_id_start) + PROPERTY(id_continue) + PROPERTY(other_id_continue) + PROPERTY(xid_start) + PROPERTY(xid_continue) + PROPERTY(pattern_white_space) + PROPERTY(pattern_syntax) + PROPERTY(join_control) + PROPERTY(grapheme_base) + PROPERTY(grapheme_extend) + PROPERTY(other_grapheme_extend) + PROPERTY(grapheme_link) + PROPERTY(bidi_control) + PROPERTY(bidi_left_to_right) + PROPERTY(bidi_hebrew_right_to_left) + PROPERTY(bidi_arabic_right_to_left) + PROPERTY(bidi_european_digit) + PROPERTY(bidi_eur_num_separator) + PROPERTY(bidi_eur_num_terminator) + PROPERTY(bidi_arabic_digit) + PROPERTY(bidi_common_separator) + PROPERTY(bidi_block_separator) + PROPERTY(bidi_segment_separator) + PROPERTY(bidi_whitespace) + PROPERTY(bidi_non_spacing_mark) + PROPERTY(bidi_boundary_neutral) + PROPERTY(bidi_pdf) + PROPERTY(bidi_embedding_or_override) + PROPERTY(bidi_other_neutral) + PROPERTY(hex_digit) + PROPERTY(ascii_hex_digit) + PROPERTY(ideographic) + PROPERTY(unified_ideograph) + PROPERTY(radical) + PROPERTY(ids_binary_operator) + PROPERTY(ids_trinary_operator) + PROPERTY(zero_width) + PROPERTY(space) + PROPERTY(non_break) + PROPERTY(iso_control) + PROPERTY(format_control) + PROPERTY(dash) + PROPERTY(hyphen) + PROPERTY(punctuation) + PROPERTY(line_separator) + PROPERTY(paragraph_separator) + PROPERTY(quotation_mark) + PROPERTY(sentence_terminal) + PROPERTY(terminal_punctuation) + PROPERTY(currency_symbol) + PROPERTY(math) + PROPERTY(other_math) + PROPERTY(paired_punctuation) + PROPERTY(left_of_pair) + PROPERTY(combining) + PROPERTY(composite) + PROPERTY(decimal_digit) + PROPERTY(numeric) + PROPERTY(diacritic) + PROPERTY(extender) + PROPERTY(ignorable_control) +#undef PROPERTY +} + +/* ========================================================================= */ + +/* Scripts. */ + +static const char *scripts[256]; +static unsigned int numscripts; + +static uint8_t unicode_scripts[0x110000]; + +static void +fill_scripts (const char *scripts_filename) +{ + FILE *stream; + unsigned int i; + + stream = fopen (scripts_filename, "r"); + if (stream == NULL) + { + fprintf (stderr, "error during fopen of '%s'\n", scripts_filename); + exit (1); + } + + numscripts = 0; + + for (i = 0; i < 0x110000; i++) + unicode_scripts[i] = (uint8_t)~(uint8_t)0; + + for (;;) + { + char buf[200+1]; + unsigned int i1, i2; + char padding[200+1]; + char scriptname[200+1]; + int script; + + if (fscanf (stream, "%200[^\n]\n", buf) < 1) + break; + + if (buf[0] == '\0' || buf[0] == '#') + continue; + + if (sscanf (buf, "%X..%X%[ ;]%[^ ]", &i1, &i2, padding, scriptname) != 4) + { + if (sscanf (buf, "%X%[ ;]%[^ ]", &i1, padding, scriptname) != 3) + { + fprintf (stderr, "parse error in '%s'\n", scripts_filename); + exit (1); + } + i2 = i1; + } + if (i2 < i1) + abort (); + if (i2 >= 0x110000) + abort (); + + for (script = numscripts - 1; script >= 0; script--) + if (strcmp (scripts[script], scriptname) == 0) + break; + if (script < 0) + { + scripts[numscripts] = strdup (scriptname); + script = numscripts; + numscripts++; + if (numscripts == 256) + abort (); + } + + for (i = i1; i <= i2; i++) + { + if (unicode_scripts[i] != (uint8_t)~(uint8_t)0) + fprintf (stderr, "0x%04X belongs to multiple scripts\n", i); + unicode_scripts[i] = script; + } + } + + if (ferror (stream) || fclose (stream)) + { + fprintf (stderr, "error reading from '%s'\n", scripts_filename); + exit (1); + } +} + +/* Construction of sparse 3-level tables. */ +#define TABLE script_table +#define ELEMENT uint8_t +#define DEFAULT (uint8_t)~(uint8_t)0 +#define xmalloc malloc +#define xrealloc realloc +#include "3level.h" + +static void +output_scripts (const char *version) +{ + const char *filename = "scripts.h"; + FILE *stream; + unsigned int ch, s, i; + struct script_table t; + unsigned int level1_offset, level2_offset, level3_offset; + + typedef struct + { + const char *lowercase_name; + } + scriptinfo_t; + scriptinfo_t scriptinfo[256]; + + stream = fopen (filename, "w"); + if (stream == NULL) + { + fprintf (stderr, "cannot open '%s' for writing\n", filename); + exit (1); + } + + fprintf (stream, "/* DO NOT EDIT! GENERATED AUTOMATICALLY! */\n"); + fprintf (stream, "/* Unicode scripts. */\n"); + fprintf (stream, "/* Generated automatically by gen-ctype.c for Unicode %s. */\n", + version); + + for (s = 0; s < numscripts; s++) + { + char *lcp = strdup (scripts[s]); + char *cp; + + for (cp = lcp; *cp != '\0'; cp++) + if (*cp >= 'A' && *cp <= 'Z') + *cp += 'a' - 'A'; + + scriptinfo[s].lowercase_name = lcp; + } + + for (s = 0; s < numscripts; s++) + { + fprintf (stream, "static const uc_interval_t script_%s_intervals[] =\n", + scriptinfo[s].lowercase_name); + fprintf (stream, "{\n"); + i = 0; + for (ch = 0; ch < 0x110000; ch++) + if (unicode_scripts[ch] == s) + { + unsigned int start; + unsigned int end; + + start = ch; + while (ch + 1 < 0x110000 && unicode_scripts[ch + 1] == s) + ch++; + end = ch; + + if (i > 0) + fprintf (stream, ",\n"); + if (start == end) + fprintf (stream, " { 0x%04X, 1, 1 }", start); + else + fprintf (stream, " { 0x%04X, 1, 0 }, { 0x%04X, 0, 1 }", + start, end); + i++; + } + fprintf (stream, "\n"); + fprintf (stream, "};\n"); + } + + fprintf (stream, "static const uc_script_t scripts[%d] =\n", numscripts); + fprintf (stream, "{\n"); + for (s = 0; s < numscripts; s++) + { + fprintf (stream, " {\n"); + fprintf (stream, " sizeof (script_%s_intervals) / sizeof (uc_interval_t),\n", + scriptinfo[s].lowercase_name); + fprintf (stream, " script_%s_intervals,\n", + scriptinfo[s].lowercase_name); + fprintf (stream, " \"%s\"\n", scripts[s]); + fprintf (stream, " }"); + if (s+1 < numscripts) + fprintf (stream, ","); + fprintf (stream, "\n"); + } + fprintf (stream, "};\n"); + + t.p = 7; + t.q = 9; + script_table_init (&t); + + for (ch = 0; ch < 0x110000; ch++) + { + unsigned int s = unicode_scripts[ch]; + if (s != (uint8_t)~(uint8_t)0) + script_table_add (&t, ch, s); + } + + script_table_finalize (&t); + + /* Offsets in t.result, in memory of this process. */ + level1_offset = + 5 * sizeof (uint32_t); + level2_offset = + 5 * sizeof (uint32_t) + + t.level1_size * sizeof (uint32_t); + level3_offset = + 5 * sizeof (uint32_t) + + t.level1_size * sizeof (uint32_t) + + (t.level2_size << t.q) * sizeof (uint32_t); + + for (i = 0; i < 5; i++) + fprintf (stream, "#define script_header_%d %d\n", i, + ((uint32_t *) t.result)[i]); + fprintf (stream, "static const\n"); + fprintf (stream, "struct\n"); + fprintf (stream, " {\n"); + fprintf (stream, " int level1[%d];\n", t.level1_size); + fprintf (stream, " short level2[%d << %d];\n", t.level2_size, t.q); + fprintf (stream, " unsigned char level3[%d << %d];\n", t.level3_size, t.p); + fprintf (stream, " }\n"); + fprintf (stream, "u_script =\n"); + fprintf (stream, "{\n"); + fprintf (stream, " {"); + if (t.level1_size > 8) + fprintf (stream, "\n "); + for (i = 0; i < t.level1_size; i++) + { + uint32_t offset; + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + offset = ((uint32_t *) (t.result + level1_offset))[i]; + if (offset == 0) + fprintf (stream, " %5d", -1); + else + fprintf (stream, " %5d", + (offset - level2_offset) / sizeof (uint32_t)); + if (i+1 < t.level1_size) + fprintf (stream, ","); + } + if (t.level1_size > 8) + fprintf (stream, "\n "); + fprintf (stream, " },\n"); + fprintf (stream, " {"); + if (t.level2_size << t.q > 8) + fprintf (stream, "\n "); + for (i = 0; i < t.level2_size << t.q; i++) + { + uint32_t offset; + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + offset = ((uint32_t *) (t.result + level2_offset))[i]; + if (offset == 0) + fprintf (stream, " %5d", -1); + else + fprintf (stream, " %5d", + (offset - level3_offset) / sizeof (uint8_t)); + if (i+1 < t.level2_size << t.q) + fprintf (stream, ","); + } + if (t.level2_size << t.q > 8) + fprintf (stream, "\n "); + fprintf (stream, " },\n"); + fprintf (stream, " {"); + if (t.level3_size << t.p > 8) + fprintf (stream, "\n "); + for (i = 0; i < t.level3_size << t.p; i++) + { + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + fprintf (stream, " %3d", ((uint8_t *) (t.result + level3_offset))[i]); + if (i+1 < t.level3_size << t.p) + fprintf (stream, ","); + } + if (t.level3_size << t.p > 8) + fprintf (stream, "\n "); + fprintf (stream, " }\n"); + fprintf (stream, "};\n"); + + if (ferror (stream) || fclose (stream)) + { + fprintf (stderr, "error writing to '%s'\n", filename); + exit (1); + } +} + +static void +output_scripts_byname (const char *version) +{ + const char *filename = "scripts_byname.gperf"; + FILE *stream; + unsigned int s; + + stream = fopen (filename, "w"); + if (stream == NULL) + { + fprintf (stderr, "cannot open '%s' for writing\n", filename); + exit (1); + } + + fprintf (stream, "/* DO NOT EDIT! GENERATED AUTOMATICALLY! */\n"); + fprintf (stream, "/* Unicode scripts. */\n"); + fprintf (stream, "/* Generated automatically by gen-ctype.c for Unicode %s. */\n", + version); + fprintf (stream, "struct named_script { const char *name; unsigned int index; };\n"); + fprintf (stream, "%%struct-type\n"); + fprintf (stream, "%%language=ANSI-C\n"); + fprintf (stream, "%%define hash-function-name scripts_hash\n"); + fprintf (stream, "%%define lookup-function-name uc_script_lookup\n"); + fprintf (stream, "%%readonly-tables\n"); + fprintf (stream, "%%global-table\n"); + fprintf (stream, "%%define word-array-name script_names\n"); + fprintf (stream, "%%%%\n"); + for (s = 0; s < numscripts; s++) + fprintf (stream, "%s, %u\n", scripts[s], s); + + if (ferror (stream) || fclose (stream)) + { + fprintf (stderr, "error writing to '%s'\n", filename); + exit (1); + } +} + +/* ========================================================================= */ + +/* Blocks. */ + +typedef struct { unsigned int start; unsigned int end; const char *name; } + block_t; +static block_t blocks[256]; +static unsigned int numblocks; + +static void +fill_blocks (const char *blocks_filename) +{ + FILE *stream; + + stream = fopen (blocks_filename, "r"); + if (stream == NULL) + { + fprintf (stderr, "error during fopen of '%s'\n", blocks_filename); + exit (1); + } + + for (;;) + { + char buf[200+1]; + unsigned int i1, i2; + char padding[200+1]; + char blockname[200+1]; + + if (fscanf (stream, "%200[^\n]\n", buf) < 1) + break; + + if (buf[0] == '\0' || buf[0] == '#') + continue; + + if (sscanf (buf, "%X..%X%[ ;]%[^\r]", &i1, &i2, padding, blockname) != 4) + { + fprintf (stderr, "parse error in '%s'\n", blocks_filename); + exit (1); + } + blocks[numblocks].start = i1; + blocks[numblocks].end = i2; + blocks[numblocks].name = strdup (blockname); + /* It must be sorted. */ + if (numblocks > 0 && !(blocks[numblocks-1].end < blocks[numblocks].start)) + abort (); + numblocks++; + if (numblocks == 256) + abort (); + } + + if (ferror (stream) || fclose (stream)) + { + fprintf (stderr, "error reading from '%s'\n", blocks_filename); + exit (1); + } +} + +/* Return the smallest block index among the blocks for characters >= ch. */ +static unsigned int +block_first_index (unsigned int ch) +{ + /* Binary search. */ + unsigned int lo = 0; + unsigned int hi = numblocks; + /* Invariants: + All blocks[i], i < lo, have blocks[i].end < ch, + all blocks[i], i >= hi, have blocks[i].end >= ch. */ + while (lo < hi) + { + unsigned int mid = (lo + hi) / 2; /* >= lo, < hi */ + if (blocks[mid].end < ch) + lo = mid + 1; + else + hi = mid; + } + return hi; +} + +/* Return the largest block index among the blocks for characters <= ch, + plus 1. */ +static unsigned int +block_last_index (unsigned int ch) +{ + /* Binary search. */ + unsigned int lo = 0; + unsigned int hi = numblocks; + /* Invariants: + All blocks[i], i < lo, have blocks[i].start <= ch, + all blocks[i], i >= hi, have blocks[i].start > ch. */ + while (lo < hi) + { + unsigned int mid = (lo + hi) / 2; /* >= lo, < hi */ + if (blocks[mid].start <= ch) + lo = mid + 1; + else + hi = mid; + } + return hi; +} + +static void +output_blocks (const char *version) +{ + const char *filename = "blocks.h"; + const unsigned int shift = 8; /* bits to shift away for array access */ + const unsigned int threshold = 0x30000; /* cut-off table here to save space */ + FILE *stream; + unsigned int i; + unsigned int i1; + + stream = fopen (filename, "w"); + if (stream == NULL) + { + fprintf (stderr, "cannot open '%s' for writing\n", filename); + exit (1); + } + + fprintf (stream, "/* DO NOT EDIT! GENERATED AUTOMATICALLY! */\n"); + fprintf (stream, "/* Unicode blocks. */\n"); + fprintf (stream, "/* Generated automatically by gen-ctype.c for Unicode %s. */\n", + version); + + fprintf (stream, "static const uc_block_t blocks[] =\n"); + fprintf (stream, "{\n"); + for (i = 0; i < numblocks; i++) + { + fprintf (stream, " { 0x%04X, 0x%04X, \"%s\" }", blocks[i].start, + blocks[i].end, blocks[i].name); + if (i+1 < numblocks) + fprintf (stream, ","); + fprintf (stream, "\n"); + } + fprintf (stream, "};\n"); + fprintf (stream, "#define blocks_level1_shift %d\n", shift); + fprintf (stream, "#define blocks_level1_threshold 0x%04X\n", threshold); + fprintf (stream, "static const uint8_t blocks_level1[%d * 2] =\n", + threshold >> shift); + fprintf (stream, "{\n"); + for (i1 = 0; i1 < (threshold >> shift); i1++) + { + unsigned int first_index = block_first_index (i1 << shift); + unsigned int last_index = block_last_index (((i1 + 1) << shift) - 1); + fprintf (stream, " %3d, %3d", first_index, last_index); + if (i1+1 < (threshold >> shift)) + fprintf (stream, ","); + fprintf (stream, "\n"); + } + fprintf (stream, "};\n"); + fprintf (stream, "#define blocks_upper_first_index %d\n", + block_first_index (threshold)); + fprintf (stream, "#define blocks_upper_last_index %d\n", + block_last_index (0x10FFFF)); + + if (ferror (stream) || fclose (stream)) + { + fprintf (stderr, "error writing to '%s'\n", filename); + exit (1); + } +} + +/* ========================================================================= */ + +/* C and Java syntax. */ + +enum +{ + UC_IDENTIFIER_START, /* valid as first or subsequent character */ + UC_IDENTIFIER_VALID, /* valid as subsequent character only */ + UC_IDENTIFIER_INVALID, /* not valid */ + UC_IDENTIFIER_IGNORABLE /* ignorable (Java only) */ +}; + +/* ISO C 99 section 6.4.(3). */ +static bool +is_c_whitespace (unsigned int ch) +{ + return (ch == ' ' /* space */ + || ch == '\t' /* horizontal tab */ + || ch == '\n' || ch == '\r' /* new-line */ + || ch == '\v' /* vertical tab */ + || ch == '\f'); /* form-feed */ +} + +/* ISO C 99 section 6.4.2.1 and appendix D. */ +static int +c_ident_category (unsigned int ch) +{ + /* Section 6.4.2.1. */ + if (ch >= '0' && ch <= '9') + return UC_IDENTIFIER_VALID; + if ((ch >= 'A' && ch <= 'Z') || (ch >= 'a' && ch <= 'z') || ch == '_') + return UC_IDENTIFIER_START; + /* Appendix D. */ + if (0 + /* Latin */ + || (ch == 0x00AA) + || (ch == 0x00BA) + || (ch >= 0x00C0 && ch <= 0x00D6) + || (ch >= 0x00D8 && ch <= 0x00F6) + || (ch >= 0x00F8 && ch <= 0x01F5) + || (ch >= 0x01FA && ch <= 0x0217) + || (ch >= 0x0250 && ch <= 0x02A8) + || (ch >= 0x1E00 && ch <= 0x1E9B) + || (ch >= 0x1EA0 && ch <= 0x1EF9) + || (ch == 0x207F) + /* Greek */ + || (ch == 0x0386) + || (ch >= 0x0388 && ch <= 0x038A) + || (ch == 0x038C) + || (ch >= 0x038E && ch <= 0x03A1) + || (ch >= 0x03A3 && ch <= 0x03CE) + || (ch >= 0x03D0 && ch <= 0x03D6) + || (ch == 0x03DA) + || (ch == 0x03DC) + || (ch == 0x03DE) + || (ch == 0x03E0) + || (ch >= 0x03E2 && ch <= 0x03F3) + || (ch >= 0x1F00 && ch <= 0x1F15) + || (ch >= 0x1F18 && ch <= 0x1F1D) + || (ch >= 0x1F20 && ch <= 0x1F45) + || (ch >= 0x1F48 && ch <= 0x1F4D) + || (ch >= 0x1F50 && ch <= 0x1F57) + || (ch == 0x1F59) + || (ch == 0x1F5B) + || (ch == 0x1F5D) + || (ch >= 0x1F5F && ch <= 0x1F7D) + || (ch >= 0x1F80 && ch <= 0x1FB4) + || (ch >= 0x1FB6 && ch <= 0x1FBC) + || (ch >= 0x1FC2 && ch <= 0x1FC4) + || (ch >= 0x1FC6 && ch <= 0x1FCC) + || (ch >= 0x1FD0 && ch <= 0x1FD3) + || (ch >= 0x1FD6 && ch <= 0x1FDB) + || (ch >= 0x1FE0 && ch <= 0x1FEC) + || (ch >= 0x1FF2 && ch <= 0x1FF4) + || (ch >= 0x1FF6 && ch <= 0x1FFC) + /* Cyrillic */ + || (ch >= 0x0401 && ch <= 0x040C) + || (ch >= 0x040E && ch <= 0x044F) + || (ch >= 0x0451 && ch <= 0x045C) + || (ch >= 0x045E && ch <= 0x0481) + || (ch >= 0x0490 && ch <= 0x04C4) + || (ch >= 0x04C7 && ch <= 0x04C8) + || (ch >= 0x04CB && ch <= 0x04CC) + || (ch >= 0x04D0 && ch <= 0x04EB) + || (ch >= 0x04EE && ch <= 0x04F5) + || (ch >= 0x04F8 && ch <= 0x04F9) + /* Armenian */ + || (ch >= 0x0531 && ch <= 0x0556) + || (ch >= 0x0561 && ch <= 0x0587) + /* Hebrew */ + || (ch >= 0x05B0 && ch <= 0x05B9) + || (ch >= 0x05BB && ch <= 0x05BD) + || (ch == 0x05BF) + || (ch >= 0x05C1 && ch <= 0x05C2) + || (ch >= 0x05D0 && ch <= 0x05EA) + || (ch >= 0x05F0 && ch <= 0x05F2) + /* Arabic */ + || (ch >= 0x0621 && ch <= 0x063A) + || (ch >= 0x0640 && ch <= 0x0652) + || (ch >= 0x0670 && ch <= 0x06B7) + || (ch >= 0x06BA && ch <= 0x06BE) + || (ch >= 0x06C0 && ch <= 0x06CE) + || (ch >= 0x06D0 && ch <= 0x06DC) + || (ch >= 0x06E5 && ch <= 0x06E8) + || (ch >= 0x06EA && ch <= 0x06ED) + /* Devanagari */ + || (ch >= 0x0901 && ch <= 0x0903) + || (ch >= 0x0905 && ch <= 0x0939) + || (ch >= 0x093E && ch <= 0x094D) + || (ch >= 0x0950 && ch <= 0x0952) + || (ch >= 0x0958 && ch <= 0x0963) + /* Bengali */ + || (ch >= 0x0981 && ch <= 0x0983) + || (ch >= 0x0985 && ch <= 0x098C) + || (ch >= 0x098F && ch <= 0x0990) + || (ch >= 0x0993 && ch <= 0x09A8) + || (ch >= 0x09AA && ch <= 0x09B0) + || (ch == 0x09B2) + || (ch >= 0x09B6 && ch <= 0x09B9) + || (ch >= 0x09BE && ch <= 0x09C4) + || (ch >= 0x09C7 && ch <= 0x09C8) + || (ch >= 0x09CB && ch <= 0x09CD) + || (ch >= 0x09DC && ch <= 0x09DD) + || (ch >= 0x09DF && ch <= 0x09E3) + || (ch >= 0x09F0 && ch <= 0x09F1) + /* Gurmukhi */ + || (ch == 0x0A02) + || (ch >= 0x0A05 && ch <= 0x0A0A) + || (ch >= 0x0A0F && ch <= 0x0A10) + || (ch >= 0x0A13 && ch <= 0x0A28) + || (ch >= 0x0A2A && ch <= 0x0A30) + || (ch >= 0x0A32 && ch <= 0x0A33) + || (ch >= 0x0A35 && ch <= 0x0A36) + || (ch >= 0x0A38 && ch <= 0x0A39) + || (ch >= 0x0A3E && ch <= 0x0A42) + || (ch >= 0x0A47 && ch <= 0x0A48) + || (ch >= 0x0A4B && ch <= 0x0A4D) + || (ch >= 0x0A59 && ch <= 0x0A5C) + || (ch == 0x0A5E) + || (ch == 0x0A74) + /* Gujarati */ + || (ch >= 0x0A81 && ch <= 0x0A83) + || (ch >= 0x0A85 && ch <= 0x0A8B) + || (ch == 0x0A8D) + || (ch >= 0x0A8F && ch <= 0x0A91) + || (ch >= 0x0A93 && ch <= 0x0AA8) + || (ch >= 0x0AAA && ch <= 0x0AB0) + || (ch >= 0x0AB2 && ch <= 0x0AB3) + || (ch >= 0x0AB5 && ch <= 0x0AB9) + || (ch >= 0x0ABD && ch <= 0x0AC5) + || (ch >= 0x0AC7 && ch <= 0x0AC9) + || (ch >= 0x0ACB && ch <= 0x0ACD) + || (ch == 0x0AD0) + || (ch == 0x0AE0) + /* Oriya */ + || (ch >= 0x0B01 && ch <= 0x0B03) + || (ch >= 0x0B05 && ch <= 0x0B0C) + || (ch >= 0x0B0F && ch <= 0x0B10) + || (ch >= 0x0B13 && ch <= 0x0B28) + || (ch >= 0x0B2A && ch <= 0x0B30) + || (ch >= 0x0B32 && ch <= 0x0B33) + || (ch >= 0x0B36 && ch <= 0x0B39) + || (ch >= 0x0B3E && ch <= 0x0B43) + || (ch >= 0x0B47 && ch <= 0x0B48) + || (ch >= 0x0B4B && ch <= 0x0B4D) + || (ch >= 0x0B5C && ch <= 0x0B5D) + || (ch >= 0x0B5F && ch <= 0x0B61) + /* Tamil */ + || (ch >= 0x0B82 && ch <= 0x0B83) + || (ch >= 0x0B85 && ch <= 0x0B8A) + || (ch >= 0x0B8E && ch <= 0x0B90) + || (ch >= 0x0B92 && ch <= 0x0B95) + || (ch >= 0x0B99 && ch <= 0x0B9A) + || (ch == 0x0B9C) + || (ch >= 0x0B9E && ch <= 0x0B9F) + || (ch >= 0x0BA3 && ch <= 0x0BA4) + || (ch >= 0x0BA8 && ch <= 0x0BAA) + || (ch >= 0x0BAE && ch <= 0x0BB5) + || (ch >= 0x0BB7 && ch <= 0x0BB9) + || (ch >= 0x0BBE && ch <= 0x0BC2) + || (ch >= 0x0BC6 && ch <= 0x0BC8) + || (ch >= 0x0BCA && ch <= 0x0BCD) + /* Telugu */ + || (ch >= 0x0C01 && ch <= 0x0C03) + || (ch >= 0x0C05 && ch <= 0x0C0C) + || (ch >= 0x0C0E && ch <= 0x0C10) + || (ch >= 0x0C12 && ch <= 0x0C28) + || (ch >= 0x0C2A && ch <= 0x0C33) + || (ch >= 0x0C35 && ch <= 0x0C39) + || (ch >= 0x0C3E && ch <= 0x0C44) + || (ch >= 0x0C46 && ch <= 0x0C48) + || (ch >= 0x0C4A && ch <= 0x0C4D) + || (ch >= 0x0C60 && ch <= 0x0C61) + /* Kannada */ + || (ch >= 0x0C82 && ch <= 0x0C83) + || (ch >= 0x0C85 && ch <= 0x0C8C) + || (ch >= 0x0C8E && ch <= 0x0C90) + || (ch >= 0x0C92 && ch <= 0x0CA8) + || (ch >= 0x0CAA && ch <= 0x0CB3) + || (ch >= 0x0CB5 && ch <= 0x0CB9) + || (ch >= 0x0CBE && ch <= 0x0CC4) + || (ch >= 0x0CC6 && ch <= 0x0CC8) + || (ch >= 0x0CCA && ch <= 0x0CCD) + || (ch == 0x0CDE) + || (ch >= 0x0CE0 && ch <= 0x0CE1) + /* Malayalam */ + || (ch >= 0x0D02 && ch <= 0x0D03) + || (ch >= 0x0D05 && ch <= 0x0D0C) + || (ch >= 0x0D0E && ch <= 0x0D10) + || (ch >= 0x0D12 && ch <= 0x0D28) + || (ch >= 0x0D2A && ch <= 0x0D39) + || (ch >= 0x0D3E && ch <= 0x0D43) + || (ch >= 0x0D46 && ch <= 0x0D48) + || (ch >= 0x0D4A && ch <= 0x0D4D) + || (ch >= 0x0D60 && ch <= 0x0D61) + /* Thai */ + || (ch >= 0x0E01 && ch <= 0x0E3A) + || (ch >= 0x0E40 && ch <= 0x0E5B) + /* Lao */ + || (ch >= 0x0E81 && ch <= 0x0E82) + || (ch == 0x0E84) + || (ch >= 0x0E87 && ch <= 0x0E88) + || (ch == 0x0E8A) + || (ch == 0x0E8D) + || (ch >= 0x0E94 && ch <= 0x0E97) + || (ch >= 0x0E99 && ch <= 0x0E9F) + || (ch >= 0x0EA1 && ch <= 0x0EA3) + || (ch == 0x0EA5) + || (ch == 0x0EA7) + || (ch >= 0x0EAA && ch <= 0x0EAB) + || (ch >= 0x0EAD && ch <= 0x0EAE) + || (ch >= 0x0EB0 && ch <= 0x0EB9) + || (ch >= 0x0EBB && ch <= 0x0EBD) + || (ch >= 0x0EC0 && ch <= 0x0EC4) + || (ch == 0x0EC6) + || (ch >= 0x0EC8 && ch <= 0x0ECD) + || (ch >= 0x0EDC && ch <= 0x0EDD) + /* Tibetan */ + || (ch == 0x0F00) + || (ch >= 0x0F18 && ch <= 0x0F19) + || (ch == 0x0F35) + || (ch == 0x0F37) + || (ch == 0x0F39) + || (ch >= 0x0F3E && ch <= 0x0F47) + || (ch >= 0x0F49 && ch <= 0x0F69) + || (ch >= 0x0F71 && ch <= 0x0F84) + || (ch >= 0x0F86 && ch <= 0x0F8B) + || (ch >= 0x0F90 && ch <= 0x0F95) + || (ch == 0x0F97) + || (ch >= 0x0F99 && ch <= 0x0FAD) + || (ch >= 0x0FB1 && ch <= 0x0FB7) + || (ch == 0x0FB9) + /* Georgian */ + || (ch >= 0x10A0 && ch <= 0x10C5) + || (ch >= 0x10D0 && ch <= 0x10F6) + /* Hiragana */ + || (ch >= 0x3041 && ch <= 0x3093) + || (ch >= 0x309B && ch <= 0x309C) + /* Katakana */ + || (ch >= 0x30A1 && ch <= 0x30F6) + || (ch >= 0x30FB && ch <= 0x30FC) + /* Bopomofo */ + || (ch >= 0x3105 && ch <= 0x312C) + /* CJK Unified Ideographs */ + || (ch >= 0x4E00 && ch <= 0x9FA5) + /* Hangul */ + || (ch >= 0xAC00 && ch <= 0xD7A3) + /* Digits */ + || (ch >= 0x0660 && ch <= 0x0669) + || (ch >= 0x06F0 && ch <= 0x06F9) + || (ch >= 0x0966 && ch <= 0x096F) + || (ch >= 0x09E6 && ch <= 0x09EF) + || (ch >= 0x0A66 && ch <= 0x0A6F) + || (ch >= 0x0AE6 && ch <= 0x0AEF) + || (ch >= 0x0B66 && ch <= 0x0B6F) + || (ch >= 0x0BE7 && ch <= 0x0BEF) + || (ch >= 0x0C66 && ch <= 0x0C6F) + || (ch >= 0x0CE6 && ch <= 0x0CEF) + || (ch >= 0x0D66 && ch <= 0x0D6F) + || (ch >= 0x0E50 && ch <= 0x0E59) + || (ch >= 0x0ED0 && ch <= 0x0ED9) + || (ch >= 0x0F20 && ch <= 0x0F33) + /* Special characters */ + || (ch == 0x00B5) + || (ch == 0x00B7) + || (ch >= 0x02B0 && ch <= 0x02B8) + || (ch == 0x02BB) + || (ch >= 0x02BD && ch <= 0x02C1) + || (ch >= 0x02D0 && ch <= 0x02D1) + || (ch >= 0x02E0 && ch <= 0x02E4) + || (ch == 0x037A) + || (ch == 0x0559) + || (ch == 0x093D) + || (ch == 0x0B3D) + || (ch == 0x1FBE) + || (ch >= 0x203F && ch <= 0x2040) + || (ch == 0x2102) + || (ch == 0x2107) + || (ch >= 0x210A && ch <= 0x2113) + || (ch == 0x2115) + || (ch >= 0x2118 && ch <= 0x211D) + || (ch == 0x2124) + || (ch == 0x2126) + || (ch == 0x2128) + || (ch >= 0x212A && ch <= 0x2131) + || (ch >= 0x2133 && ch <= 0x2138) + || (ch >= 0x2160 && ch <= 0x2182) + || (ch >= 0x3005 && ch <= 0x3007) + || (ch >= 0x3021 && ch <= 0x3029) + ) + return UC_IDENTIFIER_START; + return UC_IDENTIFIER_INVALID; +} + +/* The Java Language Specification, 3rd edition, §3.6. + http://java.sun.com/docs/books/jls/third_edition/html/lexical.html#95710 */ +static bool +is_java_whitespace (unsigned int ch) +{ + return (ch == ' ' || ch == '\t' || ch == '\f' + || ch == '\n' || ch == '\r'); +} + +/* The Java Language Specification, 3rd edition, §3.8. + http://java.sun.com/docs/books/jls/third_edition/html/lexical.html#40625 + and Character.isJavaIdentifierStart and Character.isJavaIdentifierPart */ +static int +java_ident_category (unsigned int ch) +{ + /* FIXME: Check this against Sun's JDK implementation. */ + if (is_category_L (ch) /* = Character.isLetter(ch) */ + || is_category_Nl (ch) /* = Character.getType(ch)==LETTER_NUMBER */ + || is_category_Sc (ch) /* currency symbol */ + || is_category_Pc (ch) /* connector punctuation */ + ) + return UC_IDENTIFIER_START; + if (is_category_Nd (ch) /* digit */ + || is_category_Mc (ch) /* combining mark */ + || is_category_Mn (ch) /* non-spacing mark */ + ) + return UC_IDENTIFIER_VALID; + if ((ch >= 0x0000 && ch <= 0x0008) + || (ch >= 0x000E && ch <= 0x001B) + || (ch >= 0x007F && ch <= 0x009F) + || is_category_Cf (ch) /* = Character.getType(ch)==FORMAT */ + ) + return UC_IDENTIFIER_IGNORABLE; + return UC_IDENTIFIER_INVALID; +} + +/* Construction of sparse 3-level tables. */ +#define TABLE identsyntax_table +#define ELEMENT uint8_t +#define DEFAULT UC_IDENTIFIER_INVALID +#define xmalloc malloc +#define xrealloc realloc +#include "3level.h" + +/* Output an identifier syntax categorization in a three-level bitmap. */ +static void +output_ident_category (const char *filename, int (*predicate) (unsigned int), const char *name, const char *version) +{ + FILE *stream; + unsigned int ch, i; + struct identsyntax_table t; + unsigned int level1_offset, level2_offset, level3_offset; + + stream = fopen (filename, "w"); + if (stream == NULL) + { + fprintf (stderr, "cannot open '%s' for writing\n", filename); + exit (1); + } + + fprintf (stream, "/* DO NOT EDIT! GENERATED AUTOMATICALLY! */\n"); + fprintf (stream, "/* Language syntax properties of Unicode characters. */\n"); + fprintf (stream, "/* Generated automatically by gen-ctype.c for Unicode %s. */\n", + version); + + t.p = 7; /* or 8 */ + t.q = 5; /* or 4 */ + identsyntax_table_init (&t); + + for (ch = 0; ch < 0x110000; ch++) + { + int syntaxcode = predicate (ch); + if (syntaxcode != UC_IDENTIFIER_INVALID) + identsyntax_table_add (&t, ch, syntaxcode); + } + + identsyntax_table_finalize (&t); + + /* Offsets in t.result, in memory of this process. */ + level1_offset = + 5 * sizeof (uint32_t); + level2_offset = + 5 * sizeof (uint32_t) + + t.level1_size * sizeof (uint32_t); + level3_offset = + 5 * sizeof (uint32_t) + + t.level1_size * sizeof (uint32_t) + + (t.level2_size << t.q) * sizeof (uint32_t); + + for (i = 0; i < 5; i++) + fprintf (stream, "#define identsyntax_header_%d %d\n", i, + ((uint32_t *) t.result)[i]); + fprintf (stream, "static const\n"); + fprintf (stream, "struct\n"); + fprintf (stream, " {\n"); + fprintf (stream, " int level1[%d];\n", t.level1_size); + fprintf (stream, " short level2[%d << %d];\n", t.level2_size, t.q); + fprintf (stream, " unsigned short level3[%d * %d];\n", t.level3_size, + (1 << t.p) * 2 / 16); + fprintf (stream, " }\n"); + fprintf (stream, "%s =\n", name); + fprintf (stream, "{\n"); + fprintf (stream, " {"); + if (t.level1_size > 8) + fprintf (stream, "\n "); + for (i = 0; i < t.level1_size; i++) + { + uint32_t offset; + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + offset = ((uint32_t *) (t.result + level1_offset))[i]; + if (offset == 0) + fprintf (stream, " %5d", -1); + else + fprintf (stream, " %5d", + (offset - level2_offset) / sizeof (uint32_t)); + if (i+1 < t.level1_size) + fprintf (stream, ","); + } + if (t.level1_size > 8) + fprintf (stream, "\n "); + fprintf (stream, " },\n"); + fprintf (stream, " {"); + if (t.level2_size << t.q > 8) + fprintf (stream, "\n "); + for (i = 0; i < t.level2_size << t.q; i++) + { + uint32_t offset; + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + offset = ((uint32_t *) (t.result + level2_offset))[i]; + if (offset == 0) + fprintf (stream, " %5d", -1); + else + fprintf (stream, " %5d", + (offset - level3_offset) / sizeof (uint8_t)); + if (i+1 < t.level2_size << t.q) + fprintf (stream, ","); + } + if (t.level2_size << t.q > 8) + fprintf (stream, "\n "); + fprintf (stream, " },\n"); + /* Pack the level3 array. Each entry needs 2 bits only. */ + fprintf (stream, " {"); + if ((t.level3_size << t.p) * 2 / 16 > 8) + fprintf (stream, "\n "); + for (i = 0; i < (t.level3_size << t.p) * 2 / 16; i++) + { + if (i > 0 && (i % 8) == 0) + fprintf (stream, "\n "); + fprintf (stream, " 0x%04x", + (((uint8_t *) (t.result + level3_offset))[8 * i] << 0) + | (((uint8_t *) (t.result + level3_offset))[8 * i + 1] << 2) + | (((uint8_t *) (t.result + level3_offset))[8 * i + 2] << 4) + | (((uint8_t *) (t.result + level3_offset))[8 * i + 3] << 6) + | (((uint8_t *) (t.result + level3_offset))[8 * i + 4] << 8) + | (((uint8_t *) (t.result + level3_offset))[8 * i + 5] << 10) + | (((uint8_t *) (t.result + level3_offset))[8 * i + 6] << 12) + | (((uint8_t *) (t.result + level3_offset))[8 * i + 7] << 14)); + if (i+1 < (t.level3_size << t.p) * 2 / 16) + fprintf (stream, ","); + } + if ((t.level3_size << t.p) * 2 / 16 > 8) + fprintf (stream, "\n "); + fprintf (stream, " }\n"); + fprintf (stream, "};\n"); + + if (ferror (stream) || fclose (stream)) + { + fprintf (stderr, "error writing to '%s'\n", filename); + exit (1); + } +} + +static void +output_ident_properties (const char *version) +{ +#define PROPERTY(P) \ + debug_output_predicate ("sy_" #P ".txt", is_ ## P); \ + output_predicate_test ("test-sy_" #P ".c", is_ ## P, "uc_is_" #P " (c)"); \ + output_predicate ("sy_" #P ".h", is_ ## P, "u_" #P, "Language syntax properties", version); + PROPERTY(c_whitespace) + PROPERTY(java_whitespace) +#undef PROPERTY + + output_ident_category ("sy_c_ident.h", c_ident_category, "u_c_ident", version); + output_ident_category ("sy_java_ident.h", java_ident_category, "u_java_ident", version); +} + +/* ========================================================================= */ + +/* Like ISO C and . Compatible to glibc's + glibc/localedata/locales/i18n file, generated by + glibc/localedata/gen-unicode-ctype.c. */ + +/* Character mappings. */ + +static unsigned int +to_upper (unsigned int ch) +{ + if (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].upper != NONE) + return unicode_attributes[ch].upper; + else + return ch; +} + +static unsigned int +to_lower (unsigned int ch) +{ + if (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].lower != NONE) + return unicode_attributes[ch].lower; + else + return ch; +} + +static unsigned int +to_title (unsigned int ch) +{ + if (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].title != NONE) + return unicode_attributes[ch].title; + else + return ch; +} + +/* Character class properties. */ + +static bool +is_upper (unsigned int ch) +{ + return (to_lower (ch) != ch); +} + +static bool +is_lower (unsigned int ch) +{ + return (to_upper (ch) != ch) + /* is lowercase, but without simple to_upper mapping. */ + || (ch == 0x00DF); +} + +static bool +is_alpha (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && ((unicode_attributes[ch].category[0] == 'L' + /* Theppitak Karoonboonyanan says + , should belong to is_punct. */ + && (ch != 0x0E2F) && (ch != 0x0E46)) + /* Theppitak Karoonboonyanan says + , .., .. are is_alpha. */ + || (ch == 0x0E31) + || (ch >= 0x0E34 && ch <= 0x0E3A) + || (ch >= 0x0E47 && ch <= 0x0E4E) + /* Avoid warning for . */ + || (ch == 0x0345) + /* Avoid warnings for ... */ + || (unicode_attributes[ch].category[0] == 'N' + && unicode_attributes[ch].category[1] == 'l') + /* Avoid warnings for ... */ + || (unicode_attributes[ch].category[0] == 'S' + && unicode_attributes[ch].category[1] == 'o' + && strstr (unicode_attributes[ch].name, " LETTER ") + != NULL) + /* Consider all the non-ASCII digits as alphabetic. + ISO C 99 forbids us to have them in category "digit", + but we want iswalnum to return true on them. */ + || (unicode_attributes[ch].category[0] == 'N' + && unicode_attributes[ch].category[1] == 'd' + && !(ch >= 0x0030 && ch <= 0x0039)))); +} + +static bool +is_digit (unsigned int ch) +{ +#if 0 + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'N' + && unicode_attributes[ch].category[1] == 'd'); + /* Note: U+0BE7..U+0BEF and U+1369..U+1371 are digit systems without + a zero. Must add <0> in front of them by hand. */ +#else + /* SUSV2 gives us some freedom for the "digit" category, but ISO C 99 + takes it away: + 7.25.2.1.5: + The iswdigit function tests for any wide character that corresponds + to a decimal-digit character (as defined in 5.2.1). + 5.2.1: + the 10 decimal digits 0 1 2 3 4 5 6 7 8 9 + */ + return (ch >= 0x0030 && ch <= 0x0039); +#endif +} + +static bool +is_outdigit (unsigned int ch) +{ + return (ch >= 0x0030 && ch <= 0x0039); +} + +static bool +is_alnum (unsigned int ch) +{ + return is_alpha (ch) || is_digit (ch); +} + +static bool +is_blank (unsigned int ch) +{ + return (ch == 0x0009 /* '\t' */ + /* Category Zs without mention of "" */ + || (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'Z' + && unicode_attributes[ch].category[1] == 's' + && !strstr (unicode_attributes[ch].decomposition, ""))); +} + +static bool +is_space (unsigned int ch) +{ + /* Don't make U+00A0 a space. Non-breaking space means that all programs + should treat it like a punctuation character, not like a space. */ + return (ch == 0x0020 /* ' ' */ + || ch == 0x000C /* '\f' */ + || ch == 0x000A /* '\n' */ + || ch == 0x000D /* '\r' */ + || ch == 0x0009 /* '\t' */ + || ch == 0x000B /* '\v' */ + /* Categories Zl, Zp, and Zs without mention of "" */ + || (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'Z' + && (unicode_attributes[ch].category[1] == 'l' + || unicode_attributes[ch].category[1] == 'p' + || (unicode_attributes[ch].category[1] == 's' + && !strstr (unicode_attributes[ch].decomposition, + ""))))); +} + +static bool +is_cntrl (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && (strcmp (unicode_attributes[ch].name, "") == 0 + /* Categories Zl and Zp */ + || (unicode_attributes[ch].category[0] == 'Z' + && (unicode_attributes[ch].category[1] == 'l' + || unicode_attributes[ch].category[1] == 'p')))); +} + +static bool +is_xdigit (unsigned int ch) +{ +#if 0 + return is_digit (ch) + || (ch >= 0x0041 && ch <= 0x0046) + || (ch >= 0x0061 && ch <= 0x0066); +#else + /* SUSV2 gives us some freedom for the "xdigit" category, but ISO C 99 + takes it away: + 7.25.2.1.12: + The iswxdigit function tests for any wide character that corresponds + to a hexadecimal-digit character (as defined in 6.4.4.1). + 6.4.4.1: + hexadecimal-digit: one of 0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F + */ + return (ch >= 0x0030 && ch <= 0x0039) + || (ch >= 0x0041 && ch <= 0x0046) + || (ch >= 0x0061 && ch <= 0x0066); +#endif +} + +static bool +is_graph (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && strcmp (unicode_attributes[ch].name, "") + && !is_space (ch)); +} + +static bool +is_print (unsigned int ch) +{ + return (unicode_attributes[ch].name != NULL + && strcmp (unicode_attributes[ch].name, "") + /* Categories Zl and Zp */ + && !(unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'Z' + && (unicode_attributes[ch].category[1] == 'l' + || unicode_attributes[ch].category[1] == 'p'))); +} + +static bool +is_punct (unsigned int ch) +{ +#if 0 + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'P'); +#else + /* The traditional POSIX definition of punctuation is every graphic, + non-alphanumeric character. */ + return (is_graph (ch) && !is_alpha (ch) && !is_digit (ch)); +#endif +} + +/* Output all properties. */ +static void +output_old_ctype (const char *version) +{ +#define PROPERTY(P) \ + debug_output_predicate ("ctype_" #P ".txt", is_ ## P); \ + output_predicate_test ("test-ctype_" #P ".c", is_ ## P, "uc_is_" #P " (c)"); \ + output_predicate ("ctype_" #P ".h", is_ ## P, "u_is_" #P, "ISO C like properties", version); + PROPERTY(alnum) + PROPERTY(alpha) + PROPERTY(cntrl) + PROPERTY(digit) + PROPERTY(graph) + PROPERTY(lower) + PROPERTY(print) + PROPERTY(punct) + PROPERTY(space) + PROPERTY(upper) + PROPERTY(xdigit) + PROPERTY(blank) +#undef PROPERTY +} + +#if 0 + +static bool +is_combining (unsigned int ch) +{ + /* Up to Unicode 3.0.1 we took the Combining property from the PropList.txt + file. In 3.0.1 it was identical to the union of the general categories + "Mn", "Mc", "Me". In Unicode 3.1 this property has been dropped from the + PropList.txt file, so we take the latter definition. */ + return (unicode_attributes[ch].name != NULL + && unicode_attributes[ch].category[0] == 'M' + && (unicode_attributes[ch].category[1] == 'n' + || unicode_attributes[ch].category[1] == 'c' + || unicode_attributes[ch].category[1] == 'e')); +} + +static bool +is_combining_level3 (unsigned int ch) +{ + return is_combining (ch) + && !(unicode_attributes[ch].combining[0] != '\0' + && unicode_attributes[ch].combining[0] != '0' + && strtoul (unicode_attributes[ch].combining, NULL, 10) >= 200); +} + +/* Return the UCS symbol string for a Unicode character. */ +static const char * +ucs_symbol (unsigned int i) +{ + static char buf[11+1]; + + sprintf (buf, (i < 0x10000 ? "" : ""), i); + return buf; +} + +/* Return the UCS symbol range string for a Unicode characters interval. */ +static const char * +ucs_symbol_range (unsigned int low, unsigned int high) +{ + static char buf[24+1]; + + strcpy (buf, ucs_symbol (low)); + strcat (buf, ".."); + strcat (buf, ucs_symbol (high)); + return buf; +} + +/* Output a character class (= property) table. */ + +static void +output_charclass (FILE *stream, const char *classname, + bool (*func) (unsigned int)) +{ + char table[0x110000]; + unsigned int i; + bool need_semicolon; + const int max_column = 75; + int column; + + for (i = 0; i < 0x110000; i++) + table[i] = (int) func (i); + + fprintf (stream, "%s ", classname); + need_semicolon = false; + column = 1000; + for (i = 0; i < 0x110000; ) + { + if (!table[i]) + i++; + else + { + unsigned int low, high; + char buf[25]; + + low = i; + do + i++; + while (i < 0x110000 && table[i]); + high = i - 1; + + if (low == high) + strcpy (buf, ucs_symbol (low)); + else + strcpy (buf, ucs_symbol_range (low, high)); + + if (need_semicolon) + { + fprintf (stream, ";"); + column++; + } + + if (column + strlen (buf) > max_column) + { + fprintf (stream, "/\n "); + column = 3; + } + + fprintf (stream, "%s", buf); + column += strlen (buf); + need_semicolon = true; + } + } + fprintf (stream, "\n"); +} + +/* Output a character mapping table. */ + +static void +output_charmap (FILE *stream, const char *mapname, + unsigned int (*func) (unsigned int)) +{ + char table[0x110000]; + unsigned int i; + bool need_semicolon; + const int max_column = 75; + int column; + + for (i = 0; i < 0x110000; i++) + table[i] = (func (i) != i); + + fprintf (stream, "%s ", mapname); + need_semicolon = false; + column = 1000; + for (i = 0; i < 0x110000; i++) + if (table[i]) + { + char buf[25+1]; + + strcpy (buf, "("); + strcat (buf, ucs_symbol (i)); + strcat (buf, ","); + strcat (buf, ucs_symbol (func (i))); + strcat (buf, ")"); + + if (need_semicolon) + { + fprintf (stream, ";"); + column++; + } + + if (column + strlen (buf) > max_column) + { + fprintf (stream, "/\n "); + column = 3; + } + + fprintf (stream, "%s", buf); + column += strlen (buf); + need_semicolon = true; + } + fprintf (stream, "\n"); +} + +/* Output the width table. */ + +static void +output_widthmap (FILE *stream) +{ +} + +/* Output the tables to the given file. */ + +static void +output_tables (const char *filename, const char *version) +{ + FILE *stream; + unsigned int ch; + + stream = fopen (filename, "w"); + if (stream == NULL) + { + fprintf (stderr, "cannot open '%s' for writing\n", filename); + exit (1); + } + + fprintf (stream, "escape_char /\n"); + fprintf (stream, "comment_char %%\n"); + fprintf (stream, "\n"); + fprintf (stream, "%% Generated automatically by gen-unicode-ctype for Unicode %s.\n", + version); + fprintf (stream, "\n"); + + fprintf (stream, "LC_IDENTIFICATION\n"); + fprintf (stream, "title \"Unicode %s FDCC-set\"\n", version); + fprintf (stream, "source \"UnicodeData.txt, PropList.txt\"\n"); + fprintf (stream, "address \"\"\n"); + fprintf (stream, "contact \"\"\n"); + fprintf (stream, "email \"bug-glibc@gnu.org\"\n"); + fprintf (stream, "tel \"\"\n"); + fprintf (stream, "fax \"\"\n"); + fprintf (stream, "language \"\"\n"); + fprintf (stream, "territory \"Earth\"\n"); + fprintf (stream, "revision \"%s\"\n", version); + { + time_t now; + char date[11]; + now = time (NULL); + strftime (date, sizeof (date), "%Y-%m-%d", gmtime (&now)); + fprintf (stream, "date \"%s\"\n", date); + } + fprintf (stream, "category \"unicode:2001\";LC_CTYPE\n"); + fprintf (stream, "END LC_IDENTIFICATION\n"); + fprintf (stream, "\n"); + + /* Verifications. */ + for (ch = 0; ch < 0x110000; ch++) + { + /* toupper restriction: "Only characters specified for the keywords + lower and upper shall be specified. */ + if (to_upper (ch) != ch && !(is_lower (ch) || is_upper (ch))) + fprintf (stderr, + "%s is not upper|lower but toupper(0x%04X) = 0x%04X\n", + ucs_symbol (ch), ch, to_upper (ch)); + + /* tolower restriction: "Only characters specified for the keywords + lower and upper shall be specified. */ + if (to_lower (ch) != ch && !(is_lower (ch) || is_upper (ch))) + fprintf (stderr, + "%s is not upper|lower but tolower(0x%04X) = 0x%04X\n", + ucs_symbol (ch), ch, to_lower (ch)); + + /* alpha restriction: "Characters classified as either upper or lower + shall automatically belong to this class. */ + if ((is_lower (ch) || is_upper (ch)) && !is_alpha (ch)) + fprintf (stderr, "%s is upper|lower but not alpha\n", ucs_symbol (ch)); + + /* alpha restriction: "No character specified for the keywords cntrl, + digit, punct or space shall be specified." */ + if (is_alpha (ch) && is_cntrl (ch)) + fprintf (stderr, "%s is alpha and cntrl\n", ucs_symbol (ch)); + if (is_alpha (ch) && is_digit (ch)) + fprintf (stderr, "%s is alpha and digit\n", ucs_symbol (ch)); + if (is_alpha (ch) && is_punct (ch)) + fprintf (stderr, "%s is alpha and punct\n", ucs_symbol (ch)); + if (is_alpha (ch) && is_space (ch)) + fprintf (stderr, "%s is alpha and space\n", ucs_symbol (ch)); + + /* space restriction: "No character specified for the keywords upper, + lower, alpha, digit, graph or xdigit shall be specified." + upper, lower, alpha already checked above. */ + if (is_space (ch) && is_digit (ch)) + fprintf (stderr, "%s is space and digit\n", ucs_symbol (ch)); + if (is_space (ch) && is_graph (ch)) + fprintf (stderr, "%s is space and graph\n", ucs_symbol (ch)); + if (is_space (ch) && is_xdigit (ch)) + fprintf (stderr, "%s is space and xdigit\n", ucs_symbol (ch)); + + /* cntrl restriction: "No character specified for the keywords upper, + lower, alpha, digit, punct, graph, print or xdigit shall be + specified." upper, lower, alpha already checked above. */ + if (is_cntrl (ch) && is_digit (ch)) + fprintf (stderr, "%s is cntrl and digit\n", ucs_symbol (ch)); + if (is_cntrl (ch) && is_punct (ch)) + fprintf (stderr, "%s is cntrl and punct\n", ucs_symbol (ch)); + if (is_cntrl (ch) && is_graph (ch)) + fprintf (stderr, "%s is cntrl and graph\n", ucs_symbol (ch)); + if (is_cntrl (ch) && is_print (ch)) + fprintf (stderr, "%s is cntrl and print\n", ucs_symbol (ch)); + if (is_cntrl (ch) && is_xdigit (ch)) + fprintf (stderr, "%s is cntrl and xdigit\n", ucs_symbol (ch)); + + /* punct restriction: "No character specified for the keywords upper, + lower, alpha, digit, cntrl, xdigit or as the character shall + be specified." upper, lower, alpha, cntrl already checked above. */ + if (is_punct (ch) && is_digit (ch)) + fprintf (stderr, "%s is punct and digit\n", ucs_symbol (ch)); + if (is_punct (ch) && is_xdigit (ch)) + fprintf (stderr, "%s is punct and xdigit\n", ucs_symbol (ch)); + if (is_punct (ch) && (ch == 0x0020)) + fprintf (stderr, "%s is punct\n", ucs_symbol (ch)); + + /* graph restriction: "No character specified for the keyword cntrl + shall be specified." Already checked above. */ + + /* print restriction: "No character specified for the keyword cntrl + shall be specified." Already checked above. */ + + /* graph - print relation: differ only in the character. + How is this possible if there are more than one space character?! + I think susv2/xbd/locale.html should speak of "space characters", + not "space character". */ + if (is_print (ch) && !(is_graph (ch) || /* ch == 0x0020 */ is_space (ch))) + fprintf (stderr, + "%s is print but not graph|\n", ucs_symbol (ch)); + if (!is_print (ch) && (is_graph (ch) || ch == 0x0020)) + fprintf (stderr, + "%s is graph| but not print\n", ucs_symbol (ch)); + } + + fprintf (stream, "LC_CTYPE\n"); + output_charclass (stream, "upper", is_upper); + output_charclass (stream, "lower", is_lower); + output_charclass (stream, "alpha", is_alpha); + output_charclass (stream, "digit", is_digit); + output_charclass (stream, "outdigit", is_outdigit); + output_charclass (stream, "blank", is_blank); + output_charclass (stream, "space", is_space); + output_charclass (stream, "cntrl", is_cntrl); + output_charclass (stream, "punct", is_punct); + output_charclass (stream, "xdigit", is_xdigit); + output_charclass (stream, "graph", is_graph); + output_charclass (stream, "print", is_print); + output_charclass (stream, "class \"combining\";", is_combining); + output_charclass (stream, "class \"combining_level3\";", is_combining_level3); + output_charmap (stream, "toupper", to_upper); + output_charmap (stream, "tolower", to_lower); + output_charmap (stream, "map \"totitle\";", to_title); + output_widthmap (stream); + fprintf (stream, "END LC_CTYPE\n"); + + if (ferror (stream) || fclose (stream)) + { + fprintf (stderr, "error writing to '%s'\n", filename); + exit (1); + } +} + +#endif + +int +main (int argc, char * argv[]) +{ + const char *unicodedata_filename; + const char *proplist_filename; + const char *derivedproplist_filename; + const char *scripts_filename; + const char *blocks_filename; + const char *proplist30_filename; + const char *version; + + if (argc != 8) + { + fprintf (stderr, "Usage: %s UnicodeData.txt PropList.txt DerivedCoreProperties.txt Scripts.txt Blocks.txt PropList-3.0.1.txt version\n", + argv[0]); + exit (1); + } + + unicodedata_filename = argv[1]; + proplist_filename = argv[2]; + derivedproplist_filename = argv[3]; + scripts_filename = argv[4]; + blocks_filename = argv[5]; + proplist30_filename = argv[6]; + version = argv[7]; + + fill_attributes (unicodedata_filename); + clear_properties (); + fill_properties (proplist_filename); + fill_properties (derivedproplist_filename); + fill_properties30 (proplist30_filename); + fill_scripts (scripts_filename); + fill_blocks (blocks_filename); + + output_categories (version); + output_category ("categ_of.h", version); + output_combclass ("combining.h", version); + output_bidi_category ("bidi_of.h", version); + output_decimal_digit_test ("test-decdigit.h", version); + output_decimal_digit ("decdigit.h", version); + output_digit_test ("test-digit.h", version); + output_digit ("digit.h", version); + output_numeric_test ("test-numeric.h", version); + output_numeric ("numeric.h", version); + output_mirror ("mirror.h", version); + output_properties (version); + output_scripts (version); + output_scripts_byname (version); + output_blocks (version); + output_ident_properties (version); + output_old_ctype (version); + + return 0; +} + +/* + * For Emacs M-x compile + * Local Variables: + * compile-command: " + gcc -O -Wall gen-ctype.c -o gen-ctype && \ + ./gen-ctype \ + /gfs/ibook/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/5.0.0/ucd/UnicodeData.txt \ + /gfs/ibook/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/5.0.0/ucd/PropList.txt \ + /gfs/ibook/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/5.0.0/ucd/DerivedCoreProperties.txt \ + /gfs/ibook/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/5.0.0/ucd/Scripts.txt \ + /gfs/ibook/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/5.0.0/ucd/Blocks.txt \ + /gfs/ibook/Volumes/ExtData/www-archive/software/i18n/unicode/ftp.unicode.org/ArchiveVersions/3.0.1/PropList-3.0.1.txt \ + 5.0.0 + " + * End: + */ diff --git a/lib/unictype/identsyntaxmap.h b/lib/unictype/identsyntaxmap.h new file mode 100644 index 000000000..5d9db3959 --- /dev/null +++ b/lib/unictype/identsyntaxmap.h @@ -0,0 +1,42 @@ +/* Three-level bitmap lookup. + Copyright (C) 2000-2002, 2005-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2000-2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +static inline int identsyntax_lookup (ucs4_t uc); + +static inline int +identsyntax_lookup (ucs4_t uc) +{ + unsigned int index1 = uc >> identsyntax_header_0; + if (index1 < identsyntax_header_1) + { + int lookup1 = TABLE.level1[index1]; + if (lookup1 >= 0) + { + unsigned int index2 = (uc >> identsyntax_header_2) & identsyntax_header_3; + int lookup2 = TABLE.level2[lookup1 + index2]; + if (lookup2 >= 0) + { + unsigned int index3 = (uc & identsyntax_header_4) + lookup2; + /* level3 contains 2-bit values. */ + unsigned int lookup3 = TABLE.level3[index3 >> 3]; + + return (lookup3 >> (2 * (index3 & 7))) & 3; + } + } + } + return UC_IDENTIFIER_INVALID; +} diff --git a/lib/unictype/mirror.c b/lib/unictype/mirror.c new file mode 100644 index 000000000..75775447a --- /dev/null +++ b/lib/unictype/mirror.c @@ -0,0 +1,49 @@ +/* Mirrored Unicode characters. + Copyright (C) 2002, 2006 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_mirror table. */ +#include "mirror.h" + +bool +uc_mirror_char (ucs4_t uc, ucs4_t *puc) +{ + unsigned int index1 = uc >> mirror_header_0; + if (index1 < mirror_header_1) + { + int lookup1 = u_mirror.level1[index1]; + if (lookup1 >= 0) + { + unsigned int index2 = (uc >> mirror_header_2) & mirror_header_3; + int lookup2 = u_mirror.level2[lookup1 + index2]; + if (lookup2 >= 0) + { + unsigned int index3 = (uc & mirror_header_4); + int lookup3 = u_mirror.level3[lookup2 + index3]; + + *puc = uc + lookup3; + return (lookup3 != 0); + } + } + } + *puc = uc; + return false; +} diff --git a/lib/unictype/mirror.h b/lib/unictype/mirror.h new file mode 100644 index 000000000..8abad38f8 --- /dev/null +++ b/lib/unictype/mirror.h @@ -0,0 +1,503 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Mirrored Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define mirror_header_0 16 +#define mirror_header_1 2 +#define mirror_header_2 7 +#define mirror_header_3 511 +#define mirror_header_4 127 +static const +struct + { + int level1[2]; + short level2[2 << 9]; + int level3[22 << 7]; + } +u_mirror = +{ + { 0, 512 }, + { + 0, 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, 256, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 384, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 512, 640, 768, -1, 896, 1024, 1152, -1, + -1, -1, -1, -1, -1, -1, 1280, 1408, + -1, -1, -1, 1536, 1664, 1792, -1, -1, + -1, -1, -1, -1, 1920, -1, -1, -1, + 2048, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 2176, -1, 2304, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 2432, 2560, 2688, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -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, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 1, -1, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2, 0, -2, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 2, 0, -2, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 2, 0, -2, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 16, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -16, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 61635, 61634, 61633, 61632, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 59746, 59745, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 57317, 57316, 57315, 57314, 57313, 57312, 57311, 57310, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1, -1, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, -1, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, -1, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1, -1, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 57021, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 56828, 56827, 56826, 56825, 0, 0, 0, + 3, 56820, 3, -3, 56817, -3, 0, 0, + 0, 56812, 0, 0, 0, 56808, 56807, 0, + 0, 0, 56803, 56802, 56801, 56800, 0, 56798, + 56797, 56796, 56795, 0, 56793, 0, 56791, 0, + 0, 0, 0, 56786, 56785, 56784, 56783, 56782, + 56781, 56780, 56779, 56778, 0, 0, 0, 0, + 0, 56772, 0, 56770, 1, -1, 56767, 56766, + 56765, 56764, 56763, 138, 56761, 56760, 56759, 56758, + 56757, 56756, 56755, 56754, 56753, 0, 0, 0, + 0, 0, 1, -1, 1, -1, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 56734, + 56733, 0, 56731, 0, 1, -1, 1, -1, + 56725, 56724, 1, -1, 0, 0, 56719, 56718, + 56717, 56716, 56715, 56714, 56713, 56712, 1, -1, + 1, -1, 1, -1, 1, -1, 56703, 56702, + 56701, 56700, 1, -1, 56697, 56696, 1, -1, + 56693, 56692, 56691, 56690, 56689, 0, 0, 1, + -1, 1, -1, 0, 0, 0, 0, 0, + 56677, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1, -1, 0, 0, 56663, 56662, + 56661, 56660, 56659, 56658, 56657, 56656, 56655, 56654, + 1, -1, 1, -1, 1, -1, 1, -1, + 56645, 0, 0, 0, 0, 0, 56639, 56638, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1, -1, 1, -1, -138, 0, 0, + 1, -1, 0, 0, 0, 0, 1, -1, + 1, -1, 1, -1, 1, -1, 1, -1, + 56605, 56604, 56603, 56602, 56601, 56600, 56599, 56598, + 56597, 56596, 56595, 56594, 56593, 56592, 0, 0, + 1, -1, 56587, 56586, 56585, 56584, 56583, 56582, + 56581, 56580, 56579, 56578, 56577, 56576, 56575, 56574, + 0, 0, 0, 0, 0, 0, 0, 0, + 1, -1, 1, -1, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 56541, 56540, 0, 0, 0, 0, 0, 0, + 0, 1, -1, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 55445, 55444, 55443, 55442, 55441, 55440, 55439, 55438, + 55437, 55436, 55435, 55434, 55433, 55432, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 55357, 0, 0, 55354, 55353, 55352, 55351, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 55338, 55337, 55336, 55335, 0, + 0, 0, 0, 0, 55329, 55328, 55327, 0, + 0, 0, 55323, 55322, 55321, 55320, 55319, 55318, + 55317, 55316, 55315, 55314, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 54906, 54905, 54904, 54903, 54902, + 54901, 54900, 54899, 54898, 54897, 54896, 54895, 54894, + 54893, 54892, 54891, 54890, 54889, 54888, 54887, 54886, + 54885, 0, 0, 54882, 54881, 54880, 54879, 54878, + 54877, 54876, 54875, 54874, 54873, 54872, 54871, 54870, + 54869, 54868, 54867, 54866, 54865, 54864, 54863, 54862, + 0, 0, 0, 0, 0, 0, 0, 0, + 54853, 0, 0, 0, 0, 0, 0, 0, + 54845, 54844, 54843, 54842, 54841, 54840, 0, 0, + 0, 54836, 0, 0, 0, 0, 54831, 54830, + 54829, 54828, 54827, 0, 54825, 54824, 0, 0, + 54821, 54820, 54819, 54818, 54817, 0, 0, 0, + 0, 54812, 0, 54810, 54809, 54808, 0, 0, + 54805, 54804, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 54793, 54792, 54791, 54790, + 54789, 54788, 0, 0, 54785, 54784, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 54771, 54770, 54769, 54768, 54767, 54766, + 54765, 54764, 54763, 54762, 54761, 54760, 54759, 54758, + 54757, 54756, 54755, 54754, 54753, 0, 54751, 54750, + 54749, 54748, 0, 0, 54745, 0, 54743, 0, + 0, 54740, 0, 54738, 54737, 54736, 54735, 0, + 0, 0, 0, 0, 54729, 54728, 0, 0, + 0, 0, 0, 0, 54721, 54720, 54719, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 54694, + 54693, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 54681, 54680, 0, 0, + 0, 0, 54675, 54674, 54673, 54672, 0, 54670, + 54669, 0, 0, 54666, 54665, 0, 0, 0, + 0, 54660, 54659, 54658, 54657, 54656, 54655, 54654, + 54653, 54652, 54651, 54650, 54649, 54648, 54647, 54646, + 54645, 54644, 54643, 54642, 54641, 54640, 54639, 54638, + 54637, 54636, 54635, 54634, 54633, 54632, 54631, 54630, + 54629, 54628, 54627, 54626, 54625, 54624, 54623, 54622, + 54621, 54620, 54619, 54618, 0, 0, 54615, 54614, + 54613, 54612, 54611, 54610, 54609, 54608, 0, 54606, + 54605, 54604, 54603, 54602, 54601, 54600, 54599, 54598, + 54597, 54596, 54595, 54594, 54593, 54592, 54591, 54590, + 54589, 54588, 54587, 54586, 54585, 54584, 54583, 54582, + 54581, 54580, 54579, 54578, 54577, 54576, 54575, 54574, + 54573, 54572, 54571, 54570, 54569, 54568, 54567, 0, + 0, 0, 0, 0, 54561, 0, 54559, 0, + 0, 0, 54555, 54554, 54553, 54552, 54551, 0, + 0, 0, 0, 0, 54545, 54544, 54543, 0, + 0, 0, 0, 54538, 0, 0, 0, 54534, + 54533, 54532, 54531, 54530, 0, 54528, 0, 0, + 0, 0, 53755, 53754, 53753, 53752, 0, 0, + 0, 53748, 53747, 0, 53745, 53744, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 53729, 53728, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 1, -1, 1, -1, 1, -1, 1, -1, + 1, -1, 0, 0, 1, -1, 1, -1, + 1, -1, 1, -1, 0, 53216, 53215, 53214, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 420, 419, 418, 417, 416, 415, 0, + 0, 0, 0, 0, 409, 408, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 245, 244, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 225, 0, 223, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 194, 0, 192, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 162, 0, 160, 0, 158, + 157, 0, 155, 154, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -55006, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, -55064, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -55122, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, -55180, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -55238, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0 + } +}; diff --git a/lib/unictype/numeric.c b/lib/unictype/numeric.c new file mode 100644 index 000000000..fb1512ebe --- /dev/null +++ b/lib/unictype/numeric.c @@ -0,0 +1,55 @@ +/* Values of numeric Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +/* Define u_numeric_values and u_numeric tables. */ +#include "numeric.h" + +uc_fraction_t +uc_numeric_value (ucs4_t uc) +{ + unsigned int index1 = uc >> numeric_header_0; + if (index1 < numeric_header_1) + { + int lookup1 = u_numeric.level1[index1]; + if (lookup1 >= 0) + { + unsigned int index2 = (uc >> numeric_header_2) & numeric_header_3; + int lookup2 = u_numeric.level2[lookup1 + index2]; + if (lookup2 >= 0) + { + unsigned int index3 = ((uc & numeric_header_4) + lookup2) * 7; + /* level3 contains 7-bit values, packed into 16-bit words. */ + unsigned int lookup3 = + ((u_numeric.level3[index3>>4] + | (u_numeric.level3[(index3>>4)+1] << 16)) + >> (index3 % 16)) + & 0x7f; + + return u_numeric_values[lookup3]; + } + } + } + { + const uc_fraction_t default_value = { 0, 0 }; + return default_value; + } +} diff --git a/lib/unictype/numeric.h b/lib/unictype/numeric.h new file mode 100644 index 000000000..8d952ff48 --- /dev/null +++ b/lib/unictype/numeric.h @@ -0,0 +1,528 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Numeric values of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +static const uc_fraction_t u_numeric_values[107] = +{ + { 0, 0 }, + { 0, 1 }, + { 1, 1 }, + { 2, 1 }, + { 3, 1 }, + { 4, 1 }, + { 5, 1 }, + { 6, 1 }, + { 7, 1 }, + { 8, 1 }, + { 9, 1 }, + { 10, 1 }, + { 11, 1 }, + { 12, 1 }, + { 13, 1 }, + { 14, 1 }, + { 15, 1 }, + { 16, 1 }, + { 17, 1 }, + { 18, 1 }, + { 19, 1 }, + { 20, 1 }, + { 21, 1 }, + { 22, 1 }, + { 23, 1 }, + { 24, 1 }, + { 25, 1 }, + { 26, 1 }, + { 27, 1 }, + { 28, 1 }, + { 29, 1 }, + { 30, 1 }, + { 31, 1 }, + { 32, 1 }, + { 33, 1 }, + { 34, 1 }, + { 35, 1 }, + { 36, 1 }, + { 37, 1 }, + { 38, 1 }, + { 39, 1 }, + { 40, 1 }, + { 41, 1 }, + { 42, 1 }, + { 43, 1 }, + { 44, 1 }, + { 45, 1 }, + { 46, 1 }, + { 47, 1 }, + { 48, 1 }, + { 49, 1 }, + { 50, 1 }, + { 60, 1 }, + { 70, 1 }, + { 80, 1 }, + { 90, 1 }, + { 100, 1 }, + { 200, 1 }, + { 300, 1 }, + { 400, 1 }, + { 500, 1 }, + { 600, 1 }, + { 700, 1 }, + { 800, 1 }, + { 900, 1 }, + { 1000, 1 }, + { 2000, 1 }, + { 3000, 1 }, + { 4000, 1 }, + { 5000, 1 }, + { 6000, 1 }, + { 7000, 1 }, + { 8000, 1 }, + { 9000, 1 }, + { 10000, 1 }, + { 20000, 1 }, + { 30000, 1 }, + { 40000, 1 }, + { 50000, 1 }, + { 60000, 1 }, + { 70000, 1 }, + { 80000, 1 }, + { 90000, 1 }, + { -1, 2 }, + { 1, 2 }, + { 3, 2 }, + { 5, 2 }, + { 7, 2 }, + { 9, 2 }, + { 11, 2 }, + { 13, 2 }, + { 15, 2 }, + { 17, 2 }, + { 1, 3 }, + { 2, 3 }, + { 1, 4 }, + { 3, 4 }, + { 1, 5 }, + { 2, 5 }, + { 3, 5 }, + { 4, 5 }, + { 1, 6 }, + { 5, 6 }, + { 1, 8 }, + { 3, 8 }, + { 5, 8 }, + { 7, 8 } +}; +#define numeric_header_0 16 +#define numeric_header_1 2 +#define numeric_header_2 7 +#define numeric_header_3 511 +#define numeric_header_4 127 +static const +struct + { + int level1[2]; + short level2[2 << 9]; + unsigned short level3[38 * 56 + 1]; + } +u_numeric = +{ + { 0, 512 }, + { + 0, 128, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 256, 384, -1, 512, + -1, -1, 640, 768, 640, 640, 640, 896, + 640, 640, 640, -1, 1024, 1024, 1152, -1, + 512, -1, -1, -1, -1, -1, 1280, -1, + -1, -1, -1, -1, -1, 1408, -1, 1536, + 1664, -1, 1792, 1024, -1, -1, 1024, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 1920, 2048, 2176, 2304, -1, -1, -1, -1, + 2432, 2560, -1, -1, -1, -1, 2688, 2816, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, 2944, -1, -1, -1, -1, -1, -1, + 3072, -1, -1, 3200, 3328, 3456, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -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, 3584, 3712, -1, -1, 3840, 3968, + -1, 4096, -1, -1, -1, -1, -1, -1, + -1, -1, 4224, -1, 4352, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -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, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -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, -1, + -1, -1, -1, -1, -1, -1, -1, 4736, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1 + }, + { + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc101, 0x5080, 0x1c30, + 0x0910, 0x0005, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc000, 0x0080, 0x0000, + 0x0000, 0x0001, 0xa5f0, 0x0182, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0xc101, 0x5080, 0x1c30, 0x0910, 0x0005, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0xc101, 0x5080, 0x1c30, 0x0910, 0x0005, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xc101, 0x5080, 0x1c30, 0x0910, + 0x0005, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0400, 0x0304, 0xc142, 0x4070, + 0x1424, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0400, 0x0304, 0xc142, 0x4070, + 0x1424, 0x0000, 0x2000, 0x1018, 0x800a, 0x0008, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 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, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xc101, 0x5080, 0x1c30, 0x0910, 0x0005, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc101, 0x5080, + 0x1c30, 0x0910, 0xb505, 0xbd6a, 0xb362, 0x2dda, 0x0a77, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x80c1, 0x3050, + 0x101c, 0xc509, 0xf2a2, 0xcd49, 0x3568, 0x0ddb, 0x04a7, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x2648, 0x0014, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0xc101, 0x5080, 0x1c30, 0x0910, 0x0005, 0x0000, + 0x0000, 0xc101, 0x5080, 0x1c30, 0x0910, 0x0005, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc101, + 0x5080, 0x1c30, 0x0910, 0x0005, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0400, 0x0304, + 0xc142, 0x4070, 0x1424, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0001, 0x5000, 0x1c30, 0x0910, 0x0005, 0x0000, 0x0000, + 0xc101, 0x5080, 0x1c30, 0x0910, 0x0005, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xeba0, 0x8b0d, 0xe4c7, 0xf9b2, + 0x4e8c, 0x05ab, 0x0182, 0x60a1, 0x2038, 0x8a12, 0xa305, 0xc331, + 0x82f1, 0x0182, 0x60a1, 0x2038, 0x8a12, 0xa305, 0xc331, 0x82f1, + 0xa2c1, 0x0012, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0182, 0x60a1, 0x2038, 0x8a12, 0xa305, 0x78e1, + 0x2240, 0x0992, 0x22a5, 0x1018, 0x860a, 0x2203, 0x58a1, 0x1a30, + 0x078e, 0x2224, 0x5099, 0x822a, 0xa101, 0x3860, 0x1220, 0x058a, + 0xe1a3, 0x4078, 0x9222, 0xa509, 0x0002, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8040, 0x70d1, + 0x203c, 0xc911, 0x5284, 0x0c11, 0x0508, 0x01c3, 0x5091, 0x022c, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0800, 0x8406, 0xe182, 0x4880, 0x1628, + 0x0182, 0x60a1, 0x2038, 0x8a12, 0x6085, 0x2840, 0x0e18, 0x8488, + 0x0162, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa000, 0x0002, + 0x0000, 0x0000, 0x0000, 0x0002, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc100, 0x5080, + 0x1c30, 0x0910, 0x0005, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x8b00, 0x07ca, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 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, 0x0028, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0182, 0x60a1, + 0x2038, 0x8a12, 0x0005, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xcb00, 0x9305, 0x6cd1, 0x1d38, 0x07cf, + 0x1214, 0x488d, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0182, 0x60a1, 0x2038, 0x8a12, 0x0005, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x9280, 0x84e9, 0xa94a, + 0xac56, 0xeb96, 0x8b05, 0x66c9, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0304, 0xc142, 0x4070, 0x1424, 0xca8b, + 0x3527, 0xd5a3, 0x376c, 0x4e5c, 0xe3b7, 0x7cf5, 0x603f, 0x3850, + 0x1624, 0x478d, 0x5264, 0x64b9, 0x9d36, 0x684f, 0x0a54, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xaa5f, 0x30c0, 0x15e3, 0x869d, + 0x0cc5, 0x0bc7, 0x0d16, 0x198b, 0x178e, 0x3a54, 0x0217, 0x6081, + 0x1830, 0x0c0c, 0xc58b, 0xb162, 0xccf8, 0xb366, 0x4e19, 0xe3c7, + 0x78f1, 0x60bc, 0x30d1, 0x52a3, 0x60bd, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0040, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc302, 0x0662, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x1b80, 0x0000, 0x0000, 0x0000, + 0x1000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xc100, 0x5160, 0x01c1, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xc101, 0x5080, + 0x1c30, 0x0910, 0x0005, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0800, 0x1516, 0x001c, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0182, 0xb0a1, 0xe0a8, 0x0082, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 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, + 0x0508, 0x8103, 0x2850, 0x0a14, 0x0407, 0x9102, 0x2848, 0x0a14, + 0x80c5, 0x3050, 0x041c, 0x4203, 0x60a1, 0x0030, 0x8200, 0xd741, + 0xee6b, 0xcf7a, 0xf2df, 0x0017, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0182, 0x60a1, 0x2038, 0x8a12, 0xe545, 0x9a93, + 0x6ad1, 0x1bb6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0404, 0x4203, 0x70c1, 0x2440, 0x0114, 0x80c1, + 0x3050, 0x101c, 0x4509, 0x3040, 0x1420, 0x070c, 0x4244, 0x1011, + 0x080c, 0xc305, 0x9101, 0x0450, 0x0304, 0xc142, 0x4070, 0x1424, + 0x0000 + } +}; diff --git a/lib/unictype/pr_alphabetic.c b/lib/unictype/pr_alphabetic.c new file mode 100644 index 000000000..999209169 --- /dev/null +++ b/lib/unictype/pr_alphabetic.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_alphabetic table. */ +#include "pr_alphabetic.h" + +bool +uc_is_property_alphabetic (ucs4_t uc) +{ + return bitmap_lookup (&u_property_alphabetic, uc); +} + +const uc_property_t UC_PROPERTY_ALPHABETIC = + { &uc_is_property_alphabetic }; diff --git a/lib/unictype/pr_alphabetic.h b/lib/unictype/pr_alphabetic.h new file mode 100644 index 000000000..979825d01 --- /dev/null +++ b/lib/unictype/pr_alphabetic.h @@ -0,0 +1,580 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[3]; + short level2[3 << 7]; + /*unsigned*/ int level3[42 << 4]; + } +u_property_alphabetic = +{ + { 3 }, + { + 4 * sizeof (int) / sizeof (short) + 0, + 4 * sizeof (int) / sizeof (short) + 128, + 4 * sizeof (int) / sizeof (short) + 256 + }, + { + 4 + 384 * sizeof (short) / sizeof (int) + 0, + 4 + 384 * sizeof (short) / sizeof (int) + 16, + 4 + 384 * sizeof (short) / sizeof (int) + 32, + 4 + 384 * sizeof (short) / sizeof (int) + 48, + 4 + 384 * sizeof (short) / sizeof (int) + 64, + 4 + 384 * sizeof (short) / sizeof (int) + 80, + 4 + 384 * sizeof (short) / sizeof (int) + 96, + 4 + 384 * sizeof (short) / sizeof (int) + 112, + 4 + 384 * sizeof (short) / sizeof (int) + 128, + 4 + 384 * sizeof (short) / sizeof (int) + 144, + 4 + 384 * sizeof (short) / sizeof (int) + 160, + 4 + 384 * sizeof (short) / sizeof (int) + 176, + 4 + 384 * sizeof (short) / sizeof (int) + 192, + 4 + 384 * sizeof (short) / sizeof (int) + 208, + 4 + 384 * sizeof (short) / sizeof (int) + 224, + 4 + 384 * sizeof (short) / sizeof (int) + 240, + 4 + 384 * sizeof (short) / sizeof (int) + 256, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + -1, + 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) + 320, + 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) + 320, + 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) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 336, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 352, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 368, + 4 + 384 * sizeof (short) / sizeof (int) + 384, + 4 + 384 * sizeof (short) / sizeof (int) + 400, + -1, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 416, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 432, + 4 + 384 * sizeof (short) / sizeof (int) + 448, + 4 + 384 * sizeof (short) / sizeof (int) + 464, + 4 + 384 * sizeof (short) / sizeof (int) + 480, + 4 + 384 * sizeof (short) / sizeof (int) + 496, + 4 + 384 * sizeof (short) / sizeof (int) + 512, + 4 + 384 * sizeof (short) / sizeof (int) + 528, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 544, + 4 + 384 * sizeof (short) / sizeof (int) + 560, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 576, + 4 + 384 * sizeof (short) / sizeof (int) + 592, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 608, + 4 + 384 * sizeof (short) / sizeof (int) + 624, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 640, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 656, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x07FFFFFE, 0x07FFFFFE, + 0x00000000, 0x04200400, 0xFF7FFFFF, 0xFF7FFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x0003FFC3, 0x0000401F, + 0x00000000, 0x00000000, 0x00000020, 0x3C000000, + 0xFFFFD740, 0xFFFFFFFB, 0xFFFF7FFF, 0xFFBFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x000FFFFF, 0xFFFE0000, 0x027FFFFF, 0xFFFFFFFE, + 0x000000FF, 0xBFFF0000, 0xFFFF00B6, 0x000707FF, + 0x003F0000, 0x07FFFFFE, 0x7EFFFFFF, 0xFFFFC000, + 0xFFFFFFFF, 0xFFFFFFFF, 0x1FEFFFFF, 0x9C00E1FE, + 0xFFFF0000, 0xFFFFFFFF, 0xFFFFE000, 0x00003FFF, + 0xFFFFFFFF, 0x0003FFFF, 0xFFFFFC00, 0x043007FF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFE, 0xE3FFFFFF, 0xFF011FFF, 0xF800000F, + 0xFFF99FEE, 0xE3C5FDFF, 0xB080599F, 0x0003000F, + 0xFFF987EE, 0xC36DFDFF, 0x5E001987, 0x001F0000, + 0xFFFBBFEE, 0xE3EDFDFF, 0x00011BBF, 0x0000000F, + 0xFFF99FEE, 0xE3EDFDFF, 0xB0C0198F, 0x00020003, + 0xD63DC7EC, 0xC3FFC718, 0x00801DC7, 0x00000000, + 0xFFFDDFEE, 0xC3EFFDFF, 0x00601DDF, 0x00000003, + 0xFFFDDFEC, 0xE3EFFDFF, 0x40601DDF, 0x0000000F, + 0xFFFDDFEC, 0xC3FFFDFF, 0x00801DCF, 0x00000003, + 0xFC7FFFEC, 0x2FFBFFFF, 0xFF5F807F, 0x000C0000, + 0xFFFFFFFE, 0x07FFFFFF, 0x0000207F, 0x00000000, + 0xFEF02596, 0x3BFFECAE, 0x3000205F, 0x00000000, + 0x00000001, 0x00000000, 0xFFFFFEFF, 0xFFFE07FF, + 0xFEFF0F03, 0x1FFFFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0x0147F6FB, 0x03FF0000, 0x00000000, + 0x00000000, 0xFFFFFFFF, 0xFFFF003F, 0x17FFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x83FFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF07, 0xFFFFFFFF, 0x03FFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x3D7F3DFF, 0xFFFFFFFF, + 0xFFFF3DFF, 0x7F3DFFFF, 0xFF7FFF3D, 0xFFFFFFFF, + 0xFF3DFFFF, 0xFFFFFFFF, 0x87FFFFFF, 0x00000000, + 0x0000FFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x001FFFFF, + 0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x007F9FFF, + 0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x0001C7FF, + 0x000FDFFF, 0x000FFFFF, 0x000FFFFF, 0x000DDFFF, + 0xFFFFFFFF, 0xFFCFFFFF, 0x108001FF, 0x00000000, + 0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF, + 0xFFFFFFFF, 0x000003FF, 0x00000000, 0x00000000, + 0x1FFFFFFF, 0x01FF0FFF, 0xFFFF0000, 0x001F3FFF, + 0xFFFFFFFF, 0xFFFF03FF, 0x000003FF, 0x00000000, + 0x0FFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFEFFFFF, 0x00000FEF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x0FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, + 0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF, + 0xFFFFFFFF, 0x5FDFFFFF, 0x0FCF1FDC, 0x1FDC1FFF, + 0x00000000, 0x00000000, 0x00000000, 0x80020000, + 0x001F0000, 0x00000000, 0x00000000, 0x00000000, + 0x3E2FFC84, 0xF3FFBD50, 0x000043E0, 0xFFFFFFFF, + 0x0000001F, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFC00000, 0xFFFFFFFF, 0x000003FF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFF7FFF, 0x7FFFFFFF, 0x00F01FFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000001F, + 0xFFFFFFFF, 0xFFFF003F, 0xFFFFFFFF, 0x0000803F, + 0x007FFFFF, 0x7F7F7F7F, 0x7F7F7F7F, 0x00000000, + 0x000000E0, 0x1F3E03FE, 0xFFFFFFFE, 0xFFFFFFFF, + 0xE07FFFFF, 0xFFFFFFFE, 0xFFFFFFFF, 0xF7FFFFFF, + 0xFFFFFFE0, 0xFFFE1FFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00007FFF, 0x00FFFFFF, 0x00000000, 0xFFFF0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x003FFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0FFFFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00001FFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x07800000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFF7BB, 0x000000FF, 0xFFFFFFFF, 0x000FFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFF3FFF, 0xFFFFFFFF, 0xFFFF07FF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, 0x00000000, + 0xE0F8007F, 0x5F7FFDFF, 0xFFFFFFDB, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0003FFFF, 0xFFF80000, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x3FFFFFFF, 0xFFFF0000, 0xFFFFFFFF, + 0xFFFCFFFF, 0xFFFFFFFF, 0x000000FF, 0x0FFF0000, + 0x00000000, 0x00000000, 0x00000000, 0xFFDF0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFFFFFF, + 0x00000000, 0x07FFFFFE, 0x07FFFFFE, 0xFFFFFFC0, + 0xFFFFFFFF, 0x7FFFFFFF, 0x1CFCFCFC, 0x00000000, + 0xFFFFEFFF, 0xB7FFFF7F, 0x3FFF3FFF, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF, + 0x00000000, 0x00000000, 0xFFFFFFFF, 0x001FFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x7FFFFFFF, 0xFFFF0000, 0x000007FF, 0x00000000, + 0x3FFFFFFF, 0xFFFFFFFF, 0x003EFF0F, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFD3F, 0x91BFFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x003FFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFEEFF06F, 0x000FFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000007, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF, + 0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF, + 0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF3F, 0xF7FFFFFD, 0xF7FFFFFF, + 0xFFDFFFFF, 0xFFDFFFFF, 0xFFFF7FFF, 0xFFFF7FFF, + 0xFFFFFDFF, 0xFFFFFDFF, 0x00000FF7, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_ascii_hex_digit.c b/lib/unictype/pr_ascii_hex_digit.c new file mode 100644 index 000000000..90d3d3adf --- /dev/null +++ b/lib/unictype/pr_ascii_hex_digit.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_ascii_hex_digit table. */ +#include "pr_ascii_hex_digit.h" + +bool +uc_is_property_ascii_hex_digit (ucs4_t uc) +{ + return bitmap_lookup (&u_property_ascii_hex_digit, uc); +} + +const uc_property_t UC_PROPERTY_ASCII_HEX_DIGIT = + { &uc_is_property_ascii_hex_digit }; diff --git a/lib/unictype/pr_ascii_hex_digit.h b/lib/unictype/pr_ascii_hex_digit.h new file mode 100644 index 000000000..cb9905cf1 --- /dev/null +++ b/lib/unictype/pr_ascii_hex_digit.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[1 << 4]; + } +u_property_ascii_hex_digit = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x03FF0000, 0x0000007E, 0x0000007E, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_bidi_arabic_digit.c b/lib/unictype/pr_bidi_arabic_digit.c new file mode 100644 index 000000000..15f5f6be1 --- /dev/null +++ b/lib/unictype/pr_bidi_arabic_digit.c @@ -0,0 +1,47 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_bidi_arabic_digit table. */ +#include "pr_bidi_arabic_digit.h" + +bool +uc_is_property_bidi_arabic_digit (ucs4_t uc) +{ + return bitmap_lookup (&u_property_bidi_arabic_digit, uc); +} + +#else + +bool +uc_is_property_bidi_arabic_digit (ucs4_t uc) +{ + return (uc_bidi_category (uc) == UC_BIDI_AN); +} + +#endif + +const uc_property_t UC_PROPERTY_BIDI_ARABIC_DIGIT = + { &uc_is_property_bidi_arabic_digit }; diff --git a/lib/unictype/pr_bidi_arabic_digit.h b/lib/unictype/pr_bidi_arabic_digit.h new file mode 100644 index 000000000..1b62d7e81 --- /dev/null +++ b/lib/unictype/pr_bidi_arabic_digit.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[1 << 4]; + } +u_property_bidi_arabic_digit = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00001BFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_bidi_arabic_right_to_left.c b/lib/unictype/pr_bidi_arabic_right_to_left.c new file mode 100644 index 000000000..816676758 --- /dev/null +++ b/lib/unictype/pr_bidi_arabic_right_to_left.c @@ -0,0 +1,47 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_bidi_arabic_right_to_left table. */ +#include "pr_bidi_arabic_right_to_left.h" + +bool +uc_is_property_bidi_arabic_right_to_left (ucs4_t uc) +{ + return bitmap_lookup (&u_property_bidi_arabic_right_to_left, uc); +} + +#else + +bool +uc_is_property_bidi_arabic_right_to_left (ucs4_t uc) +{ + return (uc_bidi_category (uc) == UC_BIDI_AL); +} + +#endif + +const uc_property_t UC_PROPERTY_BIDI_ARABIC_RIGHT_TO_LEFT = + { &uc_is_property_bidi_arabic_right_to_left }; diff --git a/lib/unictype/pr_bidi_arabic_right_to_left.h b/lib/unictype/pr_bidi_arabic_right_to_left.h new file mode 100644 index 000000000..c7ce3aa8b --- /dev/null +++ b/lib/unictype/pr_bidi_arabic_right_to_left.h @@ -0,0 +1,172 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[5 << 4]; + } +u_property_bidi_arabic_right_to_left = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + 2 + 128 * sizeof (short) / sizeof (int) + 64 + }, + { + 0xFFC02FFF, 0xFFFFFFFF, 0x800007FF, 0xFFFEE000, + 0xFFFFFFFF, 0xFFFFFFFF, 0x203FFFFF, 0xFC00C060, + 0xFFFD7FFF, 0x0000FFFF, 0xFFFFF800, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFE003F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x000003F0, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFF0000, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x3FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, 0xDFFF0000, + 0xFC000000, 0x0000FFF0, 0x00080000, 0xFFFFF080, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_bidi_block_separator.c b/lib/unictype/pr_bidi_block_separator.c new file mode 100644 index 000000000..1775d3656 --- /dev/null +++ b/lib/unictype/pr_bidi_block_separator.c @@ -0,0 +1,47 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_bidi_block_separator table. */ +#include "pr_bidi_block_separator.h" + +bool +uc_is_property_bidi_block_separator (ucs4_t uc) +{ + return bitmap_lookup (&u_property_bidi_block_separator, uc); +} + +#else + +bool +uc_is_property_bidi_block_separator (ucs4_t uc) +{ + return (uc_bidi_category (uc) == UC_BIDI_B); +} + +#endif + +const uc_property_t UC_PROPERTY_BIDI_BLOCK_SEPARATOR = + { &uc_is_property_bidi_block_separator }; diff --git a/lib/unictype/pr_bidi_block_separator.h b/lib/unictype/pr_bidi_block_separator.h new file mode 100644 index 000000000..474a284b9 --- /dev/null +++ b/lib/unictype/pr_bidi_block_separator.h @@ -0,0 +1,160 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[2 << 4]; + } +u_property_bidi_block_separator = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x70002400, 0x00000000, 0x00000000, 0x00000000, + 0x00000020, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000200, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_bidi_boundary_neutral.c b/lib/unictype/pr_bidi_boundary_neutral.c new file mode 100644 index 000000000..923e89f79 --- /dev/null +++ b/lib/unictype/pr_bidi_boundary_neutral.c @@ -0,0 +1,47 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_bidi_boundary_neutral table. */ +#include "pr_bidi_boundary_neutral.h" + +bool +uc_is_property_bidi_boundary_neutral (ucs4_t uc) +{ + return bitmap_lookup (&u_property_bidi_boundary_neutral, uc); +} + +#else + +bool +uc_is_property_bidi_boundary_neutral (ucs4_t uc) +{ + return (uc_bidi_category (uc) == UC_BIDI_BN); +} + +#endif + +const uc_property_t UC_PROPERTY_BIDI_BOUNDARY_NEUTRAL = + { &uc_is_property_bidi_boundary_neutral }; diff --git a/lib/unictype/pr_bidi_boundary_neutral.h b/lib/unictype/pr_bidi_boundary_neutral.h new file mode 100644 index 000000000..672a1e27d --- /dev/null +++ b/lib/unictype/pr_bidi_boundary_neutral.h @@ -0,0 +1,590 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[17]; + short level2[4 << 7]; + /*unsigned*/ int level3[9 << 4]; + } +u_property_bidi_boundary_neutral = +{ + { 17 }, + { + 18 * sizeof (int) / sizeof (short) + 0, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256 + }, + { + 18 + 512 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 48, + 18 + 512 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 96, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 96, + 18 + 512 * sizeof (short) / sizeof (int) + 112, + 18 + 512 * sizeof (short) / sizeof (int) + 128, + 18 + 512 * sizeof (short) / sizeof (int) + 128, + 18 + 512 * sizeof (short) / sizeof (int) + 128, + 18 + 512 * sizeof (short) / sizeof (int) + 128, + 18 + 512 * sizeof (short) / sizeof (int) + 128, + 18 + 512 * sizeof (short) / sizeof (int) + 128, + 18 + 512 * sizeof (short) / sizeof (int) + 128, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 96 + }, + { + 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, 0x0000FC0F, + 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, 0xFFFF0000, 0x0000FFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x80000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xC1FF0000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x07F80000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xC0000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFFF0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF + } +}; diff --git a/lib/unictype/pr_bidi_common_separator.c b/lib/unictype/pr_bidi_common_separator.c new file mode 100644 index 000000000..2cc1f140f --- /dev/null +++ b/lib/unictype/pr_bidi_common_separator.c @@ -0,0 +1,47 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_bidi_common_separator table. */ +#include "pr_bidi_common_separator.h" + +bool +uc_is_property_bidi_common_separator (ucs4_t uc) +{ + return bitmap_lookup (&u_property_bidi_common_separator, uc); +} + +#else + +bool +uc_is_property_bidi_common_separator (ucs4_t uc) +{ + return (uc_bidi_category (uc) == UC_BIDI_CS); +} + +#endif + +const uc_property_t UC_PROPERTY_BIDI_COMMON_SEPARATOR = + { &uc_is_property_bidi_common_separator }; diff --git a/lib/unictype/pr_bidi_common_separator.h b/lib/unictype/pr_bidi_common_separator.h new file mode 100644 index 000000000..db47de42f --- /dev/null +++ b/lib/unictype/pr_bidi_common_separator.h @@ -0,0 +1,168 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[4 << 4]; + } +u_property_bidi_common_separator = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 48 + }, + { + 0x00000000, 0x0400D000, 0x00000000, 0x00000000, + 0x00000000, 0x00000001, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00001000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00008000, 0x00000010, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00250000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0400D000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_bidi_control.c b/lib/unictype/pr_bidi_control.c new file mode 100644 index 000000000..9a4f209c4 --- /dev/null +++ b/lib/unictype/pr_bidi_control.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_bidi_control table. */ +#include "pr_bidi_control.h" + +bool +uc_is_property_bidi_control (ucs4_t uc) +{ + return bitmap_lookup (&u_property_bidi_control, uc); +} + +const uc_property_t UC_PROPERTY_BIDI_CONTROL = + { &uc_is_property_bidi_control }; diff --git a/lib/unictype/pr_bidi_control.h b/lib/unictype/pr_bidi_control.h new file mode 100644 index 000000000..e81caea01 --- /dev/null +++ b/lib/unictype/pr_bidi_control.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[1 << 4]; + } +u_property_bidi_control = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x0000C000, 0x00007C00, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_bidi_embedding_or_override.c b/lib/unictype/pr_bidi_embedding_or_override.c new file mode 100644 index 000000000..702652233 --- /dev/null +++ b/lib/unictype/pr_bidi_embedding_or_override.c @@ -0,0 +1,49 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_bidi_embedding_or_override table. */ +#include "pr_bidi_embedding_or_override.h" + +bool +uc_is_property_bidi_embedding_or_override (ucs4_t uc) +{ + return bitmap_lookup (&u_property_bidi_embedding_or_override, uc); +} + +#else + +bool +uc_is_property_bidi_embedding_or_override (ucs4_t uc) +{ + int category = uc_bidi_category (uc); + return (category == UC_BIDI_LRE || category == UC_BIDI_LRO + || category == UC_BIDI_RLE || category == UC_BIDI_RLO); +} + +#endif + +const uc_property_t UC_PROPERTY_BIDI_EMBEDDING_OR_OVERRIDE = + { &uc_is_property_bidi_embedding_or_override }; diff --git a/lib/unictype/pr_bidi_embedding_or_override.h b/lib/unictype/pr_bidi_embedding_or_override.h new file mode 100644 index 000000000..f2981d80b --- /dev/null +++ b/lib/unictype/pr_bidi_embedding_or_override.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[1 << 4]; + } +u_property_bidi_embedding_or_override = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00006C00, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_bidi_eur_num_separator.c b/lib/unictype/pr_bidi_eur_num_separator.c new file mode 100644 index 000000000..53d3ea749 --- /dev/null +++ b/lib/unictype/pr_bidi_eur_num_separator.c @@ -0,0 +1,47 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_bidi_eur_num_separator table. */ +#include "pr_bidi_eur_num_separator.h" + +bool +uc_is_property_bidi_eur_num_separator (ucs4_t uc) +{ + return bitmap_lookup (&u_property_bidi_eur_num_separator, uc); +} + +#else + +bool +uc_is_property_bidi_eur_num_separator (ucs4_t uc) +{ + return (uc_bidi_category (uc) == UC_BIDI_ES); +} + +#endif + +const uc_property_t UC_PROPERTY_BIDI_EUR_NUM_SEPARATOR = + { &uc_is_property_bidi_eur_num_separator }; diff --git a/lib/unictype/pr_bidi_eur_num_separator.h b/lib/unictype/pr_bidi_eur_num_separator.h new file mode 100644 index 000000000..9d1d5cf75 --- /dev/null +++ b/lib/unictype/pr_bidi_eur_num_separator.h @@ -0,0 +1,172 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[5 << 4]; + } +u_property_bidi_eur_num_separator = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 64 + }, + { + 0x00000000, 0x00002800, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x0C000000, + 0x00000C00, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00040000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000200, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x0000000C, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00002800, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_bidi_eur_num_terminator.c b/lib/unictype/pr_bidi_eur_num_terminator.c new file mode 100644 index 000000000..de1f4ab92 --- /dev/null +++ b/lib/unictype/pr_bidi_eur_num_terminator.c @@ -0,0 +1,47 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_bidi_eur_num_terminator table. */ +#include "pr_bidi_eur_num_terminator.h" + +bool +uc_is_property_bidi_eur_num_terminator (ucs4_t uc) +{ + return bitmap_lookup (&u_property_bidi_eur_num_terminator, uc); +} + +#else + +bool +uc_is_property_bidi_eur_num_terminator (ucs4_t uc) +{ + return (uc_bidi_category (uc) == UC_BIDI_ET); +} + +#endif + +const uc_property_t UC_PROPERTY_BIDI_EUR_NUM_TERMINATOR = + { &uc_is_property_bidi_eur_num_terminator }; diff --git a/lib/unictype/pr_bidi_eur_num_terminator.h b/lib/unictype/pr_bidi_eur_num_terminator.h new file mode 100644 index 000000000..7915bd51c --- /dev/null +++ b/lib/unictype/pr_bidi_eur_num_terminator.h @@ -0,0 +1,188 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[9 << 4]; + } +u_property_bidi_eur_num_terminator = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 96, + 2 + 128 * sizeof (short) / sizeof (int) + 112, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 128 + }, + { + 0x00000000, 0x00000038, 0x00000000, 0x00000000, + 0x00000000, 0x0003003C, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000400, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x000C0000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00020000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x02000000, + 0x00000000, 0x80000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x08000000, 0x00000000, + 0x00000000, 0x001F0000, 0x00000000, 0x00000000, + 0x00000000, 0x003FFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00004000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00080000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x80000000, 0x00000600, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000038, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000063 + } +}; diff --git a/lib/unictype/pr_bidi_european_digit.c b/lib/unictype/pr_bidi_european_digit.c new file mode 100644 index 000000000..e27c5d3ac --- /dev/null +++ b/lib/unictype/pr_bidi_european_digit.c @@ -0,0 +1,47 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_bidi_european_digit table. */ +#include "pr_bidi_european_digit.h" + +bool +uc_is_property_bidi_european_digit (ucs4_t uc) +{ + return bitmap_lookup (&u_property_bidi_european_digit, uc); +} + +#else + +bool +uc_is_property_bidi_european_digit (ucs4_t uc) +{ + return (uc_bidi_category (uc) == UC_BIDI_EN); +} + +#endif + +const uc_property_t UC_PROPERTY_BIDI_EUROPEAN_DIGIT = + { &uc_is_property_bidi_european_digit }; diff --git a/lib/unictype/pr_bidi_european_digit.h b/lib/unictype/pr_bidi_european_digit.h new file mode 100644 index 000000000..ff54610e5 --- /dev/null +++ b/lib/unictype/pr_bidi_european_digit.h @@ -0,0 +1,307 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[6 << 4]; + } +u_property_bidi_european_digit = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x03FF0000, 0x00000000, 0x00000000, + 0x00000000, 0x020C0000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x03FF0000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x03F10000, + 0x000003FF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0FFFFF00, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x03FF0000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFFC000, 0xFFFFFFFF + } +}; diff --git a/lib/unictype/pr_bidi_hebrew_right_to_left.c b/lib/unictype/pr_bidi_hebrew_right_to_left.c new file mode 100644 index 000000000..9dced034b --- /dev/null +++ b/lib/unictype/pr_bidi_hebrew_right_to_left.c @@ -0,0 +1,47 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_bidi_hebrew_right_to_left table. */ +#include "pr_bidi_hebrew_right_to_left.h" + +bool +uc_is_property_bidi_hebrew_right_to_left (ucs4_t uc) +{ + return bitmap_lookup (&u_property_bidi_hebrew_right_to_left, uc); +} + +#else + +bool +uc_is_property_bidi_hebrew_right_to_left (ucs4_t uc) +{ + return (uc_bidi_category (uc) == UC_BIDI_R); +} + +#endif + +const uc_property_t UC_PROPERTY_BIDI_HEBREW_RIGHT_TO_LEFT = + { &uc_is_property_bidi_hebrew_right_to_left }; diff --git a/lib/unictype/pr_bidi_hebrew_right_to_left.h b/lib/unictype/pr_bidi_hebrew_right_to_left.h new file mode 100644 index 000000000..105bdd480 --- /dev/null +++ b/lib/unictype/pr_bidi_hebrew_right_to_left.h @@ -0,0 +1,315 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[8 << 4]; + } +u_property_bidi_hebrew_right_to_left = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 0, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00010000, 0x40000000, 0xFFFFFF49, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFFFFFF, 0xFC3007FF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00008000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xA0000000, 0xFFFFFDFF, 0x0000FFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x7FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFF0F91, 0x78FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF + } +}; diff --git a/lib/unictype/pr_bidi_left_to_right.c b/lib/unictype/pr_bidi_left_to_right.c new file mode 100644 index 000000000..fee8443c0 --- /dev/null +++ b/lib/unictype/pr_bidi_left_to_right.c @@ -0,0 +1,47 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_bidi_left_to_right table. */ +#include "pr_bidi_left_to_right.h" + +bool +uc_is_property_bidi_left_to_right (ucs4_t uc) +{ + return bitmap_lookup (&u_property_bidi_left_to_right, uc); +} + +#else + +bool +uc_is_property_bidi_left_to_right (ucs4_t uc) +{ + return (uc_bidi_category (uc) == UC_BIDI_L); +} + +#endif + +const uc_property_t UC_PROPERTY_BIDI_LEFT_TO_RIGHT = + { &uc_is_property_bidi_left_to_right }; diff --git a/lib/unictype/pr_bidi_left_to_right.h b/lib/unictype/pr_bidi_left_to_right.h new file mode 100644 index 000000000..7402e5000 --- /dev/null +++ b/lib/unictype/pr_bidi_left_to_right.h @@ -0,0 +1,698 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[17]; + short level2[4 << 7]; + /*unsigned*/ int level3[36 << 4]; + } +u_property_bidi_left_to_right = +{ + { 17 }, + { + 18 * sizeof (int) / sizeof (short) + 0, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256 + }, + { + 18 + 512 * sizeof (short) / sizeof (int) + 0, + 18 + 512 * sizeof (short) / sizeof (int) + 16, + 18 + 512 * sizeof (short) / sizeof (int) + 32, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 48, + 18 + 512 * sizeof (short) / sizeof (int) + 64, + 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) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 160, + 18 + 512 * sizeof (short) / sizeof (int) + 176, + 18 + 512 * sizeof (short) / sizeof (int) + 192, + 18 + 512 * sizeof (short) / sizeof (int) + 208, + 18 + 512 * sizeof (short) / sizeof (int) + 224, + 18 + 512 * sizeof (short) / sizeof (int) + 240, + 18 + 512 * sizeof (short) / sizeof (int) + 256, + 18 + 512 * sizeof (short) / sizeof (int) + 272, + 18 + 512 * sizeof (short) / sizeof (int) + 288, + 18 + 512 * sizeof (short) / sizeof (int) + 304, + 18 + 512 * sizeof (short) / sizeof (int) + 320, + 18 + 512 * sizeof (short) / sizeof (int) + 336, + 18 + 512 * sizeof (short) / sizeof (int) + 352, + 18 + 512 * sizeof (short) / sizeof (int) + 368, + 18 + 512 * sizeof (short) / sizeof (int) + 384, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 400, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 416, + 18 + 512 * sizeof (short) / sizeof (int) + 432, + 18 + 512 * sizeof (short) / sizeof (int) + 448, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 464, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 480, + 18 + 512 * sizeof (short) / sizeof (int) + 496, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + -1, + -1, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 512, + 18 + 512 * sizeof (short) / sizeof (int) + 528, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 544, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 560, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 560, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 560 + }, + { + 0x00000000, 0x00000000, 0x07FFFFFE, 0x07FFFFFE, + 0x00000000, 0x04200400, 0xFF7FFFFF, 0xFF7FFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xF9FFFFFF, 0x00030003, 0x0000401F, + 0x00000000, 0x00000000, 0x00000000, 0xBFCF0000, + 0xFFFFFF4F, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFBFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFC87, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x0000FBFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFF9, 0xEFFFFFFF, 0xFFE1DE01, 0xFFFFFFF3, + 0xFFFFFFFD, 0xEFFFFFFF, 0xFFFFDFE1, 0xFFF3FFF3, + 0xFFFFFFF9, 0xEFFFFFFF, 0xFFFFC679, 0xFFFCFFFF, + 0xFFFFFFF9, 0xEFFFFFFF, 0xFFFFDE41, 0xFFFDFFF3, + 0xFFFFFFFD, 0x6FFFFFFF, 0xFFBFDFF1, 0xFFFFFFFF, + 0xFFFFFFFB, 0xFFFFFFFF, 0xFFFFDFFE, 0xF807FFFF, + 0xFFFFFFFF, 0x3FFFFFFF, 0xFF9FC23E, 0xFFFFFFFF, + 0xFFFFFFFF, 0xEFFFFFFF, 0xFFFFCFFF, 0xFFF9FFF3, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFDFF1, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFA3FBFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x780DFFFF, 0xFFFF807F, 0xFFFFFFFF, + 0xFFFFFFFF, 0xE40DFFFF, 0xFFFFC0FF, 0xFFFFFFFF, + 0xFCFFFFFF, 0xC15FFFFF, 0xFFFFFFFF, 0x8001FFFF, + 0x0100FF20, 0xE0000000, 0xFFFFFFBF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFD3A1FFF, 0xFCFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF, 0xFFFFFFFF, + 0xFC00FFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xE7FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFE3FFFF, 0xFFE3FFFF, 0xFFF3FFFF, 0xFFF3FFFF, + 0xFFFFFFFF, 0xC07FFFFF, 0xD7F001BF, 0xFC00FFFF, + 0xFFFF8000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFDFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xF1FBF078, 0xFFFFFFCE, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x3FFFFFFF, 0x00000000, + 0xFE7FFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFF0, 0xE82FFFFF, 0xFFFFFFFB, 0xFFF007FF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFF800, 0x3FFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x5FFFFFFF, 0x1FFF1FFC, 0x9FFF1FFF, + 0x00004000, 0x00000000, 0x00000000, 0x800E0000, + 0xFFFF8000, 0xFFC00000, 0x0000FFFF, 0xFFFF0000, + 0x3E2FFC84, 0xF3FFBD50, 0x0007C3E0, 0xFFFFFFFF, + 0x0000FFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFC00000, 0xFFFFFFFF, 0x07FFFFFF, + 0x00200000, 0x00000000, 0x00000000, 0xFFFFFF00, + 0x00000000, 0xFFFFFF80, 0xFFFFF800, 0x00000000, + 0xF0000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x000003FF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xE0000000, 0xFFF81000, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000C21, 0x00000100, 0x80B85000, 0x00000001, + 0x00E00000, 0x80010000, 0x0000F800, 0x0000F000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xF8000000, 0xFFFFFFF0, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x01FFF81F, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xCF000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x04000000, 0x00000000, 0x00000000, 0xFFF00000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFC00000, 0xF000FFFF, + 0x000000E0, 0x1F3E03FE, 0xFFFFFFFF, 0xFFFFFFFF, + 0xE1FFFFFF, 0xFFFFFFFE, 0xFFFFFFFF, 0xF7FFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF0000, 0xFFFFFFFF, + 0x9FFFFFFF, 0xFFFFFFFF, 0x0000FFFF, 0x8FFFFFFF, + 0xFFFFFFFF, 0x0001FFFF, 0xFFFF0FFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xF87FFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x3FFFFFFF, 0x7FFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x0000FFFF, 0x00000000, 0xFFFFFF80, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xF8000000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFF7BB, 0xFFFFF09F, 0xFFFFFFFF, 0xFF0FFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x1FFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000001, 0x07FFFFFE, 0x07FFFFFE, 0xFFFFFFC0, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00008080, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFD, 0xFFFFFFFF, 0x00000000, 0x00000000, + 0xFFFFF800, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0007FC7F, + 0xFFFFF018, 0xFFFFC3FF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0xFFFFFFC0, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0xFF800000, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x00003FFF, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x3FFFFFFF + } +}; diff --git a/lib/unictype/pr_bidi_non_spacing_mark.c b/lib/unictype/pr_bidi_non_spacing_mark.c new file mode 100644 index 000000000..660d4c139 --- /dev/null +++ b/lib/unictype/pr_bidi_non_spacing_mark.c @@ -0,0 +1,47 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_bidi_non_spacing_mark table. */ +#include "pr_bidi_non_spacing_mark.h" + +bool +uc_is_property_bidi_non_spacing_mark (ucs4_t uc) +{ + return bitmap_lookup (&u_property_bidi_non_spacing_mark, uc); +} + +#else + +bool +uc_is_property_bidi_non_spacing_mark (ucs4_t uc) +{ + return (uc_bidi_category (uc) == UC_BIDI_NSM); +} + +#endif + +const uc_property_t UC_PROPERTY_BIDI_NON_SPACING_MARK = + { &uc_is_property_bidi_non_spacing_mark }; diff --git a/lib/unictype/pr_bidi_non_spacing_mark.h b/lib/unictype/pr_bidi_non_spacing_mark.h new file mode 100644 index 000000000..2318dcce3 --- /dev/null +++ b/lib/unictype/pr_bidi_non_spacing_mark.h @@ -0,0 +1,512 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[15]; + short level2[3 << 7]; + /*unsigned*/ int level3[22 << 4]; + } +u_property_bidi_non_spacing_mark = +{ + { 15 }, + { + 16 * sizeof (int) / sizeof (short) + 0, + 16 * sizeof (int) / sizeof (short) + 128, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 * sizeof (int) / sizeof (short) + 256 + }, + { + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 0, + 16 + 384 * sizeof (short) / sizeof (int) + 16, + 16 + 384 * sizeof (short) / sizeof (int) + 32, + 16 + 384 * sizeof (short) / sizeof (int) + 48, + 16 + 384 * sizeof (short) / sizeof (int) + 64, + 16 + 384 * sizeof (short) / sizeof (int) + 80, + 16 + 384 * sizeof (short) / sizeof (int) + 96, + 16 + 384 * sizeof (short) / sizeof (int) + 112, + 16 + 384 * sizeof (short) / sizeof (int) + 128, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 144, + 16 + 384 * sizeof (short) / sizeof (int) + 160, + 16 + 384 * sizeof (short) / sizeof (int) + 176, + 16 + 384 * sizeof (short) / sizeof (int) + 192, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 208, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 224, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 240, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 256, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 272, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 288, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 304, + 16 + 384 * sizeof (short) / sizeof (int) + 320, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 336, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000378, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFE0000, 0xBFFFFFFF, 0x000000B6, 0x00000000, + 0x003F0000, 0x00000000, 0x7FFFF800, 0x00010000, + 0x00000000, 0x00000000, 0xDFC00000, 0x00003D9F, + 0x00020000, 0xFFFF0000, 0x000007FF, 0x00000000, + 0x00000000, 0x0001FFC0, 0x00000000, 0x000FF800, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000006, 0x10000000, 0x001E21FE, 0x0000000C, + 0x00000002, 0x10000000, 0x0000201E, 0x0000000C, + 0x00000006, 0x10000000, 0x00003986, 0x00030000, + 0x00000006, 0x10000000, 0x000021BE, 0x0000000C, + 0x00000002, 0x90000000, 0x0040200E, 0x00000000, + 0x00000004, 0x00000000, 0x00002001, 0x00000000, + 0x00000000, 0xC0000000, 0x00603DC1, 0x00000000, + 0x00000000, 0x10000000, 0x00003000, 0x0000000C, + 0x00000000, 0x00000000, 0x0000200E, 0x00000000, + 0x00000000, 0x00000000, 0x005C0400, 0x00000000, + 0x00000000, 0x07F20000, 0x00007F80, 0x00000000, + 0x00000000, 0x1BF20000, 0x00003F00, 0x00000000, + 0x03000000, 0x02A00000, 0x00000000, 0x7FFE0000, + 0xFEFF00DF, 0x1FFFFFFF, 0x00000040, 0x00000000, + 0x00000000, 0x02C5E000, 0x03000000, 0x00000000, + 0x00000000, 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, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x001C0000, 0x001C0000, 0x000C0000, 0x000C0000, + 0x00000000, 0x3F800000, 0x200FFE40, 0x00000000, + 0x00003800, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000200, 0x00000000, 0x00000000, + 0x00000000, 0x0E040F87, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x01800000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000000F, 0x17D00000, 0x00000004, 0x000FF800, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x000007FF, 0xC0000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFF0000, 0x0000FFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x0000FC00, 0x00000000, 0x00000000, + 0x06000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000844, 0x00000060, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x40000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000FFFF, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000F06E, 0x87000000, 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, 0xF8000380, + 0x00000FE7, 0x00003C00, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x0000001C, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF + } +}; diff --git a/lib/unictype/pr_bidi_other_neutral.c b/lib/unictype/pr_bidi_other_neutral.c new file mode 100644 index 000000000..f87b5fbda --- /dev/null +++ b/lib/unictype/pr_bidi_other_neutral.c @@ -0,0 +1,47 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_bidi_other_neutral table. */ +#include "pr_bidi_other_neutral.h" + +bool +uc_is_property_bidi_other_neutral (ucs4_t uc) +{ + return bitmap_lookup (&u_property_bidi_other_neutral, uc); +} + +#else + +bool +uc_is_property_bidi_other_neutral (ucs4_t uc) +{ + return (uc_bidi_category (uc) == UC_BIDI_ON); +} + +#endif + +const uc_property_t UC_PROPERTY_BIDI_OTHER_NEUTRAL = + { &uc_is_property_bidi_other_neutral }; diff --git a/lib/unictype/pr_bidi_other_neutral.h b/lib/unictype/pr_bidi_other_neutral.h new file mode 100644 index 000000000..6dbb141c8 --- /dev/null +++ b/lib/unictype/pr_bidi_other_neutral.h @@ -0,0 +1,403 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[30 << 4]; + } +u_property_bidi_other_neutral = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + 3 + 256 * sizeof (short) / sizeof (int) + 144, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 160, + 3 + 256 * sizeof (short) / sizeof (int) + 176, + 3 + 256 * sizeof (short) / sizeof (int) + 192, + 3 + 256 * sizeof (short) / sizeof (int) + 208, + 3 + 256 * sizeof (short) / sizeof (int) + 224, + 3 + 256 * sizeof (short) / sizeof (int) + 240, + 3 + 256 * sizeof (short) / sizeof (int) + 256, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 288, + 3 + 256 * sizeof (short) / sizeof (int) + 304, + 3 + 256 * sizeof (short) / sizeof (int) + 320, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 336, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 352, + 3 + 256 * sizeof (short) / sizeof (int) + 368, + 3 + 256 * sizeof (short) / sizeof (int) + 384, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 400, + 3 + 256 * sizeof (short) / sizeof (int) + 416, + 3 + 256 * sizeof (short) / sizeof (int) + 432, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 448, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 464, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0xF80007C6, 0xF8000001, 0x78000001, + 0x00000000, 0xF9D0DBC2, 0x00800000, 0x00800000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x06000000, 0xFFFCFFFC, 0xFFFFBFE0, + 0x00000000, 0x00000000, 0x00000000, 0x40300000, + 0x000000B0, 0x00000000, 0x00000000, 0x00400000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000400, 0x00000000, 0x00000000, 0x00000000, + 0x0000C000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000200, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x03C00000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x05F80000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00060000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x3C000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x03FF0000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x18000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x03FF0000, + 0x000007FF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000031, 0x00000000, + 0x00000000, 0x00000000, 0xC0000000, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xA0000000, 0xE000E003, 0x6000E000, + 0xFFFF0000, 0xFFE000FF, 0x7FFFFFEF, 0x70000000, + 0x00007000, 0x00000000, 0x00000000, 0x00000000, + 0xC1D0037B, 0x0C0002AF, 0xFFF83C1F, 0x00000000, + 0xFFFF0000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFF3FFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x003FFFFF, 0x00000000, 0xF8000000, + 0xFFDFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000000FF, + 0xFFFFFFFF, 0x0000007F, 0x000007FF, 0xFFFFFFFF, + 0x000000FF, 0x00000000, 0x00000000, 0xFFFFFC00, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x1FFFFFFF, 0x0007EFFF, 0x00000000, 0x00000000, + 0xFFFFF3DE, 0xFFFFFEFF, 0x7F47AFFF, 0xFFFFFFFE, + 0xFF1FFFFF, 0x7FFEFFFF, 0xFFFF07FF, 0xFFFF0FFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x07FFFFFF, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFE0007E0, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x30FFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0xFBFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, 0x0FFF0000, + 0xFFFFFF1E, 0xE0C10001, 0x00000000, 0x00000000, + 0x18000000, 0x00000001, 0x00000000, 0x08000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x0000FFFF, 0x00000000, + 0x60000000, 0x00000000, 0xFFFF0000, 0x70000000, + 0x00000000, 0xFFFE0000, 0x0000F000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x07800000, + 0x00000000, 0x00000000, 0xC0000000, 0x80000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFF0000, 0xFFFFFFFF, 0x0000007F, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x07FFFFFF, 0x00000003, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000F00, 0x00000000, 0x00F00000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xC0000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x20000000, + 0x03FF0000, 0xFFFF0000, 0x7FD2FFFF, 0x00000973, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xF80007C6, 0xF8000001, 0xF8000001, 0x0000003F, + 0x00000000, 0x00000000, 0x00000000, 0x3E007F1C, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000002, 0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, + 0x000007FF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x80000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0x00000023, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_bidi_pdf.c b/lib/unictype/pr_bidi_pdf.c new file mode 100644 index 000000000..808a1efa7 --- /dev/null +++ b/lib/unictype/pr_bidi_pdf.c @@ -0,0 +1,47 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_bidi_pdf table. */ +#include "pr_bidi_pdf.h" + +bool +uc_is_property_bidi_pdf (ucs4_t uc) +{ + return bitmap_lookup (&u_property_bidi_pdf, uc); +} + +#else + +bool +uc_is_property_bidi_pdf (ucs4_t uc) +{ + return (uc_bidi_category (uc) == UC_BIDI_PDF); +} + +#endif + +const uc_property_t UC_PROPERTY_BIDI_PDF = + { &uc_is_property_bidi_pdf }; diff --git a/lib/unictype/pr_bidi_pdf.h b/lib/unictype/pr_bidi_pdf.h new file mode 100644 index 000000000..709f27de3 --- /dev/null +++ b/lib/unictype/pr_bidi_pdf.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[1 << 4]; + } +u_property_bidi_pdf = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00001000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_bidi_segment_separator.c b/lib/unictype/pr_bidi_segment_separator.c new file mode 100644 index 000000000..0b3b08af6 --- /dev/null +++ b/lib/unictype/pr_bidi_segment_separator.c @@ -0,0 +1,47 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_bidi_segment_separator table. */ +#include "pr_bidi_segment_separator.h" + +bool +uc_is_property_bidi_segment_separator (ucs4_t uc) +{ + return bitmap_lookup (&u_property_bidi_segment_separator, uc); +} + +#else + +bool +uc_is_property_bidi_segment_separator (ucs4_t uc) +{ + return (uc_bidi_category (uc) == UC_BIDI_S); +} + +#endif + +const uc_property_t UC_PROPERTY_BIDI_SEGMENT_SEPARATOR = + { &uc_is_property_bidi_segment_separator }; diff --git a/lib/unictype/pr_bidi_segment_separator.h b/lib/unictype/pr_bidi_segment_separator.h new file mode 100644 index 000000000..2b5a2bf6f --- /dev/null +++ b/lib/unictype/pr_bidi_segment_separator.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[1 << 4]; + } +u_property_bidi_segment_separator = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x80000A00, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_bidi_whitespace.c b/lib/unictype/pr_bidi_whitespace.c new file mode 100644 index 000000000..d16928a15 --- /dev/null +++ b/lib/unictype/pr_bidi_whitespace.c @@ -0,0 +1,47 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_bidi_whitespace table. */ +#include "pr_bidi_whitespace.h" + +bool +uc_is_property_bidi_whitespace (ucs4_t uc) +{ + return bitmap_lookup (&u_property_bidi_whitespace, uc); +} + +#else + +bool +uc_is_property_bidi_whitespace (ucs4_t uc) +{ + return (uc_bidi_category (uc) == UC_BIDI_WS); +} + +#endif + +const uc_property_t UC_PROPERTY_BIDI_WHITESPACE = + { &uc_is_property_bidi_whitespace }; diff --git a/lib/unictype/pr_bidi_whitespace.h b/lib/unictype/pr_bidi_whitespace.h new file mode 100644 index 000000000..85770a1bc --- /dev/null +++ b/lib/unictype/pr_bidi_whitespace.h @@ -0,0 +1,172 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[5 << 4]; + } +u_property_bidi_whitespace = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00001000, 0x00000001, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000001, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00004000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x000007FF, 0x00000100, 0x80000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000001, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_byname.c b/lib/unictype/pr_byname.c new file mode 100644 index 000000000..fae504319 --- /dev/null +++ b/lib/unictype/pr_byname.c @@ -0,0 +1,59 @@ +/* Properties of Unicode characters. + Copyright (C) 2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2007. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include + +/* Get gperf generated lookup function. */ +#include "pr_byname.h" + +static const uc_property_t UC_PROPERTY_NONE = { NULL }; + +uc_property_t +uc_property_byname (const char *property_name) +{ + char buf[MAX_WORD_LENGTH + 1]; + const char *cp; + char *bp; + unsigned int count; + const struct named_property *found; + + for (cp = property_name, bp = buf, count = MAX_WORD_LENGTH + 1; ; cp++, bp++) + { + unsigned char c = (unsigned char) *cp; + if (c >= 0x80) + goto invalid; + if (c >= 'A' && c <= 'Z') + c += 'a' - 'A'; + else if (c == ' ' || c == '-') + c = '_'; + *bp = c; + if (c == '\0') + break; + if (--count == 0) + goto invalid; + } + found = uc_property_lookup (buf, bp - buf); + if (found != NULL) + return found->property; + invalid: + return UC_PROPERTY_NONE; +} diff --git a/lib/unictype/pr_byname.gperf b/lib/unictype/pr_byname.gperf new file mode 100644 index 000000000..5d3daa0d0 --- /dev/null +++ b/lib/unictype/pr_byname.gperf @@ -0,0 +1,89 @@ +struct named_property { const char *name; uc_property_t property; }; +%struct-type +%language=ANSI-C +%define hash-function-name properties_hash +%define lookup-function-name uc_property_lookup +%7bit +%readonly-tables +%global-table +%define word-array-name properties +%% +white_space, { &uc_is_property_white_space } +alphabetic, { &uc_is_property_alphabetic } +other_alphabetic, { &uc_is_property_other_alphabetic } +not_a_character, { &uc_is_property_not_a_character } +default_ignorable_code_point, { &uc_is_property_default_ignorable_code_point } +other_default_ignorable_code_point, { &uc_is_property_other_default_ignorable_code_point } +deprecated, { &uc_is_property_deprecated } +logical_order_exception, { &uc_is_property_logical_order_exception } +variation_selector, { &uc_is_property_variation_selector } +private_use, { &uc_is_property_private_use } +unassigned_code_value, { &uc_is_property_unassigned_code_value } +uppercase, { &uc_is_property_uppercase } +other_uppercase, { &uc_is_property_other_uppercase } +lowercase, { &uc_is_property_lowercase } +other_lowercase, { &uc_is_property_other_lowercase } +titlecase, { &uc_is_property_titlecase } +soft_dotted, { &uc_is_property_soft_dotted } +id_start, { &uc_is_property_id_start } +other_id_start, { &uc_is_property_other_id_start } +id_continue, { &uc_is_property_id_continue } +other_id_continue, { &uc_is_property_other_id_continue } +xid_start, { &uc_is_property_xid_start } +xid_continue, { &uc_is_property_xid_continue } +pattern_white_space, { &uc_is_property_pattern_white_space } +pattern_syntax, { &uc_is_property_pattern_syntax } +join_control, { &uc_is_property_join_control } +grapheme_base, { &uc_is_property_grapheme_base } +grapheme_extend, { &uc_is_property_grapheme_extend } +other_grapheme_extend, { &uc_is_property_other_grapheme_extend } +grapheme_link, { &uc_is_property_grapheme_link } +bidi_control, { &uc_is_property_bidi_control } +bidi_left_to_right, { &uc_is_property_bidi_left_to_right } +bidi_hebrew_right_to_left, { &uc_is_property_bidi_hebrew_right_to_left } +bidi_arabic_right_to_left, { &uc_is_property_bidi_arabic_right_to_left } +bidi_european_digit, { &uc_is_property_bidi_european_digit } +bidi_eur_num_separator, { &uc_is_property_bidi_eur_num_separator } +bidi_eur_num_terminator, { &uc_is_property_bidi_eur_num_terminator } +bidi_arabic_digit, { &uc_is_property_bidi_arabic_digit } +bidi_common_separator, { &uc_is_property_bidi_common_separator } +bidi_block_separator, { &uc_is_property_bidi_block_separator } +bidi_segment_separator, { &uc_is_property_bidi_segment_separator } +bidi_whitespace, { &uc_is_property_bidi_whitespace } +bidi_non_spacing_mark, { &uc_is_property_bidi_non_spacing_mark } +bidi_boundary_neutral, { &uc_is_property_bidi_boundary_neutral } +bidi_pdf, { &uc_is_property_bidi_pdf } +bidi_embedding_or_override, { &uc_is_property_bidi_embedding_or_override } +bidi_other_neutral, { &uc_is_property_bidi_other_neutral } +hex_digit, { &uc_is_property_hex_digit } +ascii_hex_digit, { &uc_is_property_ascii_hex_digit } +ideographic, { &uc_is_property_ideographic } +unified_ideograph, { &uc_is_property_unified_ideograph } +radical, { &uc_is_property_radical } +ids_binary_operator, { &uc_is_property_ids_binary_operator } +ids_trinary_operator, { &uc_is_property_ids_trinary_operator } +zero_width, { &uc_is_property_zero_width } +space, { &uc_is_property_space } +non_break, { &uc_is_property_non_break } +iso_control, { &uc_is_property_iso_control } +format_control, { &uc_is_property_format_control } +dash, { &uc_is_property_dash } +hyphen, { &uc_is_property_hyphen } +punctuation, { &uc_is_property_punctuation } +line_separator, { &uc_is_property_line_separator } +paragraph_separator, { &uc_is_property_paragraph_separator } +quotation_mark, { &uc_is_property_quotation_mark } +sentence_terminal, { &uc_is_property_sentence_terminal } +terminal_punctuation, { &uc_is_property_terminal_punctuation } +currency_symbol, { &uc_is_property_currency_symbol } +math, { &uc_is_property_math } +other_math, { &uc_is_property_other_math } +paired_punctuation, { &uc_is_property_paired_punctuation } +left_of_pair, { &uc_is_property_left_of_pair } +combining, { &uc_is_property_combining } +composite, { &uc_is_property_composite } +decimal_digit, { &uc_is_property_decimal_digit } +numeric, { &uc_is_property_numeric } +diacritic, { &uc_is_property_diacritic } +extender, { &uc_is_property_extender } +ignorable_control, { &uc_is_property_ignorable_control } diff --git a/lib/unictype/pr_combining.c b/lib/unictype/pr_combining.c new file mode 100644 index 000000000..5332b3615 --- /dev/null +++ b/lib/unictype/pr_combining.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_combining table. */ +#include "pr_combining.h" + +bool +uc_is_property_combining (ucs4_t uc) +{ + return bitmap_lookup (&u_property_combining, uc); +} + +const uc_property_t UC_PROPERTY_COMBINING = + { &uc_is_property_combining }; diff --git a/lib/unictype/pr_combining.h b/lib/unictype/pr_combining.h new file mode 100644 index 000000000..6fd195e20 --- /dev/null +++ b/lib/unictype/pr_combining.h @@ -0,0 +1,512 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[15]; + short level2[3 << 7]; + /*unsigned*/ int level3[22 << 4]; + } +u_property_combining = +{ + { 15 }, + { + 16 * sizeof (int) / sizeof (short) + 0, + 16 * sizeof (int) / sizeof (short) + 128, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 * sizeof (int) / sizeof (short) + 256 + }, + { + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 0, + 16 + 384 * sizeof (short) / sizeof (int) + 16, + 16 + 384 * sizeof (short) / sizeof (int) + 32, + 16 + 384 * sizeof (short) / sizeof (int) + 48, + 16 + 384 * sizeof (short) / sizeof (int) + 64, + 16 + 384 * sizeof (short) / sizeof (int) + 80, + 16 + 384 * sizeof (short) / sizeof (int) + 96, + 16 + 384 * sizeof (short) / sizeof (int) + 112, + 16 + 384 * sizeof (short) / sizeof (int) + 128, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 144, + 16 + 384 * sizeof (short) / sizeof (int) + 160, + 16 + 384 * sizeof (short) / sizeof (int) + 176, + 16 + 384 * sizeof (short) / sizeof (int) + 192, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 208, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 224, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 240, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 256, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 272, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 288, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 304, + 16 + 384 * sizeof (short) / sizeof (int) + 320, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 336, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000378, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFE0000, 0xBFFFFFFF, 0x000000B6, 0x00000000, + 0x003F0000, 0x00000000, 0x7FFFF800, 0x00010000, + 0x00000000, 0x00000000, 0xDFC00000, 0x00003D9F, + 0x00020000, 0xFFFF0000, 0x000007FF, 0x00000000, + 0x00000000, 0x0001FFC0, 0x00000000, 0x000FF800, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000000E, 0xD0000000, 0x001E3FFF, 0x0000000C, + 0x0000000E, 0xD0000000, 0x0080399F, 0x0000000C, + 0x0000000E, 0xD0000000, 0x00003987, 0x00030000, + 0x0000000E, 0xD0000000, 0x00003BBF, 0x0000000C, + 0x0000000E, 0xD0000000, 0x00C0398F, 0x00000000, + 0x00000004, 0xC0000000, 0x00803DC7, 0x00000000, + 0x0000000E, 0xC0000000, 0x00603DDF, 0x00000000, + 0x0000000C, 0xD0000000, 0x00603DDF, 0x0000000C, + 0x0000000C, 0xC0000000, 0x00803DCF, 0x00000000, + 0x0000000C, 0x00000000, 0xFF5F8400, 0x000C0000, + 0x00000000, 0x07F20000, 0x00007F80, 0x00000000, + 0x00000000, 0x1BF20000, 0x00003F00, 0x00000000, + 0x03000000, 0xC2A00000, 0x00000000, 0xFFFE0000, + 0xFEFF00DF, 0x1FFFFFFF, 0x00000040, 0x00000000, + 0x00000000, 0x03C7F000, 0x03C00000, 0x00000000, + 0x00000000, 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, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x001C0000, 0x001C0000, 0x000C0000, 0x000C0000, + 0x00000000, 0xFFC00000, 0x200FFFFF, 0x00000000, + 0x00003800, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000200, 0x00000000, 0x00000000, + 0x00000000, 0x0FFF0FFF, 0x00000000, 0x00000000, + 0x00000000, 0xFFFF0000, 0x00000301, 0x00000000, + 0x0F800000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000001F, 0xFFF00000, 0x0000001F, 0x000FF800, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x000007FF, 0xC0000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFF0000, 0x0000FFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x0000FC00, 0x00000000, 0x00000000, + 0x06000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000844, 0x000000F8, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x40000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000FFFF, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000F06E, 0x87000000, 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, + 0x00000FE7, 0x00003C00, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x0000001C, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF + } +}; diff --git a/lib/unictype/pr_composite.c b/lib/unictype/pr_composite.c new file mode 100644 index 000000000..4f01ea861 --- /dev/null +++ b/lib/unictype/pr_composite.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_composite table. */ +#include "pr_composite.h" + +bool +uc_is_property_composite (ucs4_t uc) +{ + return bitmap_lookup (&u_property_composite, uc); +} + +const uc_property_t UC_PROPERTY_COMPOSITE = + { &uc_is_property_composite }; diff --git a/lib/unictype/pr_composite.h b/lib/unictype/pr_composite.h new file mode 100644 index 000000000..bfacbc95c --- /dev/null +++ b/lib/unictype/pr_composite.h @@ -0,0 +1,375 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[23 << 4]; + } +u_property_composite = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 144, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 160, + 3 + 256 * sizeof (short) / sizeof (int) + 176, + 3 + 256 * sizeof (short) / sizeof (int) + 192, + 3 + 256 * sizeof (short) / sizeof (int) + 208, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 224, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 240, + 3 + 256 * sizeof (short) / sizeof (int) + 256, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 288, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 304, + 3 + 256 * sizeof (short) / sizeof (int) + 320, + 3 + 256 * sizeof (short) / sizeof (int) + 336, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 352, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x70000000, 0x3E7EFFBF, 0xBE7EFFBF, + 0xFFFCFFFF, 0xFEFDFF3F, 0xFFF3F3F9, 0x7FFFFF3F, + 0x00000000, 0x00018003, 0xDFFFFFF0, 0xFF3FFFCF, + 0xCFFFFFFF, 0x000FFFC0, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000010, 0x00000000, + 0x0001D760, 0x0001FC00, 0x00187C00, 0x00000000, + 0x0200708B, 0x02000000, 0x708B0000, 0x00C00000, + 0x00000000, 0x00000000, 0xFCCF0006, 0x033FFCFC, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000080, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x0000007C, 0x00000000, 0x01E00000, + 0x00000000, 0x00000000, 0x00080005, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00120200, 0xFF000000, 0x00000000, + 0x00000000, 0x00000000, 0xB0001800, 0x00000000, + 0x00000000, 0x00480000, 0x4E000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x30001900, 0x00000000, + 0x00100000, 0x00000000, 0x00001C00, 0x00000000, + 0x00000000, 0x00000000, 0x00000100, 0x00000000, + 0x00000000, 0x00000000, 0x00000D81, 0x00000000, + 0x00000000, 0x00000000, 0x00001C00, 0x00000000, + 0x00000000, 0x00000000, 0x74000000, 0x00000000, + 0x00000000, 0x00080000, 0x00000000, 0x00000000, + 0x00000000, 0x00080000, 0x30000000, 0x00000000, + 0x00000000, 0x00000000, 0x10842008, 0x03E80200, + 0x20080002, 0x02001084, 0x00000000, 0x00000000, + 0x00000000, 0x00000040, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00045540, 0x28000000, 0x0000000B, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x0FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, + 0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x1555FFFF, + 0xFFFFFFFF, 0x17DFFFFF, 0xE7C7F5DE, 0x15DC37F7, + 0x00000000, 0x10D80060, 0x00800380, 0x00000000, + 0x00000000, 0x00000100, 0x00000000, 0x00000000, + 0x0040026B, 0x08000007, 0xFFF80000, 0x0DEE0DEE, + 0x0C000000, 0x00004000, 0x0000E000, 0x00000000, + 0x00001210, 0x0001B050, 0x00000292, 0x0333E005, + 0x00000333, 0x0000F000, 0x00000000, 0x00003C0F, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFFFFE00, + 0xFFFFFFFF, 0x003FFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00001000, 0x00000000, 0x00000000, 0x00700000, + 0x00000000, 0x00000000, 0x10000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x55555000, 0x36DB02A5, + 0xC0100000, 0x55555000, 0x36DB02A5, 0xC7900000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x7FFFFFFF, 0xFFFFFFFF, 0xFFFF000F, 0x7FFFC000, + 0x00000000, 0xFFFE0000, 0x0000FFFF, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0000001F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xA0F8007F, 0x5F7FFC00, 0x0000FFDB, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x0FFFFC00, + 0xFFFFFFFF, 0xFFFFFFFF, 0x3FFFFFFF, 0xFFFFFFF0, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x3FFFFFFF, 0xFFFF0000, 0xFFFFFFFF, + 0xFFFCFFFF, 0xFFFFFFFF, 0x000000FF, 0x1FFF0000, + 0x00000000, 0x00000000, 0x00000000, 0xAA820000, + 0x00000000, 0x00000000, 0x00000000, 0x1FE00000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xC0000000, 0x0000001F, + 0x00000000, 0xF8000000, 0x00000001, 0x00000000 + } +}; diff --git a/lib/unictype/pr_currency_symbol.c b/lib/unictype/pr_currency_symbol.c new file mode 100644 index 000000000..8a8723b3e --- /dev/null +++ b/lib/unictype/pr_currency_symbol.c @@ -0,0 +1,47 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_currency_symbol table. */ +#include "pr_currency_symbol.h" + +bool +uc_is_property_currency_symbol (ucs4_t uc) +{ + return bitmap_lookup (&u_property_currency_symbol, uc); +} + +#else + +bool +uc_is_property_currency_symbol (ucs4_t uc) +{ + return uc_is_general_category (uc, UC_CATEGORY_Sc); +} + +#endif + +const uc_property_t UC_PROPERTY_CURRENCY_SYMBOL = + { &uc_is_property_currency_symbol }; diff --git a/lib/unictype/pr_currency_symbol.h b/lib/unictype/pr_currency_symbol.h new file mode 100644 index 000000000..8ce0c6d08 --- /dev/null +++ b/lib/unictype/pr_currency_symbol.h @@ -0,0 +1,188 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[9 << 4]; + } +u_property_currency_symbol = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 96, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 112, + 2 + 128 * sizeof (short) / sizeof (int) + 128 + }, + { + 0x00000000, 0x00000010, 0x00000000, 0x00000000, + 0x00000000, 0x0000003C, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000800, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x000C0000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00020000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x02000000, + 0x00000000, 0x80000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x08000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x003FFFFF, 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, 0x10000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000200, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000010, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000063 + } +}; diff --git a/lib/unictype/pr_dash.c b/lib/unictype/pr_dash.c new file mode 100644 index 000000000..16bccad1f --- /dev/null +++ b/lib/unictype/pr_dash.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_dash table. */ +#include "pr_dash.h" + +bool +uc_is_property_dash (ucs4_t uc) +{ + return bitmap_lookup (&u_property_dash, uc); +} + +const uc_property_t UC_PROPERTY_DASH = + { &uc_is_property_dash }; diff --git a/lib/unictype/pr_dash.h b/lib/unictype/pr_dash.h new file mode 100644 index 000000000..7e3116437 --- /dev/null +++ b/lib/unictype/pr_dash.h @@ -0,0 +1,184 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[8 << 4]; + } +u_property_dash = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 80, + 2 + 128 * sizeof (short) / sizeof (int) + 96, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 112 + }, + { + 0x00000000, 0x00002000, 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, + 0x00000400, 0x40000000, 0x00000000, 0x00000000, + 0x00000040, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x003F0000, 0x00000000, 0x00080000, 0x08000000, + 0x00000800, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00040000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00800000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x10000000, 0x00010000, 0x00000000, 0x00000000, + 0x00000000, 0x00000001, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00060000, 0x01000000, 0x00000008, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00002000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_decimal_digit.c b/lib/unictype/pr_decimal_digit.c new file mode 100644 index 000000000..e344158a6 --- /dev/null +++ b/lib/unictype/pr_decimal_digit.c @@ -0,0 +1,47 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_decimal_digit table. */ +#include "pr_decimal_digit.h" + +bool +uc_is_property_decimal_digit (ucs4_t uc) +{ + return bitmap_lookup (&u_property_decimal_digit, uc); +} + +#else + +bool +uc_is_property_decimal_digit (ucs4_t uc) +{ + return uc_is_general_category (uc, UC_CATEGORY_Nd); +} + +#endif + +const uc_property_t UC_PROPERTY_DECIMAL_DIGIT = + { &uc_is_property_decimal_digit }; diff --git a/lib/unictype/pr_decimal_digit.h b/lib/unictype/pr_decimal_digit.h new file mode 100644 index 000000000..6882b3013 --- /dev/null +++ b/lib/unictype/pr_decimal_digit.h @@ -0,0 +1,335 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[13 << 4]; + } +u_property_decimal_digit = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + -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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 160, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 176, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 192, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x03FF0000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x000003FF, + 0x00000000, 0x00000000, 0x00000000, 0x03FF0000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x000003FF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x03FF0000, 0x00000000, + 0x00000000, 0x00000000, 0x03FF0000, 0x00000000, + 0x00000000, 0x000003FF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x000003FF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x000003FF, + 0x03FF0000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x0000FFC0, 0x00000000, + 0x00000000, 0x00000000, 0x03FF0000, 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, + 0x03FF0000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x000003FF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFFC000, 0xFFFFFFFF + } +}; diff --git a/lib/unictype/pr_default_ignorable_code_point.c b/lib/unictype/pr_default_ignorable_code_point.c new file mode 100644 index 000000000..f4b7f19e5 --- /dev/null +++ b/lib/unictype/pr_default_ignorable_code_point.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_default_ignorable_code_point table. */ +#include "pr_default_ignorable_code_point.h" + +bool +uc_is_property_default_ignorable_code_point (ucs4_t uc) +{ + return bitmap_lookup (&u_property_default_ignorable_code_point, uc); +} + +const uc_property_t UC_PROPERTY_DEFAULT_IGNORABLE_CODE_POINT = + { &uc_is_property_default_ignorable_code_point }; diff --git a/lib/unictype/pr_default_ignorable_code_point.h b/lib/unictype/pr_default_ignorable_code_point.h new file mode 100644 index 000000000..bf71dfc1c --- /dev/null +++ b/lib/unictype/pr_default_ignorable_code_point.h @@ -0,0 +1,606 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[17]; + short level2[4 << 7]; + /*unsigned*/ int level3[13 << 4]; + } +u_property_default_ignorable_code_point = +{ + { 17 }, + { + 18 * sizeof (int) / sizeof (short) + 0, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 384, + 18 * sizeof (int) / sizeof (short) + 256, + 18 * sizeof (int) / sizeof (short) + 256 + }, + { + 18 + 512 * sizeof (short) / sizeof (int) + 0, + 18 + 512 * sizeof (short) / sizeof (int) + 16, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 64, + 18 + 512 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 96, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 112, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 144, + 18 + 512 * sizeof (short) / sizeof (int) + 160, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 176, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 192, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 192, + 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) + 128, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 512 * sizeof (short) / sizeof (int) + 192 + }, + { + 0xFFFFC1FF, 0x00000000, 0x00000000, 0x80000000, + 0xFFFFFFDF, 0x00002000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00008000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000000F, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x20000000, 0x00000000, + 0x00008000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x80000000, 0x00000001, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00300000, 0x00000000, 0x00000000, + 0x00003800, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000F800, 0x00007C00, 0x00000000, 0x0000FFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000010, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFF0000, 0x0000FFFF, + 0x0000FFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x80000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000001, 0x00000000, 0xC1FF0000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x07F80000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xC0000000 + } +}; diff --git a/lib/unictype/pr_deprecated.c b/lib/unictype/pr_deprecated.c new file mode 100644 index 000000000..2b3903b41 --- /dev/null +++ b/lib/unictype/pr_deprecated.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_deprecated table. */ +#include "pr_deprecated.h" + +bool +uc_is_property_deprecated (ucs4_t uc) +{ + return bitmap_lookup (&u_property_deprecated, uc); +} + +const uc_property_t UC_PROPERTY_DEPRECATED = + { &uc_is_property_deprecated }; diff --git a/lib/unictype/pr_deprecated.h b/lib/unictype/pr_deprecated.h new file mode 100644 index 000000000..809b1a6ed --- /dev/null +++ b/lib/unictype/pr_deprecated.h @@ -0,0 +1,164 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[3 << 4]; + } +u_property_deprecated = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 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, 0x00000008, 0x00080000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x0000FC00, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_diacritic.c b/lib/unictype/pr_diacritic.c new file mode 100644 index 000000000..f541cd12f --- /dev/null +++ b/lib/unictype/pr_diacritic.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_diacritic table. */ +#include "pr_diacritic.h" + +bool +uc_is_property_diacritic (ucs4_t uc) +{ + return bitmap_lookup (&u_property_diacritic, uc); +} + +const uc_property_t UC_PROPERTY_DIACRITIC = + { &uc_is_property_diacritic }; diff --git a/lib/unictype/pr_diacritic.h b/lib/unictype/pr_diacritic.h new file mode 100644 index 000000000..5906bc6dd --- /dev/null +++ b/lib/unictype/pr_diacritic.h @@ -0,0 +1,359 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[19 << 4]; + } +u_property_diacritic = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 144, + 3 + 256 * sizeof (short) / sizeof (int) + 160, + 3 + 256 * sizeof (short) / sizeof (int) + 176, + 3 + 256 * sizeof (short) / sizeof (int) + 192, + 3 + 256 * sizeof (short) / sizeof (int) + 208, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 224, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 240, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 256, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 288, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x40000000, 0x00000001, + 0x00000000, 0x01908100, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFFF0000, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xE0FF7FFF, 0x04300007, + 0x00000030, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000078, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x02000000, 0x00000000, + 0xFFFE0000, 0xBFFFFFFB, 0x00000016, 0x00000000, + 0x00000000, 0x00000000, 0x0187F800, 0x00000000, + 0x00000000, 0x00000000, 0x80000000, 0x00001C61, + 0x00000000, 0xFFFF0000, 0x000007FF, 0x00000000, + 0x00000000, 0x0001FFC0, 0x00000000, 0x003FF800, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x10000000, 0x001E2000, 0x00000000, + 0x00000000, 0x10000000, 0x00002000, 0x00000000, + 0x00000000, 0x10000000, 0x00002000, 0x00000000, + 0x00000000, 0x10000000, 0x00002000, 0x00000000, + 0x00000000, 0x10000000, 0x00002000, 0x00000000, + 0x00000000, 0x00000000, 0x00002000, 0x00000000, + 0x00000000, 0x00000000, 0x00002000, 0x00000000, + 0x00000000, 0x10000000, 0x00002000, 0x00000000, + 0x00000000, 0x00000000, 0x00002000, 0x00000000, + 0x00000000, 0x00000000, 0x00000400, 0x00000000, + 0x00000000, 0x00000000, 0x00005F80, 0x00000000, + 0x00000000, 0x00000000, 0x00001F00, 0x00000000, + 0x03000000, 0xC2A00000, 0x00000000, 0x00000000, + 0x000000DC, 0x00000000, 0x00000040, 0x00000000, + 0x00000000, 0x02800000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x200FFE00, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x0E000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00100000, 0x00000010, 0x000FF800, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFFFF000, 0xFFFFFFFF, 0x000007FF, + 0x00000000, 0x00000000, 0x000007F0, 0xC0000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xA0000000, 0xE000E003, 0x6000E000, + 0x00000000, 0x0000FC00, 0x00000000, 0x00000000, + 0x1E000000, 0x00000000, 0x00000000, 0x10000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x07800000, 0x00000003, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x40000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x40000000, 0x00000001, 0x00010000, + 0xC0000000, 0x00000000, 0x00000000, 0x00000008, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xF807E380, + 0x00000FE7, 0x00003C00, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_extender.c b/lib/unictype/pr_extender.c new file mode 100644 index 000000000..25f11f67c --- /dev/null +++ b/lib/unictype/pr_extender.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_extender table. */ +#include "pr_extender.h" + +bool +uc_is_property_extender (ucs4_t uc) +{ + return bitmap_lookup (&u_property_extender, uc); +} + +const uc_property_t UC_PROPERTY_EXTENDER = + { &uc_is_property_extender }; diff --git a/lib/unictype/pr_extender.h b/lib/unictype/pr_extender.h new file mode 100644 index 000000000..33a6a0a17 --- /dev/null +++ b/lib/unictype/pr_extender.h @@ -0,0 +1,184 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[8 << 4]; + } +u_property_extender = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 96, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 112 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00800000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00030000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000001, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x04000000, + 0x00000000, 0x00000000, 0x00000040, 0x00000000, + 0x00000000, 0x00000000, 0x00000040, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000008, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000020, 0x003E0000, 0x00000000, 0x00000000, + 0x60000000, 0x00000000, 0x00000000, 0x70000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00200000, 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, 0x00010000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_format_control.c b/lib/unictype/pr_format_control.c new file mode 100644 index 000000000..f63bb299c --- /dev/null +++ b/lib/unictype/pr_format_control.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_format_control table. */ +#include "pr_format_control.h" + +bool +uc_is_property_format_control (ucs4_t uc) +{ + return bitmap_lookup (&u_property_format_control, uc); +} + +const uc_property_t UC_PROPERTY_FORMAT_CONTROL = + { &uc_is_property_format_control }; diff --git a/lib/unictype/pr_format_control.h b/lib/unictype/pr_format_control.h new file mode 100644 index 000000000..ce8e9950c --- /dev/null +++ b/lib/unictype/pr_format_control.h @@ -0,0 +1,444 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[15]; + short level2[3 << 7]; + /*unsigned*/ int level3[5 << 4]; + } +u_property_format_control = +{ + { 15 }, + { + 16 * sizeof (int) / sizeof (short) + 0, + 16 * sizeof (int) / sizeof (short) + 128, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 * sizeof (int) / sizeof (short) + 256 + }, + { + 16 + 384 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 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, 0x0000FC0F, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x07F80000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000002, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_grapheme_base.c b/lib/unictype/pr_grapheme_base.c new file mode 100644 index 000000000..6b090bc21 --- /dev/null +++ b/lib/unictype/pr_grapheme_base.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_grapheme_base table. */ +#include "pr_grapheme_base.h" + +bool +uc_is_property_grapheme_base (ucs4_t uc) +{ + return bitmap_lookup (&u_property_grapheme_base, uc); +} + +const uc_property_t UC_PROPERTY_GRAPHEME_BASE = + { &uc_is_property_grapheme_base }; diff --git a/lib/unictype/pr_grapheme_base.h b/lib/unictype/pr_grapheme_base.h new file mode 100644 index 000000000..3401ba2f0 --- /dev/null +++ b/lib/unictype/pr_grapheme_base.h @@ -0,0 +1,608 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[3]; + short level2[3 << 7]; + /*unsigned*/ int level3[49 << 4]; + } +u_property_grapheme_base = +{ + { 3 }, + { + 4 * sizeof (int) / sizeof (short) + 0, + 4 * sizeof (int) / sizeof (short) + 128, + 4 * sizeof (int) / sizeof (short) + 256 + }, + { + 4 + 384 * sizeof (short) / sizeof (int) + 0, + 4 + 384 * sizeof (short) / sizeof (int) + 16, + 4 + 384 * sizeof (short) / sizeof (int) + 32, + 4 + 384 * sizeof (short) / sizeof (int) + 48, + 4 + 384 * sizeof (short) / sizeof (int) + 64, + 4 + 384 * sizeof (short) / sizeof (int) + 80, + 4 + 384 * sizeof (short) / sizeof (int) + 96, + 4 + 384 * sizeof (short) / sizeof (int) + 112, + 4 + 384 * sizeof (short) / sizeof (int) + 128, + 4 + 384 * sizeof (short) / sizeof (int) + 144, + 4 + 384 * sizeof (short) / sizeof (int) + 160, + 4 + 384 * sizeof (short) / sizeof (int) + 176, + 4 + 384 * sizeof (short) / sizeof (int) + 192, + 4 + 384 * sizeof (short) / sizeof (int) + 208, + 4 + 384 * sizeof (short) / sizeof (int) + 224, + 4 + 384 * sizeof (short) / sizeof (int) + 240, + 4 + 384 * sizeof (short) / sizeof (int) + 256, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 336, + 4 + 384 * sizeof (short) / sizeof (int) + 352, + 4 + 384 * sizeof (short) / sizeof (int) + 368, + 4 + 384 * sizeof (short) / sizeof (int) + 384, + 4 + 384 * sizeof (short) / sizeof (int) + 400, + 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) + 320, + 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) + 320, + 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) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 416, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 432, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 448, + 4 + 384 * sizeof (short) / sizeof (int) + 464, + 4 + 384 * sizeof (short) / sizeof (int) + 480, + -1, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 496, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 512, + 4 + 384 * sizeof (short) / sizeof (int) + 528, + 4 + 384 * sizeof (short) / sizeof (int) + 544, + 4 + 384 * sizeof (short) / sizeof (int) + 560, + 4 + 384 * sizeof (short) / sizeof (int) + 576, + 4 + 384 * sizeof (short) / sizeof (int) + 592, + 4 + 384 * sizeof (short) / sizeof (int) + 608, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 624, + 4 + 384 * sizeof (short) / sizeof (int) + 640, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 656, + 4 + 384 * sizeof (short) / sizeof (int) + 672, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 320, + 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) + 752, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 4 + 384 * sizeof (short) / sizeof (int) + 768, + -1, + -1 + }, + { + 0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF, + 0x00000000, 0xFFFFDFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x7C300000, + 0xFFFFD7F0, 0xFFFFFFFB, 0xFFFF7FFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFC07, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x000FFFFF, 0xFFFE0000, 0xFE7FFFFF, 0xFFFFFFFE, + 0x000006FF, 0x40000000, 0xFFFF0049, 0x001F07FF, + 0xC800F800, 0x07FFFFFE, 0x000007FF, 0xFFFEFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, 0xFFFFC260, + 0xFFFD3FFF, 0x0000FFFF, 0xFFFFE000, 0x00003FFF, + 0xFFFFFFFF, 0x0002003F, 0xFFFFFFFF, 0x07F007FF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFF8, 0xE3FFFFFF, 0xFF011E01, 0xF801FFF3, + 0xFFF99FEC, 0xA3C5FDFF, 0xB0005981, 0x07FFFFC3, + 0xFFF987E8, 0xC36DFDFF, 0x5E000001, 0x001CFFC0, + 0xFFFBBFE8, 0xE3EDFDFF, 0x00011A01, 0x0002FFC3, + 0xFFF99FEC, 0x23EDFDFF, 0xB0001981, 0x0003FFC3, + 0xD63DC7E8, 0x83FFC718, 0x00001DC6, 0x07FFFFC0, + 0xFFFDDFEE, 0x03EFFDFF, 0x0000001E, 0x0000FFC3, + 0xFFFDDFEC, 0x63EFFDFF, 0x40000D9B, 0x0006FFC3, + 0xFFFDDFEC, 0x83FFFDFF, 0x00001DC1, 0x0000FFC3, + 0xFC7FFFEC, 0x2FFBFFFF, 0x7F03007F, 0x001C0000, + 0xFFFFFFFE, 0x800DFFFF, 0x0FFF807F, 0x00000000, + 0xFEF02596, 0x200DECAE, 0x33FF005F, 0x00000000, + 0xFCFFFFFF, 0xFD5FFFFF, 0xFFFFFEFF, 0x800007FF, + 0x00000F20, 0xC0000000, 0x00039FBF, 0x00000000, + 0xFFFFFFFF, 0x010216FB, 0x00FFFFFF, 0x00000000, + 0x00000000, 0xFFFFFFFF, 0xFFFF003F, 0x1FFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x83FFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF07, 0xFFFFFFFF, 0x03FFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x3D7F3DFF, 0xFFFFFFFF, + 0xFFFF3DFF, 0x7F3DFFFF, 0xFF7FFF3D, 0xFFFFFFFF, + 0xFF3DFFFF, 0xFFFFFFFF, 0x07FFFFFF, 0x1FFFFFFF, + 0x03FFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x001FFFFF, + 0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, + 0x1FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0001FFFF, + 0x0003DFFF, 0x0063FFFF, 0x0003FFFF, 0x0001DFFF, + 0xFFFFFFFF, 0xC04FFFFF, 0x1FF001BF, 0x03FF03FF, + 0x03FF47FF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF, + 0xFFFFFFFF, 0x000001FF, 0x00000000, 0x00000000, + 0x1FFFFFFF, 0x01FB0E78, 0xFFFFFFF1, 0x001F3FFF, + 0xFFFFFFFF, 0xFFFF03FF, 0xC3FF03FF, 0xFFFFFFFF, + 0xCE7FFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFF0, 0xE82FFFFF, 0xFFFF0FFB, 0x1FF007FF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x0FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, + 0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF, + 0xFFFFFFFF, 0xFFDFFFFF, 0xEFCFFFDF, 0x7FDCFFFF, + 0xFFFF07FF, 0xFFFF80FF, 0xFFFFFFFF, 0xFFF30000, + 0x001F7FFF, 0x003FFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFF87FFF, 0xFFFFFFFF, + 0xFFFF001F, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000000FF, + 0xFFFFFFFF, 0x0000007F, 0x000007FF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x1FFFFFFF, 0x0007FFFF, 0x00000000, 0x00000000, + 0xFFFFF3DE, 0xFFFFFEFF, 0x7F47AFFF, 0xFFFFFFFE, + 0xFF1FFFFF, 0x7FFEFFFF, 0xFFFF07FF, 0xFFFF0FFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x07FFFFFF, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFF7FFF, 0x7FFFFFFF, 0x00F01FFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFE0007FF, + 0xFFFFFFFF, 0xFFFF003F, 0xFFFFFFFF, 0x0000803F, + 0x007FFFFF, 0x7F7F7F7F, 0x7F7F7F7F, 0x00000000, + 0x30FFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0xFBFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, 0x0FFF0000, + 0xFFFFFFFF, 0xFFFF03FF, 0xFFFFFFFE, 0xFFFFFFFF, + 0xF87FFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFE0, 0xFFFE1FFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFF7FFF, 0x00FFFFFF, 0x0000FFFF, 0xFFFF0000, + 0x7FFFFFFF, 0xFFFFFFFF, 0xFFFF000F, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x7FFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x003FFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0FFFFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFF1FFF, 0xFFFFFFFF, 0x0000007F, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x07FFFFFF, 0x00000003, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFF7BF, 0x00000F9F, 0xFFFFFFFF, 0x00FFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFF3FFF, 0xFFFFFFFF, 0xFFFF07FF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, 0x00000000, + 0xA0F8007F, 0x5F7FFFFF, 0xFFFFFFDB, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0003FFFF, 0xFFF80000, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFF0000, 0xFFFFFFFF, + 0xFFFCFFFF, 0xFFFFFFFF, 0x000000FF, 0x3FFF0000, + 0x03FF0000, 0xFFFF0000, 0xFFF7FFFF, 0xFFDF0F7F, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFFFFFF, + 0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x7FFFFFFF, 0x1CFCFCFC, 0x30007F7F, + 0xFFFFEFFF, 0xB7FFFF7F, 0x3FFF3FFF, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF, + 0xFFFFFF87, 0xFF8FFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x000007FF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x7FFFFFFF, 0xFFFF000F, 0x000007FF, 0x00000000, + 0xBFFFFFFF, 0xFFFFFFFF, 0x003FFF0F, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x3FFFFFFF, 0x000003FF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFD3F, 0x91BFFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x83FFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFEEF0001, 0x000FFFFF, 0x01FF00FF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000F0007, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, + 0xFFFFFFFF, 0xFFFFFC7F, 0xFFFFFFFF, 0x00003C5F, + 0xFFFFF018, 0xFFFFC3FF, 0x3FFFFFFF, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0x00000023, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x0003FFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF, + 0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF, + 0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF3F, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFCFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_grapheme_extend.c b/lib/unictype/pr_grapheme_extend.c new file mode 100644 index 000000000..c51e82ebc --- /dev/null +++ b/lib/unictype/pr_grapheme_extend.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_grapheme_extend table. */ +#include "pr_grapheme_extend.h" + +bool +uc_is_property_grapheme_extend (ucs4_t uc) +{ + return bitmap_lookup (&u_property_grapheme_extend, uc); +} + +const uc_property_t UC_PROPERTY_GRAPHEME_EXTEND = + { &uc_is_property_grapheme_extend }; diff --git a/lib/unictype/pr_grapheme_extend.h b/lib/unictype/pr_grapheme_extend.h new file mode 100644 index 000000000..46664e51c --- /dev/null +++ b/lib/unictype/pr_grapheme_extend.h @@ -0,0 +1,512 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[15]; + short level2[3 << 7]; + /*unsigned*/ int level3[22 << 4]; + } +u_property_grapheme_extend = +{ + { 15 }, + { + 16 * sizeof (int) / sizeof (short) + 0, + 16 * sizeof (int) / sizeof (short) + 128, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 * sizeof (int) / sizeof (short) + 256 + }, + { + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 0, + 16 + 384 * sizeof (short) / sizeof (int) + 16, + 16 + 384 * sizeof (short) / sizeof (int) + 32, + 16 + 384 * sizeof (short) / sizeof (int) + 48, + 16 + 384 * sizeof (short) / sizeof (int) + 64, + 16 + 384 * sizeof (short) / sizeof (int) + 80, + 16 + 384 * sizeof (short) / sizeof (int) + 96, + 16 + 384 * sizeof (short) / sizeof (int) + 112, + 16 + 384 * sizeof (short) / sizeof (int) + 128, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 144, + 16 + 384 * sizeof (short) / sizeof (int) + 160, + 16 + 384 * sizeof (short) / sizeof (int) + 176, + 16 + 384 * sizeof (short) / sizeof (int) + 192, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 208, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 224, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 240, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 256, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 272, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 288, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 304, + 16 + 384 * sizeof (short) / sizeof (int) + 320, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 336, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000378, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFE0000, 0xBFFFFFFF, 0x000000B6, 0x00000000, + 0x003F0000, 0x00000000, 0x7FFFF800, 0x00010000, + 0x00000000, 0x00000000, 0xDFC00000, 0x00003D9F, + 0x00020000, 0xFFFF0000, 0x000007FF, 0x00000000, + 0x00000000, 0x0001FFC0, 0x00000000, 0x000FF800, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000006, 0x10000000, 0x001E21FE, 0x0000000C, + 0x00000002, 0x50000000, 0x0080201E, 0x0000000C, + 0x00000006, 0x10000000, 0x00003986, 0x00030000, + 0x00000006, 0x10000000, 0x000021BE, 0x0000000C, + 0x00000002, 0xD0000000, 0x00C0200E, 0x00000000, + 0x00000004, 0x40000000, 0x00802001, 0x00000000, + 0x00000000, 0xC0000000, 0x00603DC1, 0x00000000, + 0x00000000, 0x90000000, 0x00603044, 0x0000000C, + 0x00000000, 0x40000000, 0x0080200E, 0x00000000, + 0x00000000, 0x00000000, 0x805C8400, 0x00000000, + 0x00000000, 0x07F20000, 0x00007F80, 0x00000000, + 0x00000000, 0x1BF20000, 0x00003F00, 0x00000000, + 0x03000000, 0x02A00000, 0x00000000, 0x7FFE0000, + 0xFEFF00DF, 0x1FFFFFFF, 0x00000040, 0x00000000, + 0x00000000, 0x02C5E000, 0x03000000, 0x00000000, + 0x00000000, 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, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x001C0000, 0x001C0000, 0x000C0000, 0x000C0000, + 0x00000000, 0x3F800000, 0x200FFE40, 0x00000000, + 0x00003800, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000200, 0x00000000, 0x00000000, + 0x00000000, 0x0E040187, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x01800000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000000F, 0x17D00000, 0x00000004, 0x000FF800, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x000007FF, 0xC0000000, + 0x00003000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFF0000, 0x0000FFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x0000FC00, 0x00000000, 0x00000000, + 0x06000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000840, 0x00000060, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x40000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000FFFF, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000F06E, 0x87000000, 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, 0xF807C3A0, + 0x00000FE7, 0x00003C00, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x0000001C, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF + } +}; diff --git a/lib/unictype/pr_grapheme_link.c b/lib/unictype/pr_grapheme_link.c new file mode 100644 index 000000000..e7aa1335b --- /dev/null +++ b/lib/unictype/pr_grapheme_link.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_grapheme_link table. */ +#include "pr_grapheme_link.h" + +bool +uc_is_property_grapheme_link (ucs4_t uc) +{ + return bitmap_lookup (&u_property_grapheme_link, uc); +} + +const uc_property_t UC_PROPERTY_GRAPHEME_LINK = + { &uc_is_property_grapheme_link }; diff --git a/lib/unictype/pr_grapheme_link.h b/lib/unictype/pr_grapheme_link.h new file mode 100644 index 000000000..45e55dcfc --- /dev/null +++ b/lib/unictype/pr_grapheme_link.h @@ -0,0 +1,319 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[9 << 4]; + } +u_property_grapheme_link = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 0, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00002000, 0x00000000, + 0x00000000, 0x00000000, 0x00002000, 0x00000000, + 0x00000000, 0x00000000, 0x00002000, 0x00000000, + 0x00000000, 0x00000000, 0x00002000, 0x00000000, + 0x00000000, 0x00000000, 0x00002000, 0x00000000, + 0x00000000, 0x00000000, 0x00002000, 0x00000000, + 0x00000000, 0x00000000, 0x00002000, 0x00000000, + 0x00000000, 0x00000000, 0x00002000, 0x00000000, + 0x00000000, 0x00000000, 0x00002000, 0x00000000, + 0x00000000, 0x00000000, 0x00000400, 0x00000000, + 0x00000000, 0x04000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000010, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x02000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00100000, 0x00100000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00040000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000010, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000040, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x80000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_hex_digit.c b/lib/unictype/pr_hex_digit.c new file mode 100644 index 000000000..09357b986 --- /dev/null +++ b/lib/unictype/pr_hex_digit.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_hex_digit table. */ +#include "pr_hex_digit.h" + +bool +uc_is_property_hex_digit (ucs4_t uc) +{ + return bitmap_lookup (&u_property_hex_digit, uc); +} + +const uc_property_t UC_PROPERTY_HEX_DIGIT = + { &uc_is_property_hex_digit }; diff --git a/lib/unictype/pr_hex_digit.h b/lib/unictype/pr_hex_digit.h new file mode 100644 index 000000000..54b1b71ab --- /dev/null +++ b/lib/unictype/pr_hex_digit.h @@ -0,0 +1,160 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[2 << 4]; + } +u_property_hex_digit = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16 + }, + { + 0x00000000, 0x03FF0000, 0x0000007E, 0x0000007E, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x03FF0000, 0x0000007E, 0x0000007E, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_hyphen.c b/lib/unictype/pr_hyphen.c new file mode 100644 index 000000000..22a55b69c --- /dev/null +++ b/lib/unictype/pr_hyphen.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_hyphen table. */ +#include "pr_hyphen.h" + +bool +uc_is_property_hyphen (ucs4_t uc) +{ + return bitmap_lookup (&u_property_hyphen, uc); +} + +const uc_property_t UC_PROPERTY_HYPHEN = + { &uc_is_property_hyphen }; diff --git a/lib/unictype/pr_hyphen.h b/lib/unictype/pr_hyphen.h new file mode 100644 index 000000000..5f3e55cfa --- /dev/null +++ b/lib/unictype/pr_hyphen.h @@ -0,0 +1,180 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[7 << 4]; + } +u_property_hyphen = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + 2 + 128 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 96 + }, + { + 0x00000000, 0x00002000, 0x00000000, 0x00000000, + 0x00000000, 0x00002000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000400, 0x00000000, 0x00000000, 0x00000000, + 0x00000040, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00030000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00800000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x08000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000008, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00002000, 0x00000000, 0x00000000, 0x00000020, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_id_continue.c b/lib/unictype/pr_id_continue.c new file mode 100644 index 000000000..5903dc653 --- /dev/null +++ b/lib/unictype/pr_id_continue.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_id_continue table. */ +#include "pr_id_continue.h" + +bool +uc_is_property_id_continue (ucs4_t uc) +{ + return bitmap_lookup (&u_property_id_continue, uc); +} + +const uc_property_t UC_PROPERTY_ID_CONTINUE = + { &uc_is_property_id_continue }; diff --git a/lib/unictype/pr_id_continue.h b/lib/unictype/pr_id_continue.h new file mode 100644 index 000000000..e88bddb1b --- /dev/null +++ b/lib/unictype/pr_id_continue.h @@ -0,0 +1,728 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[15]; + short level2[4 << 7]; + /*unsigned*/ int level3[44 << 4]; + } +u_property_id_continue = +{ + { 15 }, + { + 16 * sizeof (int) / sizeof (short) + 0, + 16 * sizeof (int) / sizeof (short) + 128, + 16 * sizeof (int) / sizeof (short) + 256, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 * sizeof (int) / sizeof (short) + 384 + }, + { + 16 + 512 * sizeof (short) / sizeof (int) + 0, + 16 + 512 * sizeof (short) / sizeof (int) + 16, + 16 + 512 * sizeof (short) / sizeof (int) + 32, + 16 + 512 * sizeof (short) / sizeof (int) + 48, + 16 + 512 * sizeof (short) / sizeof (int) + 64, + 16 + 512 * sizeof (short) / sizeof (int) + 80, + 16 + 512 * sizeof (short) / sizeof (int) + 96, + 16 + 512 * sizeof (short) / sizeof (int) + 112, + 16 + 512 * sizeof (short) / sizeof (int) + 128, + 16 + 512 * sizeof (short) / sizeof (int) + 144, + 16 + 512 * sizeof (short) / sizeof (int) + 160, + 16 + 512 * sizeof (short) / sizeof (int) + 176, + 16 + 512 * sizeof (short) / sizeof (int) + 192, + 16 + 512 * sizeof (short) / sizeof (int) + 208, + 16 + 512 * sizeof (short) / sizeof (int) + 224, + 16 + 512 * sizeof (short) / sizeof (int) + 240, + 16 + 512 * sizeof (short) / sizeof (int) + 256, + -1, + -1, + -1, + -1, + -1, + 16 + 512 * sizeof (short) / sizeof (int) + 272, + -1, + 16 + 512 * sizeof (short) / sizeof (int) + 288, + -1, + 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) + 304, + 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) + 304, + 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) + 304, + 16 + 512 * sizeof (short) / sizeof (int) + 320, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 16 + 512 * sizeof (short) / sizeof (int) + 336, + 16 + 512 * sizeof (short) / sizeof (int) + 304, + 16 + 512 * sizeof (short) / sizeof (int) + 304, + 16 + 512 * sizeof (short) / sizeof (int) + 352, + 16 + 512 * sizeof (short) / sizeof (int) + 368, + 16 + 512 * sizeof (short) / sizeof (int) + 384, + -1, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 16 + 512 * sizeof (short) / sizeof (int) + 304, + 16 + 512 * sizeof (short) / sizeof (int) + 400, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 512 * sizeof (short) / sizeof (int) + 416, + 16 + 512 * sizeof (short) / sizeof (int) + 432, + 16 + 512 * sizeof (short) / sizeof (int) + 448, + 16 + 512 * sizeof (short) / sizeof (int) + 464, + 16 + 512 * sizeof (short) / sizeof (int) + 480, + 16 + 512 * sizeof (short) / sizeof (int) + 496, + 16 + 512 * sizeof (short) / sizeof (int) + 512, + -1, + 16 + 512 * sizeof (short) / sizeof (int) + 528, + 16 + 512 * sizeof (short) / sizeof (int) + 544, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 512 * sizeof (short) / sizeof (int) + 304, + 16 + 512 * sizeof (short) / sizeof (int) + 560, + 16 + 512 * sizeof (short) / sizeof (int) + 576, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 512 * sizeof (short) / sizeof (int) + 592, + 16 + 512 * sizeof (short) / sizeof (int) + 608, + 16 + 512 * sizeof (short) / sizeof (int) + 624, + 16 + 512 * sizeof (short) / sizeof (int) + 640, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 656, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 512 * sizeof (short) / sizeof (int) + 304, + 16 + 512 * sizeof (short) / sizeof (int) + 672, + -1, + -1, + 16 + 512 * sizeof (short) / sizeof (int) + 688, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x03FF0000, 0x87FFFFFE, 0x07FFFFFE, + 0x00000000, 0x04200400, 0xFF7FFFFF, 0xFF7FFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x0003FFC3, 0x0000401F, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x3C00FFFF, + 0xFFFFD740, 0xFFFFFFFB, 0xFFFF7FFF, 0xFFBFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFC7B, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x000FFFFF, 0xFFFE0000, 0x027FFFFF, 0xFFFFFFFE, + 0xFFFE00FF, 0xBFFFFFFF, 0xFFFF00B6, 0x000707FF, + 0x003F0000, 0x07FFFFFE, 0x7FFFFFFF, 0xFFFFC3FF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x9FEFFFFF, 0x9FFFFDFF, + 0xFFFF0000, 0xFFFFFFFF, 0xFFFFE7FF, 0x00003FFF, + 0xFFFFFFFF, 0x0003FFFF, 0xFFFFFFFF, 0x043FFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFE, 0xF3FFFFFF, 0xFF1F3FFF, 0xF800FFCF, + 0xFFF99FEE, 0xF3C5FDFF, 0xB080799F, 0x0003FFCF, + 0xFFF987EE, 0xD36DFDFF, 0x5E003987, 0x001FFFC0, + 0xFFFBBFEE, 0xF3EDFDFF, 0x00013BBF, 0x0000FFCF, + 0xFFF99FEE, 0xF3EDFDFF, 0xB0C0398F, 0x0002FFC3, + 0xD63DC7EC, 0xC3FFC718, 0x00803DC7, 0x0000FFC0, + 0xFFFDDFEE, 0xC3EFFDFF, 0x00603DDF, 0x0000FFC3, + 0xFFFDDFEC, 0xF3EFFDFF, 0x40603DDF, 0x0000FFCF, + 0xFFFDDFEC, 0xC3FFFDFF, 0x00803DCF, 0x0000FFC3, + 0xFC7FFFEC, 0x2FFBFFFF, 0xFF5F847F, 0x000C0000, + 0xFFFFFFFE, 0x07FFFFFF, 0x03FF7FFF, 0x00000000, + 0xFEF02596, 0x3BFFECAE, 0x33FF3F5F, 0x00000000, + 0x03000001, 0xC2A003FF, 0xFFFFFEFF, 0xFFFE07FF, + 0xFEFF0FDF, 0x1FFFFFFF, 0x00000040, 0x00000000, + 0xFFFFFFFF, 0x03C7F6FB, 0x03FF03FF, 0x00000000, + 0x00000000, 0xFFFFFFFF, 0xFFFF003F, 0x17FFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x83FFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF07, 0xFFFFFFFF, 0x03FFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x3D7F3DFF, 0xFFFFFFFF, + 0xFFFF3DFF, 0x7F3DFFFF, 0xFF7FFF3D, 0xFFFFFFFF, + 0xFF3DFFFF, 0xFFFFFFFF, 0x87FFFFFF, 0x0003FE00, + 0x0000FFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x001FFFFF, + 0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x007F9FFF, + 0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x0001C7FF, + 0x001FDFFF, 0x001FFFFF, 0x000FFFFF, 0x000DDFFF, + 0xFFFFFFFF, 0xFFCFFFFF, 0x308FFFFF, 0x000003FF, + 0x03FF3800, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF, + 0xFFFFFFFF, 0x000003FF, 0x00000000, 0x00000000, + 0x1FFFFFFF, 0x0FFF0FFF, 0xFFFFFFC0, 0x001F3FFF, + 0xFFFFFFFF, 0xFFFF03FF, 0x03FF03FF, 0x00000000, + 0x0FFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0x03FF0FFF, 0x000FF800, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x000007FF, 0xC0000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x0FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, + 0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF, + 0xFFFFFFFF, 0x5FDFFFFF, 0x0FCF1FDC, 0x1FDC1FFF, + 0x00000000, 0x80000000, 0x00100001, 0x80020000, + 0x001F0000, 0x00000000, 0x1FFF0000, 0x0000FFE2, + 0x3F2FFC84, 0xF3FFFD50, 0x000043E0, 0xFFFFFFFF, + 0x0000001F, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFF7FFF, 0x7FFFFFFF, 0x00F01FFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000001F, + 0xFFFFFFFF, 0xFFFF003F, 0xFFFFFFFF, 0x0000803F, + 0x007FFFFF, 0x7F7F7F7F, 0x7F7F7F7F, 0x00000000, + 0x000000E0, 0x1F3EFFFE, 0xFFFFFFFE, 0xFFFFFFFF, + 0xFE7FFFFF, 0xFFFFFFFE, 0xFFFFFFFF, 0xF7FFFFFF, + 0xFFFFFFE0, 0xFFFE1FFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00007FFF, 0x00FFFFFF, 0x00000000, 0xFFFF0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x003FFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0FFFFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00001FFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x07800000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0x000000FF, 0xFFFFFFFF, 0x000FFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFF3FFF, 0xFFFFFFFF, 0xFFFF07FF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, 0x00000000, + 0xE0F8007F, 0x5F7FFDFF, 0xFFFFFFDB, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0003FFFF, 0xFFF80000, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x3FFFFFFF, 0xFFFF0000, 0xFFFFFFFF, + 0xFFFCFFFF, 0xFFFFFFFF, 0x000000FF, 0x0FFF0000, + 0x0000FFFF, 0x0018000F, 0x0000E000, 0xFFDF0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFFFFFF, + 0x03FF0000, 0x87FFFFFE, 0x07FFFFFE, 0xFFFFFFC0, + 0xFFFFFFFF, 0x7FFFFFFF, 0x1CFCFCFC, 0x00000000, + 0xFFFFEFFF, 0xB7FFFF7F, 0x3FFF3FFF, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF, + 0x00000000, 0x00000000, 0xFFFFFFFF, 0x001FFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x7FFFFFFF, 0xFFFF0000, 0x000007FF, 0x00000000, + 0x3FFFFFFF, 0xFFFFFFFF, 0x003EFF0F, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x3FFFFFFF, 0x000003FF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFD3F, 0x91BFFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x003FFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFEEFF06F, 0x870FFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000007, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xF807E3E0, + 0x00000FE7, 0x00003C00, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x0000001C, 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, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF3F, 0xF7FFFFFD, 0xF7FFFFFF, + 0xFFDFFFFF, 0xFFDFFFFF, 0xFFFF7FFF, 0xFFFF7FFF, + 0xFFFFFDFF, 0xFFFFFDFF, 0xFFFFCFF7, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF + } +}; diff --git a/lib/unictype/pr_id_start.c b/lib/unictype/pr_id_start.c new file mode 100644 index 000000000..7d5f35fcf --- /dev/null +++ b/lib/unictype/pr_id_start.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_id_start table. */ +#include "pr_id_start.h" + +bool +uc_is_property_id_start (ucs4_t uc) +{ + return bitmap_lookup (&u_property_id_start, uc); +} + +const uc_property_t UC_PROPERTY_ID_START = + { &uc_is_property_id_start }; diff --git a/lib/unictype/pr_id_start.h b/lib/unictype/pr_id_start.h new file mode 100644 index 000000000..f7a7accd4 --- /dev/null +++ b/lib/unictype/pr_id_start.h @@ -0,0 +1,576 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[3]; + short level2[3 << 7]; + /*unsigned*/ int level3[41 << 4]; + } +u_property_id_start = +{ + { 3 }, + { + 4 * sizeof (int) / sizeof (short) + 0, + 4 * sizeof (int) / sizeof (short) + 128, + 4 * sizeof (int) / sizeof (short) + 256 + }, + { + 4 + 384 * sizeof (short) / sizeof (int) + 0, + 4 + 384 * sizeof (short) / sizeof (int) + 16, + 4 + 384 * sizeof (short) / sizeof (int) + 32, + 4 + 384 * sizeof (short) / sizeof (int) + 48, + 4 + 384 * sizeof (short) / sizeof (int) + 64, + 4 + 384 * sizeof (short) / sizeof (int) + 80, + 4 + 384 * sizeof (short) / sizeof (int) + 96, + 4 + 384 * sizeof (short) / sizeof (int) + 112, + 4 + 384 * sizeof (short) / sizeof (int) + 128, + 4 + 384 * sizeof (short) / sizeof (int) + 144, + 4 + 384 * sizeof (short) / sizeof (int) + 160, + 4 + 384 * sizeof (short) / sizeof (int) + 176, + 4 + 384 * sizeof (short) / sizeof (int) + 192, + 4 + 384 * sizeof (short) / sizeof (int) + 208, + 4 + 384 * sizeof (short) / sizeof (int) + 224, + 4 + 384 * sizeof (short) / sizeof (int) + 240, + 4 + 384 * sizeof (short) / sizeof (int) + 256, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + -1, + 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) + 304, + 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) + 304, + 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) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 336, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 352, + 4 + 384 * sizeof (short) / sizeof (int) + 368, + 4 + 384 * sizeof (short) / sizeof (int) + 384, + -1, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 400, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 416, + 4 + 384 * sizeof (short) / sizeof (int) + 432, + 4 + 384 * sizeof (short) / sizeof (int) + 448, + 4 + 384 * sizeof (short) / sizeof (int) + 464, + 4 + 384 * sizeof (short) / sizeof (int) + 480, + 4 + 384 * sizeof (short) / sizeof (int) + 496, + 4 + 384 * sizeof (short) / sizeof (int) + 512, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 528, + 4 + 384 * sizeof (short) / sizeof (int) + 544, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 560, + 4 + 384 * sizeof (short) / sizeof (int) + 576, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 592, + 4 + 384 * sizeof (short) / sizeof (int) + 608, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 624, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 640, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x07FFFFFE, 0x07FFFFFE, + 0x00000000, 0x04200400, 0xFF7FFFFF, 0xFF7FFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x0003FFC3, 0x0000401F, + 0x00000000, 0x00000000, 0x00000000, 0x3C000000, + 0xFFFFD740, 0xFFFFFFFB, 0xFFFF7FFF, 0xFFBFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x000FFFFF, 0xFFFE0000, 0x027FFFFF, 0xFFFFFFFE, + 0x000000FF, 0x00000000, 0xFFFF0000, 0x000707FF, + 0x00000000, 0x07FFFFFE, 0x000007FF, 0xFFFEC000, + 0xFFFFFFFF, 0xFFFFFFFF, 0x002FFFFF, 0x9C00C060, + 0xFFFD0000, 0x0000FFFF, 0xFFFFE000, 0x00003FFF, + 0xFFFFFFFF, 0x0002003F, 0xFFFFFC00, 0x043007FF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xF8000003, + 0xFFF99FE0, 0x23C5FDFF, 0xB0004000, 0x00030003, + 0xFFF987E0, 0x036DFDFF, 0x5E000000, 0x001C0000, + 0xFFFBBFE0, 0x23EDFDFF, 0x00010000, 0x00000003, + 0xFFF99FE0, 0x23EDFDFF, 0xB0000000, 0x00020003, + 0xD63DC7E8, 0x03FFC718, 0x00000000, 0x00000000, + 0xFFFDDFE0, 0x03EFFDFF, 0x00000000, 0x00000003, + 0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x00000003, + 0xFFFDDFE0, 0x03FFFDFF, 0x00000000, 0x00000003, + 0xFC7FFFE0, 0x2FFBFFFF, 0x0000007F, 0x00000000, + 0xFFFFFFFE, 0x000DFFFF, 0x0000007F, 0x00000000, + 0xFEF02596, 0x200DECAE, 0x3000005F, 0x00000000, + 0x00000001, 0x00000000, 0xFFFFFEFF, 0x000007FF, + 0x00000F00, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0x000006FB, 0x003F0000, 0x00000000, + 0x00000000, 0xFFFFFFFF, 0xFFFF003F, 0x17FFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x83FFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF07, 0xFFFFFFFF, 0x03FFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x3D7F3DFF, 0xFFFFFFFF, + 0xFFFF3DFF, 0x7F3DFFFF, 0xFF7FFF3D, 0xFFFFFFFF, + 0xFF3DFFFF, 0xFFFFFFFF, 0x07FFFFFF, 0x00000000, + 0x0000FFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x001FFFFF, + 0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x007F9FFF, + 0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x0001C7FF, + 0x0003DFFF, 0x0003FFFF, 0x0003FFFF, 0x0001DFFF, + 0xFFFFFFFF, 0x000FFFFF, 0x10800000, 0x00000000, + 0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF, + 0xFFFFFFFF, 0x000001FF, 0x00000000, 0x00000000, + 0x1FFFFFFF, 0x00000000, 0xFFFF0000, 0x001F3FFF, + 0xFFFFFFFF, 0x000003FF, 0x000000FE, 0x00000000, + 0x007FFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFE0, 0x000FFFFF, 0x00000FE0, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x0FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, + 0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF, + 0xFFFFFFFF, 0x5FDFFFFF, 0x0FCF1FDC, 0x1FDC1FFF, + 0x00000000, 0x00000000, 0x00000000, 0x80020000, + 0x001F0000, 0x00000000, 0x00000000, 0x00000000, + 0x3F2FFC84, 0xF3FFFD50, 0x000043E0, 0xFFFFFFFF, + 0x0000001F, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFF7FFF, 0x7FFFFFFF, 0x00F01FFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000001F, + 0xFFFFFFFF, 0xFFFF003F, 0xFFFFFFFF, 0x0000803F, + 0x007FFFFF, 0x7F7F7F7F, 0x7F7F7F7F, 0x00000000, + 0x000000E0, 0x1F3E03FE, 0xFFFFFFFE, 0xFFFFFFFF, + 0xF87FFFFF, 0xFFFFFFFE, 0xFFFFFFFF, 0xF7FFFFFF, + 0xFFFFFFE0, 0xFFFE1FFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00007FFF, 0x00FFFFFF, 0x00000000, 0xFFFF0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x003FFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0FFFFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00001FFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x07800000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFF7BB, 0x00000007, 0xFFFFFFFF, 0x000FFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFF3FFF, 0xFFFFFFFF, 0xFFFF07FF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, 0x00000000, + 0xA0F8007F, 0x5F7FFDFF, 0xFFFFFFDB, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0003FFFF, 0xFFF80000, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x3FFFFFFF, 0xFFFF0000, 0xFFFFFFFF, + 0xFFFCFFFF, 0xFFFFFFFF, 0x000000FF, 0x0FFF0000, + 0x00000000, 0x00000000, 0x00000000, 0xFFDF0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFFFFFF, + 0x00000000, 0x07FFFFFE, 0x07FFFFFE, 0xFFFFFFC0, + 0xFFFFFFFF, 0x7FFFFFFF, 0x1CFCFCFC, 0x00000000, + 0xFFFFEFFF, 0xB7FFFF7F, 0x3FFF3FFF, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF, + 0x00000000, 0x00000000, 0xFFFFFFFF, 0x001FFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x7FFFFFFF, 0xFFFF0000, 0x000007FF, 0x00000000, + 0x3FFFFFFF, 0xFFFFFFFF, 0x003EFF0F, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFD3F, 0x91BFFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x003FFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFEEF0001, 0x000FFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000007, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF, + 0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF, + 0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF3F, 0xF7FFFFFD, 0xF7FFFFFF, + 0xFFDFFFFF, 0xFFDFFFFF, 0xFFFF7FFF, 0xFFFF7FFF, + 0xFFFFFDFF, 0xFFFFFDFF, 0x00000FF7, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_ideographic.c b/lib/unictype/pr_ideographic.c new file mode 100644 index 000000000..18f7d02a6 --- /dev/null +++ b/lib/unictype/pr_ideographic.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_ideographic table. */ +#include "pr_ideographic.h" + +bool +uc_is_property_ideographic (ucs4_t uc) +{ + return bitmap_lookup (&u_property_ideographic, uc); +} + +const uc_property_t UC_PROPERTY_IDEOGRAPHIC = + { &uc_is_property_ideographic }; diff --git a/lib/unictype/pr_ideographic.h b/lib/unictype/pr_ideographic.h new file mode 100644 index 000000000..5017da48e --- /dev/null +++ b/lib/unictype/pr_ideographic.h @@ -0,0 +1,316 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[3]; + short level2[2 << 7]; + /*unsigned*/ int level3[8 << 4]; + } +u_property_ideographic = +{ + { 3 }, + { + 4 * sizeof (int) / sizeof (short) + 0, + -1, + 4 * sizeof (int) / sizeof (short) + 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, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + -1, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 32, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 256 * sizeof (short) / sizeof (int) + 64, + 4 + 256 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 96, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 112, + -1, + -1 + }, + { + 0x000000C0, 0x070003FE, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x003FFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0FFFFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x00003FFF, 0x00000000, 0xFFFF0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_ids_binary_operator.c b/lib/unictype/pr_ids_binary_operator.c new file mode 100644 index 000000000..74e50c1b1 --- /dev/null +++ b/lib/unictype/pr_ids_binary_operator.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_ids_binary_operator table. */ +#include "pr_ids_binary_operator.h" + +bool +uc_is_property_ids_binary_operator (ucs4_t uc) +{ + return bitmap_lookup (&u_property_ids_binary_operator, uc); +} + +const uc_property_t UC_PROPERTY_IDS_BINARY_OPERATOR = + { &uc_is_property_ids_binary_operator }; diff --git a/lib/unictype/pr_ids_binary_operator.h b/lib/unictype/pr_ids_binary_operator.h new file mode 100644 index 000000000..a6f3118b0 --- /dev/null +++ b/lib/unictype/pr_ids_binary_operator.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[1 << 4]; + } +u_property_ids_binary_operator = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x0FF30000 + } +}; diff --git a/lib/unictype/pr_ids_trinary_operator.c b/lib/unictype/pr_ids_trinary_operator.c new file mode 100644 index 000000000..422c219e0 --- /dev/null +++ b/lib/unictype/pr_ids_trinary_operator.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_ids_trinary_operator table. */ +#include "pr_ids_trinary_operator.h" + +bool +uc_is_property_ids_trinary_operator (ucs4_t uc) +{ + return bitmap_lookup (&u_property_ids_trinary_operator, uc); +} + +const uc_property_t UC_PROPERTY_IDS_TRINARY_OPERATOR = + { &uc_is_property_ids_trinary_operator }; diff --git a/lib/unictype/pr_ids_trinary_operator.h b/lib/unictype/pr_ids_trinary_operator.h new file mode 100644 index 000000000..73a47070f --- /dev/null +++ b/lib/unictype/pr_ids_trinary_operator.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[1 << 4]; + } +u_property_ids_trinary_operator = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x000C0000 + } +}; diff --git a/lib/unictype/pr_ignorable_control.c b/lib/unictype/pr_ignorable_control.c new file mode 100644 index 000000000..00a7223c2 --- /dev/null +++ b/lib/unictype/pr_ignorable_control.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_ignorable_control table. */ +#include "pr_ignorable_control.h" + +bool +uc_is_property_ignorable_control (ucs4_t uc) +{ + return bitmap_lookup (&u_property_ignorable_control, uc); +} + +const uc_property_t UC_PROPERTY_IGNORABLE_CONTROL = + { &uc_is_property_ignorable_control }; diff --git a/lib/unictype/pr_ignorable_control.h b/lib/unictype/pr_ignorable_control.h new file mode 100644 index 000000000..f0f0a409c --- /dev/null +++ b/lib/unictype/pr_ignorable_control.h @@ -0,0 +1,452 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[15]; + short level2[3 << 7]; + /*unsigned*/ int level3[7 << 4]; + } +u_property_ignorable_control = +{ + { 15 }, + { + 16 * sizeof (int) / sizeof (short) + 0, + 16 * sizeof (int) / sizeof (short) + 128, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 * sizeof (int) / sizeof (short) + 256 + }, + { + 16 + 384 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 96, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x0FFFC1FE, 0x00000000, 0x00000000, 0x80000000, + 0xFFFFFFDF, 0x00002000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000000F, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x20000000, 0x00000000, + 0x00008000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00300000, 0x00000000, 0x00000000, + 0x0000F800, 0x00007C00, 0x00000000, 0x0000FC0F, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x80000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x0E000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x07F80000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000002, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_iso_control.c b/lib/unictype/pr_iso_control.c new file mode 100644 index 000000000..9d2f392ed --- /dev/null +++ b/lib/unictype/pr_iso_control.c @@ -0,0 +1,47 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_iso_control table. */ +#include "pr_iso_control.h" + +bool +uc_is_property_iso_control (ucs4_t uc) +{ + return bitmap_lookup (&u_property_iso_control, uc); +} + +#else + +bool +uc_is_property_iso_control (ucs4_t uc) +{ + return uc_is_general_category (uc, UC_CATEGORY_Cc); +} + +#endif + +const uc_property_t UC_PROPERTY_ISO_CONTROL = + { &uc_is_property_iso_control }; diff --git a/lib/unictype/pr_iso_control.h b/lib/unictype/pr_iso_control.h new file mode 100644 index 000000000..c05ff74af --- /dev/null +++ b/lib/unictype/pr_iso_control.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[1 << 4]; + } +u_property_iso_control = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0xFFFFFFFF, 0x00000000, 0x00000000, 0x80000000, + 0xFFFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_join_control.c b/lib/unictype/pr_join_control.c new file mode 100644 index 000000000..ad22cea9f --- /dev/null +++ b/lib/unictype/pr_join_control.c @@ -0,0 +1,47 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_join_control table. */ +#include "pr_join_control.h" + +bool +uc_is_property_join_control (ucs4_t uc) +{ + return bitmap_lookup (&u_property_join_control, uc); +} + +#else + +bool +uc_is_property_join_control (ucs4_t uc) +{ + return (uc >= 0x200C && uc <= 0x200D); +} + +#endif + +const uc_property_t UC_PROPERTY_JOIN_CONTROL = + { &uc_is_property_join_control }; diff --git a/lib/unictype/pr_join_control.h b/lib/unictype/pr_join_control.h new file mode 100644 index 000000000..3680490c0 --- /dev/null +++ b/lib/unictype/pr_join_control.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[1 << 4]; + } +u_property_join_control = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00003000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_left_of_pair.c b/lib/unictype/pr_left_of_pair.c new file mode 100644 index 000000000..62b45f485 --- /dev/null +++ b/lib/unictype/pr_left_of_pair.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_left_of_pair table. */ +#include "pr_left_of_pair.h" + +bool +uc_is_property_left_of_pair (ucs4_t uc) +{ + return bitmap_lookup (&u_property_left_of_pair, uc); +} + +const uc_property_t UC_PROPERTY_LEFT_OF_PAIR = + { &uc_is_property_left_of_pair }; diff --git a/lib/unictype/pr_left_of_pair.h b/lib/unictype/pr_left_of_pair.h new file mode 100644 index 000000000..9148694aa --- /dev/null +++ b/lib/unictype/pr_left_of_pair.h @@ -0,0 +1,184 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[8 << 4]; + } +u_property_left_of_pair = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 96, + 2 + 128 * sizeof (short) / sizeof (int) + 112 + }, + { + 0x00000000, 0x00000100, 0x08000000, 0x08000000, + 0x00000000, 0x00000800, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x14000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x08000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xDD000000, 0x02000000, 0x00000020, 0x20000000, + 0x00002000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000200, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x25515500, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x40000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xAAA00000, 0x2A00000A, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000100, 0x08000000, 0x08000000, 0x00000004, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_line_separator.c b/lib/unictype/pr_line_separator.c new file mode 100644 index 000000000..0c0b320ab --- /dev/null +++ b/lib/unictype/pr_line_separator.c @@ -0,0 +1,55 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_line_separator table. */ +#include "pr_line_separator.h" + +bool +uc_is_property_line_separator (ucs4_t uc) +{ + return bitmap_lookup (&u_property_line_separator, uc); +} + +#elif 0 + +bool +uc_is_property_line_separator (ucs4_t uc) +{ + return uc_is_category_Zl (uc); +} + +#else + +bool +uc_is_property_line_separator (ucs4_t uc) +{ + return (uc == 0x2028); +} + +#endif + +const uc_property_t UC_PROPERTY_LINE_SEPARATOR = + { &uc_is_property_line_separator }; diff --git a/lib/unictype/pr_line_separator.h b/lib/unictype/pr_line_separator.h new file mode 100644 index 000000000..24c1ee8c6 --- /dev/null +++ b/lib/unictype/pr_line_separator.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[1 << 4]; + } +u_property_line_separator = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000100, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_logical_order_exception.c b/lib/unictype/pr_logical_order_exception.c new file mode 100644 index 000000000..e06f27190 --- /dev/null +++ b/lib/unictype/pr_logical_order_exception.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_logical_order_exception table. */ +#include "pr_logical_order_exception.h" + +bool +uc_is_property_logical_order_exception (ucs4_t uc) +{ + return bitmap_lookup (&u_property_logical_order_exception, uc); +} + +const uc_property_t UC_PROPERTY_LOGICAL_ORDER_EXCEPTION = + { &uc_is_property_logical_order_exception }; diff --git a/lib/unictype/pr_logical_order_exception.h b/lib/unictype/pr_logical_order_exception.h new file mode 100644 index 000000000..046f6b0d2 --- /dev/null +++ b/lib/unictype/pr_logical_order_exception.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[1 << 4]; + } +u_property_logical_order_exception = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x0000001F, 0x00000000, + 0x00000000, 0x00000000, 0x0000001F, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_lowercase.c b/lib/unictype/pr_lowercase.c new file mode 100644 index 000000000..ed719da94 --- /dev/null +++ b/lib/unictype/pr_lowercase.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_lowercase table. */ +#include "pr_lowercase.h" + +bool +uc_is_property_lowercase (ucs4_t uc) +{ + return bitmap_lookup (&u_property_lowercase, uc); +} + +const uc_property_t UC_PROPERTY_LOWERCASE = + { &uc_is_property_lowercase }; diff --git a/lib/unictype/pr_lowercase.h b/lib/unictype/pr_lowercase.h new file mode 100644 index 000000000..87b9c4edf --- /dev/null +++ b/lib/unictype/pr_lowercase.h @@ -0,0 +1,335 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[13 << 4]; + } +u_property_lowercase = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 144, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 160, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 176, + 3 + 256 * sizeof (short) / sizeof (int) + 192, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x07FFFFFE, + 0x00000000, 0x04200400, 0x80000000, 0xFF7FFFFF, + 0xAAAAAAAA, 0x55AAAAAA, 0xAAAAAB55, 0xD4AAAAAA, + 0x4E243129, 0xE6512D2A, 0xB5555240, 0xAA29AAAA, + 0xAAAAAAAA, 0x93FAAAAA, 0xFFFFAA85, 0xFFFFFFFF, + 0xFFEFFFFF, 0x01FFFFFF, 0x00000003, 0x0000001F, + 0x00000000, 0x00000000, 0x00000020, 0x3C000000, + 0x00010000, 0xFFFFF000, 0xAAE37FFF, 0x192FAAAA, + 0x00000000, 0xFFFF0000, 0xFFFFFFFF, 0xAAAAAAAA, + 0xAAAAA802, 0xAAAAAAAA, 0xAAAAD554, 0xAAAAAAAA, + 0x000AAAAA, 0x00000000, 0x00000000, 0xFFFFFFFE, + 0x000000FF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0x00000000, + 0xAAAAAAAA, 0xAAAAAAAA, 0xAAAAAAAA, 0xAAAAAAAA, + 0x0FEAAAAA, 0xAAAAAAAA, 0xAAAAAAAA, 0x02AAAAAA, + 0x003F00FF, 0x00FF00FF, 0x00FF003F, 0x3FFF00FF, + 0x00FF00FF, 0x40DF00FF, 0x00CF00DC, 0x00DC00FF, + 0x00000000, 0x00000000, 0x00000000, 0x80020000, + 0x001F0000, 0x00000000, 0x00000000, 0x00000000, + 0x0008C400, 0x32108000, 0x000043C0, 0xFFFF0000, + 0x00000010, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFF0000, 0x000003FF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFFF0000, 0x7FFFFFFF, 0x00D01562, + 0xAAAAAAAA, 0xAAAAAAAA, 0xAAAAAAAA, 0x0000001A, + 0xFFFFFFFF, 0x0000003F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00F8007F, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x07FFFFFE, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFFFFF00, 0x0000FFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFC000000, 0x000FFFFF, 0xFFDFC000, 0x000000FF, + 0x0FFFFFFC, 0xEBC00000, 0x0000FFEF, 0xFFFFFC00, + 0xC000000F, 0x00FFFFFF, 0xFFFC0000, 0x00000FFF, + 0xFFFFFFC0, 0xFC000000, 0x000FFFFF, 0xFFFFC000, + 0x000000FF, 0x0FFFFFFC, 0xFFC00000, 0x0000FFFF, + 0xFFFFFC00, 0x0000003F, 0xF7FFFFFC, 0xF0000003, + 0x0FDFFFFF, 0xFFC00000, 0x003F7FFF, 0xFFFF0000, + 0x0000FDFF, 0xFFFFFC00, 0x00000BF7, 0x00000000 + } +}; diff --git a/lib/unictype/pr_math.c b/lib/unictype/pr_math.c new file mode 100644 index 000000000..a4971d25c --- /dev/null +++ b/lib/unictype/pr_math.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_math table. */ +#include "pr_math.h" + +bool +uc_is_property_math (ucs4_t uc) +{ + return bitmap_lookup (&u_property_math, uc); +} + +const uc_property_t UC_PROPERTY_MATH = + { &uc_is_property_math }; diff --git a/lib/unictype/pr_math.h b/lib/unictype/pr_math.h new file mode 100644 index 000000000..9975ccbd1 --- /dev/null +++ b/lib/unictype/pr_math.h @@ -0,0 +1,331 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[12 << 4]; + } +u_property_math = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 144, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 160, + 3 + 256 * sizeof (short) / sizeof (int) + 176, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x70000800, 0x40000000, 0x50000000, + 0x00000000, 0x00021000, 0x00800000, 0x00800000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00270000, 0x00730000, + 0x00400000, 0x001C0000, 0x00040011, 0x7C00000E, + 0x00007C00, 0x00000000, 0x1FFF0000, 0x0000F062, + 0x3E2FFC04, 0xF1FBB310, 0x00000BFF, 0x00000000, + 0x0C1F0000, 0x00004049, 0x0014C000, 0xFFF00000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000F00, 0x00000003, 0x00000000, 0x10000000, + 0xF8000000, 0x008FFFFF, 0xF0010000, 0x00000003, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00800000, 0x00000002, 0xFF000000, + 0x00000000, 0x00000000, 0x00000000, 0x00008000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFF07FF, 0xFFFF0FFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000200, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x0000017E, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x70000800, 0x50000000, 0x50000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00001E04, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF, + 0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF, + 0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF3F, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFCFFF, 0xFFFFFFFF + } +}; diff --git a/lib/unictype/pr_non_break.c b/lib/unictype/pr_non_break.c new file mode 100644 index 000000000..d1855d4fb --- /dev/null +++ b/lib/unictype/pr_non_break.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_non_break table. */ +#include "pr_non_break.h" + +bool +uc_is_property_non_break (ucs4_t uc) +{ + return bitmap_lookup (&u_property_non_break, uc); +} + +const uc_property_t UC_PROPERTY_NON_BREAK = + { &uc_is_property_non_break }; diff --git a/lib/unictype/pr_non_break.h b/lib/unictype/pr_non_break.h new file mode 100644 index 000000000..aee542289 --- /dev/null +++ b/lib/unictype/pr_non_break.h @@ -0,0 +1,172 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[5 << 4]; + } +u_property_non_break = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000001, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xF0008000, 0x00000007, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00041100, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00004000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00020080, 0x00008000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_not_a_character.c b/lib/unictype/pr_not_a_character.c new file mode 100644 index 000000000..05910fe6a --- /dev/null +++ b/lib/unictype/pr_not_a_character.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_not_a_character table. */ +#include "pr_not_a_character.h" + +bool +uc_is_property_not_a_character (ucs4_t uc) +{ + return bitmap_lookup (&u_property_not_a_character, uc); +} + +const uc_property_t UC_PROPERTY_NOT_A_CHARACTER = + { &uc_is_property_not_a_character }; diff --git a/lib/unictype/pr_not_a_character.h b/lib/unictype/pr_not_a_character.h new file mode 100644 index 000000000..53385d6f0 --- /dev/null +++ b/lib/unictype/pr_not_a_character.h @@ -0,0 +1,306 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[17]; + short level2[2 << 7]; + /*unsigned*/ int level3[2 << 4]; + } +u_property_not_a_character = +{ + { 17 }, + { + 18 * sizeof (int) / sizeof (short) + 0, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 128 + }, + { + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 256 * sizeof (short) / sizeof (int) + 16 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFF0000, 0x0000FFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xC0000000 + } +}; diff --git a/lib/unictype/pr_numeric.c b/lib/unictype/pr_numeric.c new file mode 100644 index 000000000..dfa2250af --- /dev/null +++ b/lib/unictype/pr_numeric.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_numeric table. */ +#include "pr_numeric.h" + +bool +uc_is_property_numeric (ucs4_t uc) +{ + return bitmap_lookup (&u_property_numeric, uc); +} + +const uc_property_t UC_PROPERTY_NUMERIC = + { &uc_is_property_numeric }; diff --git a/lib/unictype/pr_numeric.h b/lib/unictype/pr_numeric.h new file mode 100644 index 000000000..b649a2d25 --- /dev/null +++ b/lib/unictype/pr_numeric.h @@ -0,0 +1,387 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[26 << 4]; + } +u_property_numeric = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + -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) + 176, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 192, + 3 + 256 * sizeof (short) / sizeof (int) + 208, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 224, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 240, + 3 + 256 * sizeof (short) / sizeof (int) + 256, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 288, + 3 + 256 * sizeof (short) / sizeof (int) + 304, + 3 + 256 * sizeof (short) / sizeof (int) + 320, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 336, + 3 + 256 * sizeof (short) / sizeof (int) + 352, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 368, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 384, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 400, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x03FF0000, 0x00000000, 0x00000000, + 0x00000000, 0x720C0000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x000003FF, + 0x00000000, 0x00000000, 0x00000000, 0x03FF0000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x000003FF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x03F0FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0007FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFC0, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x03FF0000, 0x00000000, + 0x00000000, 0x00000000, 0x03FF0000, 0x00000000, + 0x00000000, 0x000FFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x000003FF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x1FFFFE00, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x0001C000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x03FF03FF, + 0x03FF0000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x0000FFC0, 0x00000000, + 0x00000000, 0x00000000, 0x03FF0000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x03FF0000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x03F10000, + 0x000003FF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFF80000, 0xFFFFFFFF, + 0x0000000F, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFFFFFFF, + 0x0FFFFFFF, 0x00000000, 0x00000000, 0xFFFFFC00, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFC00000, + 0x000FFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x20000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000080, 0x070003FE, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x003C0000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x000003FF, 0xFFFE0000, 0x00000000, + 0x000003FF, 0xFFFE0000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x03FF0000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFF80, 0x000FFFFF, 0xFFFFFFFF, 0x01FFFFFF, + 0x00000400, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x0000000F, 0x00000402, 0x00000000, + 0x00000000, 0x00000000, 0x003E0000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x000003FF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x03C00000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x000000FF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFF3FFFF, 0xFF3FFFFF, 0x00000007, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x0003FFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFFC000, 0xFFFFFFFF + } +}; diff --git a/lib/unictype/pr_other_alphabetic.c b/lib/unictype/pr_other_alphabetic.c new file mode 100644 index 000000000..1a880f5bc --- /dev/null +++ b/lib/unictype/pr_other_alphabetic.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_other_alphabetic table. */ +#include "pr_other_alphabetic.h" + +bool +uc_is_property_other_alphabetic (ucs4_t uc) +{ + return bitmap_lookup (&u_property_other_alphabetic, uc); +} + +const uc_property_t UC_PROPERTY_OTHER_ALPHABETIC = + { &uc_is_property_other_alphabetic }; diff --git a/lib/unictype/pr_other_alphabetic.h b/lib/unictype/pr_other_alphabetic.h new file mode 100644 index 000000000..f7cc19db9 --- /dev/null +++ b/lib/unictype/pr_other_alphabetic.h @@ -0,0 +1,347 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[16 << 4]; + } +u_property_other_alphabetic = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 0, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 144, + 3 + 256 * sizeof (short) / sizeof (int) + 160, + 3 + 256 * sizeof (short) / sizeof (int) + 176, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 192, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 208, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 224, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 240, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000020, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xBFFF0000, 0x000000B6, 0x00000000, + 0x003F0000, 0x00000000, 0x7EFFF800, 0x00010000, + 0x00000000, 0x00000000, 0x1FC00000, 0x0000219E, + 0x00020000, 0xFFFF0000, 0x00000000, 0x00000000, + 0x00000000, 0x0001FFC0, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000000E, 0xC0000000, 0x00001FFF, 0x0000000C, + 0x0000000E, 0xC0000000, 0x0080199F, 0x0000000C, + 0x0000000E, 0xC0000000, 0x00001987, 0x00030000, + 0x0000000E, 0xC0000000, 0x00001BBF, 0x0000000C, + 0x0000000E, 0xC0000000, 0x00C0198F, 0x00000000, + 0x00000004, 0xC0000000, 0x00801DC7, 0x00000000, + 0x0000000E, 0xC0000000, 0x00601DDF, 0x00000000, + 0x0000000C, 0xC0000000, 0x00601DDF, 0x0000000C, + 0x0000000C, 0xC0000000, 0x00801DCF, 0x00000000, + 0x0000000C, 0x00000000, 0xFF5F8000, 0x000C0000, + 0x00000000, 0x07F20000, 0x00002000, 0x00000000, + 0x00000000, 0x1BF20000, 0x00002000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFFE0000, + 0xFEFF0003, 0x1FFFFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x0147F000, 0x03C00000, 0x00000000, + 0x00000000, 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, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x000C0000, 0x000C0000, 0x000C0000, 0x000C0000, + 0x00000000, 0xFFC00000, 0x000001FF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000200, 0x00000000, 0x00000000, + 0x00000000, 0x01FF0FFF, 0x00000000, 0x00000000, + 0x00000000, 0xFFFF0000, 0x00000301, 0x00000000, + 0x0F800000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000001F, 0xFFE00000, 0x0000000F, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFC00000, 0xFFFFFFFF, 0x000003FF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x000000F8, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x40000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000F06E, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_other_default_ignorable_code_point.c b/lib/unictype/pr_other_default_ignorable_code_point.c new file mode 100644 index 000000000..434977d17 --- /dev/null +++ b/lib/unictype/pr_other_default_ignorable_code_point.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_other_default_ignorable_code_point table. */ +#include "pr_other_default_ignorable_code_point.h" + +bool +uc_is_property_other_default_ignorable_code_point (ucs4_t uc) +{ + return bitmap_lookup (&u_property_other_default_ignorable_code_point, uc); +} + +const uc_property_t UC_PROPERTY_OTHER_DEFAULT_IGNORABLE_CODE_POINT = + { &uc_is_property_other_default_ignorable_code_point }; diff --git a/lib/unictype/pr_other_default_ignorable_code_point.h b/lib/unictype/pr_other_default_ignorable_code_point.h new file mode 100644 index 000000000..56b4a648b --- /dev/null +++ b/lib/unictype/pr_other_default_ignorable_code_point.h @@ -0,0 +1,324 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[15]; + short level2[2 << 7]; + /*unsigned*/ int level3[7 << 4]; + } +u_property_other_default_ignorable_code_point = +{ + { 15 }, + { + 16 * sizeof (int) / sizeof (short) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 * sizeof (int) / sizeof (short) + 128 + }, + { + -1, + 16 + 256 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 256 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 256 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 256 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 256 * sizeof (short) / sizeof (int) + 64, + 16 + 256 * sizeof (short) / sizeof (int) + 80, + 16 + 256 * sizeof (short) / sizeof (int) + 96, + 16 + 256 * sizeof (short) / sizeof (int) + 96, + 16 + 256 * sizeof (short) / sizeof (int) + 96, + 16 + 256 * sizeof (short) / sizeof (int) + 96, + 16 + 256 * sizeof (short) / sizeof (int) + 96, + 16 + 256 * sizeof (short) / sizeof (int) + 96, + 16 + 256 * sizeof (short) / sizeof (int) + 96, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00008000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x80000000, 0x00000001, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x000003F0, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000010, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000001, 0x00000000, 0x01FF0000, + 0xFFFFFFFD, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFFF0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF + } +}; diff --git a/lib/unictype/pr_other_grapheme_extend.c b/lib/unictype/pr_other_grapheme_extend.c new file mode 100644 index 000000000..fb7af9c2f --- /dev/null +++ b/lib/unictype/pr_other_grapheme_extend.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_other_grapheme_extend table. */ +#include "pr_other_grapheme_extend.h" + +bool +uc_is_property_other_grapheme_extend (ucs4_t uc) +{ + return bitmap_lookup (&u_property_other_grapheme_extend, uc); +} + +const uc_property_t UC_PROPERTY_OTHER_GRAPHEME_EXTEND = + { &uc_is_property_other_grapheme_extend }; diff --git a/lib/unictype/pr_other_grapheme_extend.h b/lib/unictype/pr_other_grapheme_extend.h new file mode 100644 index 000000000..f4cc35d82 --- /dev/null +++ b/lib/unictype/pr_other_grapheme_extend.h @@ -0,0 +1,303 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[5 << 4]; + } +u_property_other_grapheme_extend = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 0, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x40000000, 0x00800000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x40000000, 0x00800000, 0x00000000, + 0x00000000, 0x40000000, 0x00800000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00600004, 0x00000000, + 0x00000000, 0x40000000, 0x00800000, 0x00000000, + 0x00000000, 0x00000000, 0x80008000, 0x00000000, + 0x00003000, 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, 0x0007C020, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_other_id_continue.c b/lib/unictype/pr_other_id_continue.c new file mode 100644 index 000000000..75e71c3c2 --- /dev/null +++ b/lib/unictype/pr_other_id_continue.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_other_id_continue table. */ +#include "pr_other_id_continue.h" + +bool +uc_is_property_other_id_continue (ucs4_t uc) +{ + return bitmap_lookup (&u_property_other_id_continue, uc); +} + +const uc_property_t UC_PROPERTY_OTHER_ID_CONTINUE = + { &uc_is_property_other_id_continue }; diff --git a/lib/unictype/pr_other_id_continue.h b/lib/unictype/pr_other_id_continue.h new file mode 100644 index 000000000..86982cb1a --- /dev/null +++ b/lib/unictype/pr_other_id_continue.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[1 << 4]; + } +u_property_other_id_continue = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x0003FE00, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_other_id_start.c b/lib/unictype/pr_other_id_start.c new file mode 100644 index 000000000..1858e47fc --- /dev/null +++ b/lib/unictype/pr_other_id_start.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_other_id_start table. */ +#include "pr_other_id_start.h" + +bool +uc_is_property_other_id_start (ucs4_t uc) +{ + return bitmap_lookup (&u_property_other_id_start, uc); +} + +const uc_property_t UC_PROPERTY_OTHER_ID_START = + { &uc_is_property_other_id_start }; diff --git a/lib/unictype/pr_other_id_start.h b/lib/unictype/pr_other_id_start.h new file mode 100644 index 000000000..392ea7102 --- /dev/null +++ b/lib/unictype/pr_other_id_start.h @@ -0,0 +1,160 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[2 << 4]; + } +u_property_other_id_start = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x01000000, 0x00004000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x18000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_other_lowercase.c b/lib/unictype/pr_other_lowercase.c new file mode 100644 index 000000000..c199b174d --- /dev/null +++ b/lib/unictype/pr_other_lowercase.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_other_lowercase table. */ +#include "pr_other_lowercase.h" + +bool +uc_is_property_other_lowercase (ucs4_t uc) +{ + return bitmap_lookup (&u_property_other_lowercase, uc); +} + +const uc_property_t UC_PROPERTY_OTHER_LOWERCASE = + { &uc_is_property_other_lowercase }; diff --git a/lib/unictype/pr_other_lowercase.h b/lib/unictype/pr_other_lowercase.h new file mode 100644 index 000000000..a74fc422a --- /dev/null +++ b/lib/unictype/pr_other_lowercase.h @@ -0,0 +1,168 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[4 << 4]; + } +u_property_other_lowercase = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x01FF0000, 0x00000003, 0x0000001F, + 0x00000000, 0x00000000, 0x00000020, 0x04000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFFFF000, 0xFFFFFFFF, 0x01000003, + 0xF8000000, 0xFFFFFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x001F0000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFFF0000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFF0000, 0x000003FF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_other_math.c b/lib/unictype/pr_other_math.c new file mode 100644 index 000000000..7e130e7f8 --- /dev/null +++ b/lib/unictype/pr_other_math.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_other_math table. */ +#include "pr_other_math.h" + +bool +uc_is_property_other_math (ucs4_t uc) +{ + return bitmap_lookup (&u_property_other_math, uc); +} + +const uc_property_t UC_PROPERTY_OTHER_MATH = + { &uc_is_property_other_math }; diff --git a/lib/unictype/pr_other_math.h b/lib/unictype/pr_other_math.h new file mode 100644 index 000000000..819ae917c --- /dev/null +++ b/lib/unictype/pr_other_math.h @@ -0,0 +1,319 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[9 << 4]; + } +u_property_other_math = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x40000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00270000, 0x00330000, + 0x00400000, 0x001C0000, 0x00000001, 0x6000000E, + 0x00006000, 0x00000000, 0x1FFF0000, 0x0000F062, + 0x3E2FFC04, 0xF1FBB310, 0x000003E0, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00800000, 0x00010000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000060, 0x00000FC0, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x01FFFFF8, 0x00000000, 0x0F000000, 0x30000000, + 0x00000000, 0x00000000, 0x00000000, 0x0000010A, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x50000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF, + 0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF, + 0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF3F, 0xF7FFFFFD, 0xF7FFFFFF, + 0xFFDFFFFF, 0xFFDFFFFF, 0xFFFF7FFF, 0xFFFF7FFF, + 0xFFFFFDFF, 0xFFFFFDFF, 0xFFFFCFF7, 0xFFFFFFFF + } +}; diff --git a/lib/unictype/pr_other_uppercase.c b/lib/unictype/pr_other_uppercase.c new file mode 100644 index 000000000..278ce5140 --- /dev/null +++ b/lib/unictype/pr_other_uppercase.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_other_uppercase table. */ +#include "pr_other_uppercase.h" + +bool +uc_is_property_other_uppercase (ucs4_t uc) +{ + return bitmap_lookup (&u_property_other_uppercase, uc); +} + +const uc_property_t UC_PROPERTY_OTHER_UPPERCASE = + { &uc_is_property_other_uppercase }; diff --git a/lib/unictype/pr_other_uppercase.h b/lib/unictype/pr_other_uppercase.h new file mode 100644 index 000000000..a80a94f8c --- /dev/null +++ b/lib/unictype/pr_other_uppercase.h @@ -0,0 +1,160 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[2 << 4]; + } +u_property_other_uppercase = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x0000FFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFC00000, 0x0000FFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_paired_punctuation.c b/lib/unictype/pr_paired_punctuation.c new file mode 100644 index 000000000..52b0dbb42 --- /dev/null +++ b/lib/unictype/pr_paired_punctuation.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_paired_punctuation table. */ +#include "pr_paired_punctuation.h" + +bool +uc_is_property_paired_punctuation (ucs4_t uc) +{ + return bitmap_lookup (&u_property_paired_punctuation, uc); +} + +const uc_property_t UC_PROPERTY_PAIRED_PUNCTUATION = + { &uc_is_property_paired_punctuation }; diff --git a/lib/unictype/pr_paired_punctuation.h b/lib/unictype/pr_paired_punctuation.h new file mode 100644 index 000000000..11736fd7f --- /dev/null +++ b/lib/unictype/pr_paired_punctuation.h @@ -0,0 +1,184 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[8 << 4]; + } +u_property_paired_punctuation = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 96, + 2 + 128 * sizeof (short) / sizeof (int) + 112 + }, + { + 0x00000000, 0x00000300, 0x28000000, 0x28000000, + 0x00000000, 0x08000800, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x3C000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x18000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFF000000, 0x06000000, 0x00000060, 0x60000000, + 0x00006000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000600, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xEFF3FF00, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xC0000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFE00000, 0x7E00001F, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000300, 0x28000000, 0x28000000, 0x0000000C, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_paragraph_separator.c b/lib/unictype/pr_paragraph_separator.c new file mode 100644 index 000000000..c1aeff312 --- /dev/null +++ b/lib/unictype/pr_paragraph_separator.c @@ -0,0 +1,55 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_paragraph_separator table. */ +#include "pr_paragraph_separator.h" + +bool +uc_is_property_paragraph_separator (ucs4_t uc) +{ + return bitmap_lookup (&u_property_paragraph_separator, uc); +} + +#elif 0 + +bool +uc_is_property_paragraph_separator (ucs4_t uc) +{ + return uc_is_category_Zp (uc); +} + +#else + +bool +uc_is_property_paragraph_separator (ucs4_t uc) +{ + return (uc == 0x2029); +} + +#endif + +const uc_property_t UC_PROPERTY_PARAGRAPH_SEPARATOR = + { &uc_is_property_paragraph_separator }; diff --git a/lib/unictype/pr_paragraph_separator.h b/lib/unictype/pr_paragraph_separator.h new file mode 100644 index 000000000..c1662a978 --- /dev/null +++ b/lib/unictype/pr_paragraph_separator.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[1 << 4]; + } +u_property_paragraph_separator = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000200, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_pattern_syntax.c b/lib/unictype/pr_pattern_syntax.c new file mode 100644 index 000000000..5f5366f66 --- /dev/null +++ b/lib/unictype/pr_pattern_syntax.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_pattern_syntax table. */ +#include "pr_pattern_syntax.h" + +bool +uc_is_property_pattern_syntax (ucs4_t uc) +{ + return bitmap_lookup (&u_property_pattern_syntax, uc); +} + +const uc_property_t UC_PROPERTY_PATTERN_SYNTAX = + { &uc_is_property_pattern_syntax }; diff --git a/lib/unictype/pr_pattern_syntax.h b/lib/unictype/pr_pattern_syntax.h new file mode 100644 index 000000000..aff012077 --- /dev/null +++ b/lib/unictype/pr_pattern_syntax.h @@ -0,0 +1,188 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[9 << 4]; + } +u_property_pattern_syntax = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 80, + 2 + 128 * sizeof (short) / sizeof (int) + 96, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 112, + 2 + 128 * sizeof (short) / sizeof (int) + 128 + }, + { + 0x00000000, 0xFC00FFFE, 0x78000001, 0x78000001, + 0x00000000, 0x88435AFE, 0x00800000, 0x00800000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFF0000, 0x7FFF00FF, 0x7FEFFFFE, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFF0000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, + 0xFFF00000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFF0E, 0x00010001, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xC0000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000060, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_pattern_white_space.c b/lib/unictype/pr_pattern_white_space.c new file mode 100644 index 000000000..407cc7e56 --- /dev/null +++ b/lib/unictype/pr_pattern_white_space.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_pattern_white_space table. */ +#include "pr_pattern_white_space.h" + +bool +uc_is_property_pattern_white_space (ucs4_t uc) +{ + return bitmap_lookup (&u_property_pattern_white_space, uc); +} + +const uc_property_t UC_PROPERTY_PATTERN_WHITE_SPACE = + { &uc_is_property_pattern_white_space }; diff --git a/lib/unictype/pr_pattern_white_space.h b/lib/unictype/pr_pattern_white_space.h new file mode 100644 index 000000000..d634e1d43 --- /dev/null +++ b/lib/unictype/pr_pattern_white_space.h @@ -0,0 +1,160 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[2 << 4]; + } +u_property_pattern_white_space = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00003E00, 0x00000001, 0x00000000, 0x00000000, + 0x00000020, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000C000, 0x00000300, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_private_use.c b/lib/unictype/pr_private_use.c new file mode 100644 index 000000000..64a28c784 --- /dev/null +++ b/lib/unictype/pr_private_use.c @@ -0,0 +1,49 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_private_use table. */ +#include "pr_private_use.h" + +bool +uc_is_property_private_use (ucs4_t uc) +{ + return bitmap_lookup (&u_property_private_use, uc); +} + +#else + +bool +uc_is_property_private_use (ucs4_t uc) +{ + return (uc >= 0xE000 && uc <= 0xF8FF) + || (uc >= 0xF0000 && uc <= 0xFFFFD) + || (uc >= 0x100000 && uc <= 0x10FFFD); +} + +#endif + +const uc_property_t UC_PROPERTY_PRIVATE_USE = + { &uc_is_property_private_use }; diff --git a/lib/unictype/pr_private_use.h b/lib/unictype/pr_private_use.h new file mode 100644 index 000000000..a1bc099a1 --- /dev/null +++ b/lib/unictype/pr_private_use.h @@ -0,0 +1,310 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[17]; + short level2[2 << 7]; + /*unsigned*/ int level3[3 << 4]; + } +u_property_private_use = +{ + { 17 }, + { + 18 * sizeof (int) / sizeof (short) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 * sizeof (int) / sizeof (short) + 128, + 18 * sizeof (int) / sizeof (short) + 128 + }, + { + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 0, + 18 + 256 * sizeof (short) / sizeof (int) + 32 + }, + { + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x3FFFFFFF + } +}; diff --git a/lib/unictype/pr_punctuation.c b/lib/unictype/pr_punctuation.c new file mode 100644 index 000000000..00efeee3e --- /dev/null +++ b/lib/unictype/pr_punctuation.c @@ -0,0 +1,47 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_punctuation table. */ +#include "pr_punctuation.h" + +bool +uc_is_property_punctuation (ucs4_t uc) +{ + return bitmap_lookup (&u_property_punctuation, uc); +} + +#else + +bool +uc_is_property_punctuation (ucs4_t uc) +{ + return uc_is_general_category (uc, UC_CATEGORY_P); +} + +#endif + +const uc_property_t UC_PROPERTY_PUNCTUATION = + { &uc_is_property_punctuation }; diff --git a/lib/unictype/pr_punctuation.h b/lib/unictype/pr_punctuation.h new file mode 100644 index 000000000..c113a95c6 --- /dev/null +++ b/lib/unictype/pr_punctuation.h @@ -0,0 +1,391 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[27 << 4]; + } +u_property_punctuation = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 144, + 3 + 256 * sizeof (short) / sizeof (int) + 160, + 3 + 256 * sizeof (short) / sizeof (int) + 176, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 192, + 3 + 256 * sizeof (short) / sizeof (int) + 208, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 224, + 3 + 256 * sizeof (short) / sizeof (int) + 240, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 256, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + 3 + 256 * sizeof (short) / sizeof (int) + 288, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 304, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 320, + 3 + 256 * sizeof (short) / sizeof (int) + 336, + 3 + 256 * sizeof (short) / sizeof (int) + 352, + 3 + 256 * sizeof (short) / sizeof (int) + 368, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 384, + 3 + 256 * sizeof (short) / sizeof (int) + 400, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 416, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x8C00F7EE, 0xB8000001, 0x28000000, + 0x00000000, 0x88800802, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x40000000, + 0x00000080, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFC000000, 0x00000000, + 0x00000600, 0x40000000, 0x00000049, 0x00180000, + 0xC8003000, 0x00000000, 0x00000000, 0x00003C00, + 0x00000000, 0x00000000, 0x00100000, 0x00000000, + 0x00003FFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x03800000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00010030, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00100000, + 0x00000000, 0x00000000, 0x0C008000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0007FFF0, 0x3C000000, 0x00000000, 0x00000000, + 0x00000020, 0x00000000, 0x00030000, 0x00000000, + 0x00000000, 0x00000000, 0x0000FC00, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x08000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x000001FE, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00006000, + 0x18000000, 0x00000000, 0x00000000, 0x00003800, + 0x00000000, 0x00600000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x07700000, 0x00000000, + 0x000007FF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000030, 0x00000000, + 0x00000000, 0x00000000, 0xC0000000, 0x00000000, + 0xC0000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFC000000, 0x00000001, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFF0000, 0xFFFF00FF, 0x7FFBFFEF, 0x60000000, + 0x00006000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000600, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x003FFF00, + 0x00000000, 0x00000000, 0x00000060, 0x00000FC0, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x01FFFFF8, 0x00000000, 0x0F000000, 0x30000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xDE000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x30FFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFF3FF0E, 0x20010000, 0x00000000, 0x00000000, + 0x00000000, 0x00000001, 0x00000000, 0x08000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00F00000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xC0000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x03FF0000, 0xFFFF0000, 0xFFF7FFFF, 0x00000D0B, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x8C00F7EE, 0xB8000001, 0xA8000000, 0x0000003F, + 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, + 0x80000000, 0x00000000, 0x00010000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x80000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x01FF0000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x000F0000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_quotation_mark.c b/lib/unictype/pr_quotation_mark.c new file mode 100644 index 000000000..e07fef2ee --- /dev/null +++ b/lib/unictype/pr_quotation_mark.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_quotation_mark table. */ +#include "pr_quotation_mark.h" + +bool +uc_is_property_quotation_mark (ucs4_t uc) +{ + return bitmap_lookup (&u_property_quotation_mark, uc); +} + +const uc_property_t UC_PROPERTY_QUOTATION_MARK = + { &uc_is_property_quotation_mark }; diff --git a/lib/unictype/pr_quotation_mark.h b/lib/unictype/pr_quotation_mark.h new file mode 100644 index 000000000..f854a11af --- /dev/null +++ b/lib/unictype/pr_quotation_mark.h @@ -0,0 +1,168 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[4 << 4]; + } +u_property_quotation_mark = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 48 + }, + { + 0x00000000, 0x00000084, 0x00000000, 0x00000000, + 0x00000000, 0x08000800, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFF000000, 0x06000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xE000F000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x0000001E, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000084, 0x00000000, 0x00000000, 0x0000000C, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_radical.c b/lib/unictype/pr_radical.c new file mode 100644 index 000000000..134316288 --- /dev/null +++ b/lib/unictype/pr_radical.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_radical table. */ +#include "pr_radical.h" + +bool +uc_is_property_radical (ucs4_t uc) +{ + return bitmap_lookup (&u_property_radical, uc); +} + +const uc_property_t UC_PROPERTY_RADICAL = + { &uc_is_property_radical }; diff --git a/lib/unictype/pr_radical.h b/lib/unictype/pr_radical.h new file mode 100644 index 000000000..de2a63854 --- /dev/null +++ b/lib/unictype/pr_radical.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[1 << 4]; + } +u_property_radical = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFBFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x000FFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x003FFFFF, 0x00000000 + } +}; diff --git a/lib/unictype/pr_sentence_terminal.c b/lib/unictype/pr_sentence_terminal.c new file mode 100644 index 000000000..85d5e68ec --- /dev/null +++ b/lib/unictype/pr_sentence_terminal.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_sentence_terminal table. */ +#include "pr_sentence_terminal.h" + +bool +uc_is_property_sentence_terminal (ucs4_t uc) +{ + return bitmap_lookup (&u_property_sentence_terminal, uc); +} + +const uc_property_t UC_PROPERTY_SENTENCE_TERMINAL = + { &uc_is_property_sentence_terminal }; diff --git a/lib/unictype/pr_sentence_terminal.h b/lib/unictype/pr_sentence_terminal.h new file mode 100644 index 000000000..45f8ea58d --- /dev/null +++ b/lib/unictype/pr_sentence_terminal.h @@ -0,0 +1,204 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[13 << 4]; + } +u_property_sentence_terminal = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + 2 + 128 * sizeof (short) / sizeof (int) + 80, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 96, + 2 + 128 * sizeof (short) / sizeof (int) + 112, + 2 + 128 * sizeof (short) / sizeof (int) + 128, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 144, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 160, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 176, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 192 + }, + { + 0x00000000, 0x80004002, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x50000000, 0x00000000, + 0x00000200, 0x00000000, 0x00000000, 0x00000000, + 0x80000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00100000, 0x00000000, + 0x00000007, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x02000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000030, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000C00, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000184, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00004000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 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, 0x00000000, 0xCC000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x30000000, 0x00000380, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000004, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00C00000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00C40000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x80004002, 0x00000000, 0x00000000, 0x00000002, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_soft_dotted.c b/lib/unictype/pr_soft_dotted.c new file mode 100644 index 000000000..b261d3c19 --- /dev/null +++ b/lib/unictype/pr_soft_dotted.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_soft_dotted table. */ +#include "pr_soft_dotted.h" + +bool +uc_is_property_soft_dotted (ucs4_t uc) +{ + return bitmap_lookup (&u_property_soft_dotted, uc); +} + +const uc_property_t UC_PROPERTY_SOFT_DOTTED = + { &uc_is_property_soft_dotted }; diff --git a/lib/unictype/pr_soft_dotted.h b/lib/unictype/pr_soft_dotted.h new file mode 100644 index 000000000..05af95ff6 --- /dev/null +++ b/lib/unictype/pr_soft_dotted.h @@ -0,0 +1,315 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[8 << 4]; + } +u_property_soft_dotted = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000600, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00008000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000200, 0x00000100, + 0x20000000, 0x00040000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00080000, + 0x00000000, 0x00000000, 0x01400000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000004, + 0x00400000, 0x00000110, 0x00000000, 0x00000000, + 0x00000000, 0x00002000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000800, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00020000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000300, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x0000000C, 0x00C00000, 0x00000000, + 0x00000C00, 0xC0000000, 0x00000000, 0x000C0000, + 0x00000000, 0x000000C0, 0x0C000000, 0x00000000, + 0x0000C000, 0x00000000, 0x0000000C, 0x00C00000, + 0x00000000, 0x00000C00, 0xC0000000, 0x00000000, + 0x000C0000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_space.c b/lib/unictype/pr_space.c new file mode 100644 index 000000000..5bc3881ea --- /dev/null +++ b/lib/unictype/pr_space.c @@ -0,0 +1,47 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_space table. */ +#include "pr_space.h" + +bool +uc_is_property_space (ucs4_t uc) +{ + return bitmap_lookup (&u_property_space, uc); +} + +#else + +bool +uc_is_property_space (ucs4_t uc) +{ + return uc_is_general_category (uc, UC_CATEGORY_Zs); +} + +#endif + +const uc_property_t UC_PROPERTY_SPACE = + { &uc_is_property_space }; diff --git a/lib/unictype/pr_space.h b/lib/unictype/pr_space.h new file mode 100644 index 000000000..6788c3c7d --- /dev/null +++ b/lib/unictype/pr_space.h @@ -0,0 +1,172 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[5 << 4]; + } +u_property_space = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000001, 0x00000000, 0x00000000, + 0x00000000, 0x00000001, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000001, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00004000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x000007FF, 0x00008000, 0x80000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000001, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_terminal_punctuation.c b/lib/unictype/pr_terminal_punctuation.c new file mode 100644 index 000000000..30a79f923 --- /dev/null +++ b/lib/unictype/pr_terminal_punctuation.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_terminal_punctuation table. */ +#include "pr_terminal_punctuation.h" + +bool +uc_is_property_terminal_punctuation (ucs4_t uc) +{ + return bitmap_lookup (&u_property_terminal_punctuation, uc); +} + +const uc_property_t UC_PROPERTY_TERMINAL_PUNCTUATION = + { &uc_is_property_terminal_punctuation }; diff --git a/lib/unictype/pr_terminal_punctuation.h b/lib/unictype/pr_terminal_punctuation.h new file mode 100644 index 000000000..d8cb1208d --- /dev/null +++ b/lib/unictype/pr_terminal_punctuation.h @@ -0,0 +1,355 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[18 << 4]; + } +u_property_terminal_punctuation = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + -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) + 176, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 192, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 208, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 224, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 240, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 256, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 272, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x8C005002, 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, 0x40000000, + 0x00000080, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000200, 0x00000000, 0x00000008, 0x00000000, + 0x88001000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00100000, 0x00000000, + 0x000017FF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x03000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000030, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x0C000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0007E100, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000C00, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x000001FE, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00006000, + 0x00000000, 0x00000000, 0x00000000, 0x00003800, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x04700000, 0x00000000, + 0x0000033C, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000030, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xEC000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x30000000, 0x00000380, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000006, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00C00000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00F70000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x8C005002, 0x00000000, 0x00000000, 0x00000012, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x80000000, 0x00000000, 0x00010000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x80000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x000F0000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_test.c b/lib/unictype/pr_test.c new file mode 100644 index 000000000..6d997b4c3 --- /dev/null +++ b/lib/unictype/pr_test.c @@ -0,0 +1,27 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2005-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +bool +uc_is_property (ucs4_t uc, uc_property_t property) +{ + return property.test_fn (uc); +} diff --git a/lib/unictype/pr_titlecase.c b/lib/unictype/pr_titlecase.c new file mode 100644 index 000000000..eeb7dcc53 --- /dev/null +++ b/lib/unictype/pr_titlecase.c @@ -0,0 +1,47 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#if 0 + +#include "bitmap.h" + +/* Define u_property_titlecase table. */ +#include "pr_titlecase.h" + +bool +uc_is_property_titlecase (ucs4_t uc) +{ + return bitmap_lookup (&u_property_titlecase, uc); +} + +#else + +bool +uc_is_property_titlecase (ucs4_t uc) +{ + return uc_is_general_category (uc, UC_CATEGORY_Lt); +} + +#endif + +const uc_property_t UC_PROPERTY_TITLECASE = + { &uc_is_property_titlecase }; diff --git a/lib/unictype/pr_titlecase.h b/lib/unictype/pr_titlecase.h new file mode 100644 index 000000000..40563ea27 --- /dev/null +++ b/lib/unictype/pr_titlecase.h @@ -0,0 +1,160 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[2 << 4]; + } +u_property_titlecase = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 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, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000920, 0x00040000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFF00FF00, 0x1000FF00, 0x00001000, 0x10000000 + } +}; diff --git a/lib/unictype/pr_unassigned_code_value.c b/lib/unictype/pr_unassigned_code_value.c new file mode 100644 index 000000000..328b5e7c0 --- /dev/null +++ b/lib/unictype/pr_unassigned_code_value.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_unassigned_code_value table. */ +#include "pr_unassigned_code_value.h" + +bool +uc_is_property_unassigned_code_value (ucs4_t uc) +{ + return bitmap_lookup (&u_property_unassigned_code_value, uc); +} + +const uc_property_t UC_PROPERTY_UNASSIGNED_CODE_VALUE = + { &uc_is_property_unassigned_code_value }; diff --git a/lib/unictype/pr_unassigned_code_value.h b/lib/unictype/pr_unassigned_code_value.h new file mode 100644 index 000000000..16f38367c --- /dev/null +++ b/lib/unictype/pr_unassigned_code_value.h @@ -0,0 +1,876 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[15]; + short level2[5 << 7]; + /*unsigned*/ int level3[49 << 4]; + } +u_property_unassigned_code_value = +{ + { 15 }, + { + 16 * sizeof (int) / sizeof (short) + 0, + 16 * sizeof (int) / sizeof (short) + 128, + 16 * sizeof (int) / sizeof (short) + 256, + 16 * sizeof (int) / sizeof (short) + 384, + 16 * sizeof (int) / sizeof (short) + 384, + 16 * sizeof (int) / sizeof (short) + 384, + 16 * sizeof (int) / sizeof (short) + 384, + 16 * sizeof (int) / sizeof (short) + 384, + 16 * sizeof (int) / sizeof (short) + 384, + 16 * sizeof (int) / sizeof (short) + 384, + 16 * sizeof (int) / sizeof (short) + 384, + 16 * sizeof (int) / sizeof (short) + 384, + 16 * sizeof (int) / sizeof (short) + 384, + 16 * sizeof (int) / sizeof (short) + 384, + 16 * sizeof (int) / sizeof (short) + 512 + }, + { + -1, + 16 + 640 * sizeof (short) / sizeof (int) + 0, + 16 + 640 * sizeof (short) / sizeof (int) + 16, + 16 + 640 * sizeof (short) / sizeof (int) + 32, + 16 + 640 * sizeof (short) / sizeof (int) + 48, + 16 + 640 * sizeof (short) / sizeof (int) + 64, + 16 + 640 * sizeof (short) / sizeof (int) + 80, + 16 + 640 * sizeof (short) / sizeof (int) + 96, + 16 + 640 * sizeof (short) / sizeof (int) + 112, + 16 + 640 * sizeof (short) / sizeof (int) + 128, + 16 + 640 * sizeof (short) / sizeof (int) + 144, + 16 + 640 * sizeof (short) / sizeof (int) + 160, + 16 + 640 * sizeof (short) / sizeof (int) + 176, + 16 + 640 * sizeof (short) / sizeof (int) + 192, + 16 + 640 * sizeof (short) / sizeof (int) + 208, + 16 + 640 * sizeof (short) / sizeof (int) + 224, + 16 + 640 * sizeof (short) / sizeof (int) + 240, + 16 + 640 * sizeof (short) / sizeof (int) + 256, + 16 + 640 * sizeof (short) / sizeof (int) + 272, + 16 + 640 * sizeof (short) / sizeof (int) + 288, + -1, + 16 + 640 * sizeof (short) / sizeof (int) + 304, + 16 + 640 * sizeof (short) / sizeof (int) + 320, + 16 + 640 * sizeof (short) / sizeof (int) + 336, + 16 + 640 * sizeof (short) / sizeof (int) + 352, + 16 + 640 * sizeof (short) / sizeof (int) + 368, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 640 * sizeof (short) / sizeof (int) + 384, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 640 * sizeof (short) / sizeof (int) + 400, + -1, + -1, + 16 + 640 * sizeof (short) / sizeof (int) + 416, + 16 + 640 * sizeof (short) / sizeof (int) + 432, + 16 + 640 * sizeof (short) / sizeof (int) + 448, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 640 * sizeof (short) / sizeof (int) + 480, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 640 * sizeof (short) / sizeof (int) + 496, + 16 + 640 * sizeof (short) / sizeof (int) + 512, + 16 + 640 * sizeof (short) / sizeof (int) + 528, + 16 + 640 * sizeof (short) / sizeof (int) + 544, + 16 + 640 * sizeof (short) / sizeof (int) + 560, + 16 + 640 * sizeof (short) / sizeof (int) + 576, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 592, + 16 + 640 * sizeof (short) / sizeof (int) + 608, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + -1, + 16 + 640 * sizeof (short) / sizeof (int) + 624, + 16 + 640 * sizeof (short) / sizeof (int) + 640, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 656, + 16 + 640 * sizeof (short) / sizeof (int) + 672, + 16 + 640 * sizeof (short) / sizeof (int) + 688, + 16 + 640 * sizeof (short) / sizeof (int) + 704, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 720, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 640 * sizeof (short) / sizeof (int) + 736, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + -1, + 16 + 640 * sizeof (short) / sizeof (int) + 752, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 720, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 720, + 16 + 640 * sizeof (short) / sizeof (int) + 768, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 464, + 16 + 640 * sizeof (short) / sizeof (int) + 720 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x83CF0000, + 0x0000280F, 0x00000004, 0x00008000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000080, 0x00000000, 0x00000000, 0x00000000, + 0xFFF00000, 0x0001FFFF, 0x01800000, 0x00000001, + 0x0001F900, 0x00000000, 0x0000FF00, 0xFFE0F800, + 0x37C007F0, 0xF8000001, 0x80000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00004000, 0x00000000, 0x00001800, 0xFFFFC000, + 0x00000000, 0xFFFC0000, 0x00000000, 0xF8000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000001, 0x0C000000, 0x00E0C000, 0x07FE0000, + 0x00066011, 0x0C3A0200, 0x4F7F8660, 0xF8000030, + 0x00067811, 0x2C920200, 0xA1FFC678, 0xFFE0003F, + 0x00044011, 0x0C120200, 0xFFFEC440, 0xFFFD0030, + 0x00066011, 0x0C120200, 0x4F3FC670, 0xFFFC003C, + 0x29C23813, 0x3C0038E7, 0xFF7FC238, 0xF800003F, + 0x00022011, 0x3C100200, 0xFF9FC220, 0xFFFF003C, + 0x00022013, 0x0C100200, 0xBF9FC220, 0xFFF90030, + 0x00022013, 0x3C000200, 0xFF7FC230, 0xFFFF003C, + 0x03800013, 0xD0040000, 0x00A07B80, 0xFFE3FFFF, + 0x00000001, 0x78000000, 0xF0000000, 0xFFFFFFFF, + 0x010FDA69, 0xC4001351, 0xCC00C0A0, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000100, 0x0001F800, + 0x0100F000, 0x20000000, 0xFFFC6000, 0xFFFFFFFF, + 0x00000000, 0xFC380904, 0xFC000000, 0xFFFFFFFF, + 0xFFFFFFFF, 0x00000000, 0x0000FFC0, 0xE0000000, + 0x00000000, 0x00000000, 0x7C000000, 0x00000000, + 0x00000000, 0x000000F8, 0x00000000, 0xFC000000, + 0x00000000, 0x00000000, 0xC280C200, 0x00000000, + 0x0000C200, 0x80C20000, 0x008000C2, 0x00000000, + 0x00C20000, 0x00000000, 0x78000000, 0xE0000000, + 0xFC000000, 0x00000000, 0x00000000, 0xFFE00000, + 0x00000001, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFF800000, + 0xE0000000, 0x00000000, 0x00000000, 0xFFFE0000, + 0xFFE02000, 0xFF800000, 0xFFF00000, 0xFFF22000, + 0x00000000, 0x00000000, 0xC0000000, 0xFC00FC00, + 0xFC008000, 0x00000000, 0x00000000, 0xFF000000, + 0x00000000, 0xFFFFFC00, 0xFFFFFFFF, 0xFFFFFFFF, + 0xE0000000, 0xF000F000, 0x0000000E, 0xFFE0C000, + 0x00000000, 0x0000FC00, 0x3C00FC00, 0x00000000, + 0x30000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x0000F000, 0xE0000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFFFF800, 0x3FFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xF0000000, 0x00000000, 0x00000000, 0xFC000000, + 0xC0C00000, 0x00000000, 0x5500C0C0, 0xC0000000, + 0x00000000, 0x00200000, 0x10300020, 0x80230000, + 0x00000000, 0x00000000, 0x00000000, 0x000C03F0, + 0xFFE08000, 0xFFC00000, 0x0000FFFF, 0xFFFF0000, + 0x00000000, 0x00000000, 0x00078000, 0x00000000, + 0x0000FFE0, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFFFFF00, + 0x00000000, 0xFFFFFF80, 0xFFFFF800, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xE0000000, 0xFFF80000, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000C21, 0x00000100, 0x80B85000, 0x00000001, + 0x00E00000, 0x80010000, 0x0000F800, 0x0000F000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xF8000000, 0xFFFFFFF0, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00008000, 0x80000000, 0xFF0FE000, + 0x00000000, 0x00000000, 0x00000000, 0x01FFF800, + 0x00000000, 0x0000FFC0, 0x00000000, 0xFFFF7FC0, + 0xFF800000, 0x80808080, 0x80808080, 0xFFFFFFFF, + 0xCF000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x04000000, 0x00000000, 0x00000000, 0xFFF00000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFFC00000, 0xF000FFFF, + 0x00000000, 0x00000000, 0x00000001, 0x00000000, + 0x01800000, 0x00000000, 0x00000000, 0x00000000, + 0x0000001F, 0x0001E000, 0x00000000, 0x00000000, + 0x00008000, 0xFF000000, 0xFFFF0000, 0x0000FFFF, + 0x80000000, 0x00000000, 0x0000FFF0, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x80000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFC00000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xF0000000, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000E000, 0x00000000, 0xFFFFFF80, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xF8000000, 0xFFFFFFFC, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0xFFFFF000, 0x00000000, 0xFF000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFFFFFF0, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x0000C000, 0x00000000, 0x0000F800, + 0x00000000, 0x00000000, 0xFC000000, 0xFFFFFFFF, + 0x1F07FF80, 0xA0800000, 0x00000024, 0x00000000, + 0x00000000, 0xFFFC0000, 0x0007FFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x0000FFFF, 0x00000000, + 0x00030000, 0x00000000, 0x0000FF00, 0xC0000000, + 0xFC000000, 0x0000FFF0, 0x00080000, 0x0020F080, + 0x00000000, 0x00000000, 0x00000000, 0x60000000, + 0x00000001, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x80000000, 0xE3030303, 0x01FF8080, + 0x00001000, 0x48000080, 0xC000C000, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0xF8000000, + 0x00000078, 0x00700000, 0x00000000, 0x00000000, + 0xFFFFF800, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x80000000, 0x0000FFF0, 0xFFFFF800, 0xFFFFFFFF, + 0x40000000, 0x00000000, 0xFFC000F0, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xC0000000, 0xFFFFFC00, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x000002C0, 0x6E400000, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x7C000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x01100F90, 0x78F00000, 0xFE00FF00, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFFF8000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0xFFF0FFF8, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFC00000, + 0x00000000, 0x00000380, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xC0000000, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0xFFFFFFC0, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0xFF800000, 0xFFFC0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00200000, 0x00000000, + 0x20000000, 0x1400219B, 0x00000010, 0x00000000, + 0x20201840, 0x84000000, 0x000203A0, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x000000C0, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00003000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x3FFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0xFF800000, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xC0000000, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFD, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xFFFF0000 + } +}; diff --git a/lib/unictype/pr_unified_ideograph.c b/lib/unictype/pr_unified_ideograph.c new file mode 100644 index 000000000..99096a82c --- /dev/null +++ b/lib/unictype/pr_unified_ideograph.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_unified_ideograph table. */ +#include "pr_unified_ideograph.h" + +bool +uc_is_property_unified_ideograph (ucs4_t uc) +{ + return bitmap_lookup (&u_property_unified_ideograph, uc); +} + +const uc_property_t UC_PROPERTY_UNIFIED_IDEOGRAPH = + { &uc_is_property_unified_ideograph }; diff --git a/lib/unictype/pr_unified_ideograph.h b/lib/unictype/pr_unified_ideograph.h new file mode 100644 index 000000000..f3b5ac380 --- /dev/null +++ b/lib/unictype/pr_unified_ideograph.h @@ -0,0 +1,304 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[3]; + short level2[2 << 7]; + /*unsigned*/ int level3[5 << 4]; + } +u_property_unified_ideograph = +{ + { 3 }, + { + 4 * sizeof (int) / sizeof (short) + 0, + -1, + 4 * sizeof (int) / sizeof (short) + 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, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 16, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 256 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 0, + 4 + 256 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x003FFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0FFFFFFF, 0x00000000, 0x00000000, + 0x801AC000, 0x0000039A, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_uppercase.c b/lib/unictype/pr_uppercase.c new file mode 100644 index 000000000..38c122a96 --- /dev/null +++ b/lib/unictype/pr_uppercase.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_uppercase table. */ +#include "pr_uppercase.h" + +bool +uc_is_property_uppercase (ucs4_t uc) +{ + return bitmap_lookup (&u_property_uppercase, uc); +} + +const uc_property_t UC_PROPERTY_UPPERCASE = + { &uc_is_property_uppercase }; diff --git a/lib/unictype/pr_uppercase.h b/lib/unictype/pr_uppercase.h new file mode 100644 index 000000000..8b2d8af98 --- /dev/null +++ b/lib/unictype/pr_uppercase.h @@ -0,0 +1,331 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[2]; + short level2[2 << 7]; + /*unsigned*/ int level3[12 << 4]; + } +u_property_uppercase = +{ + { 2 }, + { + 3 * sizeof (int) / sizeof (short) + 0, + 3 * sizeof (int) / sizeof (short) + 128 + }, + { + 3 + 256 * sizeof (short) / sizeof (int) + 0, + 3 + 256 * sizeof (short) / sizeof (int) + 16, + 3 + 256 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 64, + 3 + 256 * sizeof (short) / sizeof (int) + 80, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 96, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 112, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 128, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 144, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 3 + 256 * sizeof (short) / sizeof (int) + 160, + 3 + 256 * sizeof (short) / sizeof (int) + 176, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x07FFFFFE, 0x00000000, + 0x00000000, 0x00000000, 0x7F7FFFFF, 0x00000000, + 0x55555555, 0xAA555555, 0x555554AA, 0x2B555555, + 0xB1DBCED6, 0x11AED2D5, 0x4AAAA490, 0x55D25555, + 0x55555555, 0x6C055555, 0x0000557A, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFED740, 0x00000FFB, 0x551C0000, 0xE6905555, + 0xFFFFFFFF, 0x0000FFFF, 0x00000000, 0x55555555, + 0x55555401, 0x55555555, 0x55552AAB, 0x55555555, + 0x00055555, 0xFFFE0000, 0x007FFFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFFFFFFF, 0x0000003F, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x55555555, 0x55555555, 0x55555555, 0x55555555, + 0x00155555, 0x55555555, 0x55555555, 0x01555555, + 0x3F00FF00, 0xFF00FF00, 0xAA003F00, 0x0000FF00, + 0x00000000, 0x0F000000, 0x0F000F00, 0x0F001F00, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x3E273884, 0xC00F3D50, 0x00000020, 0x0000FFFF, + 0x00000008, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0xFFC00000, 0x0000FFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0x00007FFF, 0x00000000, 0x00200A9D, + 0x55555555, 0x55555555, 0x55555555, 0x00000005, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x07FFFFFE, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0x000000FF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x03FFFFFF, 0xFFF00000, 0x00003FFF, 0xFFFFFF00, + 0xD0000003, 0x003FDE64, 0xFFFF0000, 0x000003FF, + 0x1FDFE7B0, 0x7B000000, 0x0001FC5F, 0xFFFFF000, + 0x0000003F, 0x03FFFFFF, 0xFFF00000, 0x00003FFF, + 0xFFFFFF00, 0xF0000003, 0x003FFFFF, 0xFFFF0000, + 0x000003FF, 0xFFFFFF00, 0x00000001, 0x07FFFFFC, + 0xF0000000, 0x001FFFFF, 0xFFC00000, 0x00007FFF, + 0xFFFF0000, 0x000001FF, 0x00000400, 0x00000000 + } +}; diff --git a/lib/unictype/pr_variation_selector.c b/lib/unictype/pr_variation_selector.c new file mode 100644 index 000000000..2f1d3888d --- /dev/null +++ b/lib/unictype/pr_variation_selector.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_variation_selector table. */ +#include "pr_variation_selector.h" + +bool +uc_is_property_variation_selector (ucs4_t uc) +{ + return bitmap_lookup (&u_property_variation_selector, uc); +} + +const uc_property_t UC_PROPERTY_VARIATION_SELECTOR = + { &uc_is_property_variation_selector }; diff --git a/lib/unictype/pr_variation_selector.h b/lib/unictype/pr_variation_selector.h new file mode 100644 index 000000000..b089ba153 --- /dev/null +++ b/lib/unictype/pr_variation_selector.h @@ -0,0 +1,308 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[15]; + short level2[2 << 7]; + /*unsigned*/ int level3[3 << 4]; + } +u_property_variation_selector = +{ + { 15 }, + { + 16 * sizeof (int) / sizeof (short) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 * sizeof (int) / sizeof (short) + 128 + }, + { + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 256 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 256 * sizeof (short) / sizeof (int) + 16, + 16 + 256 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00003800, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000FFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF + } +}; diff --git a/lib/unictype/pr_white_space.c b/lib/unictype/pr_white_space.c new file mode 100644 index 000000000..1cd9c5f47 --- /dev/null +++ b/lib/unictype/pr_white_space.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_white_space table. */ +#include "pr_white_space.h" + +bool +uc_is_property_white_space (ucs4_t uc) +{ + return bitmap_lookup (&u_property_white_space, uc); +} + +const uc_property_t UC_PROPERTY_WHITE_SPACE = + { &uc_is_property_white_space }; diff --git a/lib/unictype/pr_white_space.h b/lib/unictype/pr_white_space.h new file mode 100644 index 000000000..cddecc2fa --- /dev/null +++ b/lib/unictype/pr_white_space.h @@ -0,0 +1,172 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[5 << 4]; + } +u_property_white_space = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 16, + 2 + 128 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 2 + 128 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00003E00, 0x00000001, 0x00000000, 0x00000000, + 0x00000020, 0x00000001, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000001, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00004000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x000007FF, 0x00008300, 0x80000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000001, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_xid_continue.c b/lib/unictype/pr_xid_continue.c new file mode 100644 index 000000000..d7d92c3ca --- /dev/null +++ b/lib/unictype/pr_xid_continue.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_xid_continue table. */ +#include "pr_xid_continue.h" + +bool +uc_is_property_xid_continue (ucs4_t uc) +{ + return bitmap_lookup (&u_property_xid_continue, uc); +} + +const uc_property_t UC_PROPERTY_XID_CONTINUE = + { &uc_is_property_xid_continue }; diff --git a/lib/unictype/pr_xid_continue.h b/lib/unictype/pr_xid_continue.h new file mode 100644 index 000000000..6eaf7b0b6 --- /dev/null +++ b/lib/unictype/pr_xid_continue.h @@ -0,0 +1,728 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[15]; + short level2[4 << 7]; + /*unsigned*/ int level3[44 << 4]; + } +u_property_xid_continue = +{ + { 15 }, + { + 16 * sizeof (int) / sizeof (short) + 0, + 16 * sizeof (int) / sizeof (short) + 128, + 16 * sizeof (int) / sizeof (short) + 256, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 * sizeof (int) / sizeof (short) + 384 + }, + { + 16 + 512 * sizeof (short) / sizeof (int) + 0, + 16 + 512 * sizeof (short) / sizeof (int) + 16, + 16 + 512 * sizeof (short) / sizeof (int) + 32, + 16 + 512 * sizeof (short) / sizeof (int) + 48, + 16 + 512 * sizeof (short) / sizeof (int) + 64, + 16 + 512 * sizeof (short) / sizeof (int) + 80, + 16 + 512 * sizeof (short) / sizeof (int) + 96, + 16 + 512 * sizeof (short) / sizeof (int) + 112, + 16 + 512 * sizeof (short) / sizeof (int) + 128, + 16 + 512 * sizeof (short) / sizeof (int) + 144, + 16 + 512 * sizeof (short) / sizeof (int) + 160, + 16 + 512 * sizeof (short) / sizeof (int) + 176, + 16 + 512 * sizeof (short) / sizeof (int) + 192, + 16 + 512 * sizeof (short) / sizeof (int) + 208, + 16 + 512 * sizeof (short) / sizeof (int) + 224, + 16 + 512 * sizeof (short) / sizeof (int) + 240, + 16 + 512 * sizeof (short) / sizeof (int) + 256, + -1, + -1, + -1, + -1, + -1, + 16 + 512 * sizeof (short) / sizeof (int) + 272, + -1, + 16 + 512 * sizeof (short) / sizeof (int) + 288, + -1, + 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) + 304, + 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) + 304, + 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) + 304, + 16 + 512 * sizeof (short) / sizeof (int) + 320, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 16 + 512 * sizeof (short) / sizeof (int) + 336, + 16 + 512 * sizeof (short) / sizeof (int) + 304, + 16 + 512 * sizeof (short) / sizeof (int) + 304, + 16 + 512 * sizeof (short) / sizeof (int) + 352, + 16 + 512 * sizeof (short) / sizeof (int) + 368, + 16 + 512 * sizeof (short) / sizeof (int) + 384, + -1, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 16 + 512 * sizeof (short) / sizeof (int) + 304, + 16 + 512 * sizeof (short) / sizeof (int) + 400, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 512 * sizeof (short) / sizeof (int) + 416, + 16 + 512 * sizeof (short) / sizeof (int) + 432, + 16 + 512 * sizeof (short) / sizeof (int) + 448, + 16 + 512 * sizeof (short) / sizeof (int) + 464, + 16 + 512 * sizeof (short) / sizeof (int) + 480, + 16 + 512 * sizeof (short) / sizeof (int) + 496, + 16 + 512 * sizeof (short) / sizeof (int) + 512, + -1, + 16 + 512 * sizeof (short) / sizeof (int) + 528, + 16 + 512 * sizeof (short) / sizeof (int) + 544, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 512 * sizeof (short) / sizeof (int) + 304, + 16 + 512 * sizeof (short) / sizeof (int) + 560, + 16 + 512 * sizeof (short) / sizeof (int) + 576, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 512 * sizeof (short) / sizeof (int) + 592, + 16 + 512 * sizeof (short) / sizeof (int) + 608, + 16 + 512 * sizeof (short) / sizeof (int) + 624, + 16 + 512 * sizeof (short) / sizeof (int) + 640, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 656, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 512 * sizeof (short) / sizeof (int) + 304, + 16 + 512 * sizeof (short) / sizeof (int) + 672, + -1, + -1, + 16 + 512 * sizeof (short) / sizeof (int) + 688, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x03FF0000, 0x87FFFFFE, 0x07FFFFFE, + 0x00000000, 0x04A00400, 0xFF7FFFFF, 0xFF7FFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x0003FFC3, 0x0000401F, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x3800FFFF, + 0xFFFFD740, 0xFFFFFFFB, 0xFFFF7FFF, 0xFFBFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFC7B, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x000FFFFF, 0xFFFE0000, 0x027FFFFF, 0xFFFFFFFE, + 0xFFFE00FF, 0xBFFFFFFF, 0xFFFF00B6, 0x000707FF, + 0x003F0000, 0x07FFFFFE, 0x7FFFFFFF, 0xFFFFC3FF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x9FEFFFFF, 0x9FFFFDFF, + 0xFFFF0000, 0xFFFFFFFF, 0xFFFFE7FF, 0x00003FFF, + 0xFFFFFFFF, 0x0003FFFF, 0xFFFFFFFF, 0x043FFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFE, 0xF3FFFFFF, 0xFF1F3FFF, 0xF800FFCF, + 0xFFF99FEE, 0xF3C5FDFF, 0xB080799F, 0x0003FFCF, + 0xFFF987EE, 0xD36DFDFF, 0x5E003987, 0x001FFFC0, + 0xFFFBBFEE, 0xF3EDFDFF, 0x00013BBF, 0x0000FFCF, + 0xFFF99FEE, 0xF3EDFDFF, 0xB0C0398F, 0x0002FFC3, + 0xD63DC7EC, 0xC3FFC718, 0x00803DC7, 0x0000FFC0, + 0xFFFDDFEE, 0xC3EFFDFF, 0x00603DDF, 0x0000FFC3, + 0xFFFDDFEC, 0xF3EFFDFF, 0x40603DDF, 0x0000FFCF, + 0xFFFDDFEC, 0xC3FFFDFF, 0x00803DCF, 0x0000FFC3, + 0xFC7FFFEC, 0x2FFBFFFF, 0xFF5F847F, 0x000C0000, + 0xFFFFFFFE, 0x07FFFFFF, 0x03FF7FFF, 0x00000000, + 0xFEF02596, 0x3BFFECAE, 0x33FF3F5F, 0x00000000, + 0x03000001, 0xC2A003FF, 0xFFFFFEFF, 0xFFFE07FF, + 0xFEFF0FDF, 0x1FFFFFFF, 0x00000040, 0x00000000, + 0xFFFFFFFF, 0x03C7F6FB, 0x03FF03FF, 0x00000000, + 0x00000000, 0xFFFFFFFF, 0xFFFF003F, 0x17FFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x83FFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF07, 0xFFFFFFFF, 0x03FFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x3D7F3DFF, 0xFFFFFFFF, + 0xFFFF3DFF, 0x7F3DFFFF, 0xFF7FFF3D, 0xFFFFFFFF, + 0xFF3DFFFF, 0xFFFFFFFF, 0x87FFFFFF, 0x0003FE00, + 0x0000FFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x001FFFFF, + 0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x007F9FFF, + 0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x0001C7FF, + 0x001FDFFF, 0x001FFFFF, 0x000FFFFF, 0x000DDFFF, + 0xFFFFFFFF, 0xFFCFFFFF, 0x308FFFFF, 0x000003FF, + 0x03FF3800, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF, + 0xFFFFFFFF, 0x000003FF, 0x00000000, 0x00000000, + 0x1FFFFFFF, 0x0FFF0FFF, 0xFFFFFFC0, 0x001F3FFF, + 0xFFFFFFFF, 0xFFFF03FF, 0x03FF03FF, 0x00000000, + 0x0FFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0x03FF0FFF, 0x000FF800, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x000007FF, 0xC0000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x0FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, + 0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF, + 0xFFFFFFFF, 0x5FDFFFFF, 0x0FCF1FDC, 0x1FDC1FFF, + 0x00000000, 0x80000000, 0x00100001, 0x80020000, + 0x001F0000, 0x00000000, 0x1FFF0000, 0x0000FFE2, + 0x3F2FFC84, 0xF3FFFD50, 0x000043E0, 0xFFFFFFFF, + 0x0000001F, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFF7FFF, 0x7FFFFFFF, 0x00F01FFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000001F, + 0xFFFFFFFF, 0xFFFF003F, 0xFFFFFFFF, 0x0000803F, + 0x007FFFFF, 0x7F7F7F7F, 0x7F7F7F7F, 0x00000000, + 0x000000E0, 0x1F3EFFFE, 0xFFFFFFFE, 0xFFFFFFFF, + 0xE67FFFFF, 0xFFFFFFFE, 0xFFFFFFFF, 0xF7FFFFFF, + 0xFFFFFFE0, 0xFFFE1FFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00007FFF, 0x00FFFFFF, 0x00000000, 0xFFFF0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x003FFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0FFFFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00001FFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x07800000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0x000000FF, 0xFFFFFFFF, 0x000FFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFF3FFF, 0xFFFFFFFF, 0xFFFF07FF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, 0x00000000, + 0xE0F8007F, 0x5F7FFDFF, 0xFFFFFFDB, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0003FFFF, 0xFFF80000, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x3FFFFFFF, 0xFFFFFFF0, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x3FFFFFFF, 0xFFFF0000, 0xFFFFFFFF, + 0xFFFCFFFF, 0xFFFFFFFF, 0x000000FF, 0x03FF0000, + 0x0000FFFF, 0x0018000F, 0x0000E000, 0xAA8A0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFFFFFF, + 0x03FF0000, 0x87FFFFFE, 0x07FFFFFE, 0xFFFFFFC0, + 0xFFFFFFFF, 0x7FFFFFFF, 0x1CFCFCFC, 0x00000000, + 0xFFFFEFFF, 0xB7FFFF7F, 0x3FFF3FFF, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF, + 0x00000000, 0x00000000, 0xFFFFFFFF, 0x001FFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x7FFFFFFF, 0xFFFF0000, 0x000007FF, 0x00000000, + 0x3FFFFFFF, 0xFFFFFFFF, 0x003EFF0F, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x3FFFFFFF, 0x000003FF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFD3F, 0x91BFFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x003FFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFEEFF06F, 0x870FFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000007, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0xF807E3E0, + 0x00000FE7, 0x00003C00, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x0000001C, 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, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF3F, 0xF7FFFFFD, 0xF7FFFFFF, + 0xFFDFFFFF, 0xFFDFFFFF, 0xFFFF7FFF, 0xFFFF7FFF, + 0xFFFFFDFF, 0xFFFFFDFF, 0xFFFFCFF7, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000FFFF + } +}; diff --git a/lib/unictype/pr_xid_start.c b/lib/unictype/pr_xid_start.c new file mode 100644 index 000000000..13aab1b59 --- /dev/null +++ b/lib/unictype/pr_xid_start.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_xid_start table. */ +#include "pr_xid_start.h" + +bool +uc_is_property_xid_start (ucs4_t uc) +{ + return bitmap_lookup (&u_property_xid_start, uc); +} + +const uc_property_t UC_PROPERTY_XID_START = + { &uc_is_property_xid_start }; diff --git a/lib/unictype/pr_xid_start.h b/lib/unictype/pr_xid_start.h new file mode 100644 index 000000000..e305f2da2 --- /dev/null +++ b/lib/unictype/pr_xid_start.h @@ -0,0 +1,576 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[3]; + short level2[3 << 7]; + /*unsigned*/ int level3[41 << 4]; + } +u_property_xid_start = +{ + { 3 }, + { + 4 * sizeof (int) / sizeof (short) + 0, + 4 * sizeof (int) / sizeof (short) + 128, + 4 * sizeof (int) / sizeof (short) + 256 + }, + { + 4 + 384 * sizeof (short) / sizeof (int) + 0, + 4 + 384 * sizeof (short) / sizeof (int) + 16, + 4 + 384 * sizeof (short) / sizeof (int) + 32, + 4 + 384 * sizeof (short) / sizeof (int) + 48, + 4 + 384 * sizeof (short) / sizeof (int) + 64, + 4 + 384 * sizeof (short) / sizeof (int) + 80, + 4 + 384 * sizeof (short) / sizeof (int) + 96, + 4 + 384 * sizeof (short) / sizeof (int) + 112, + 4 + 384 * sizeof (short) / sizeof (int) + 128, + 4 + 384 * sizeof (short) / sizeof (int) + 144, + 4 + 384 * sizeof (short) / sizeof (int) + 160, + 4 + 384 * sizeof (short) / sizeof (int) + 176, + 4 + 384 * sizeof (short) / sizeof (int) + 192, + 4 + 384 * sizeof (short) / sizeof (int) + 208, + 4 + 384 * sizeof (short) / sizeof (int) + 224, + 4 + 384 * sizeof (short) / sizeof (int) + 240, + 4 + 384 * sizeof (short) / sizeof (int) + 256, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 272, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 288, + -1, + 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) + 304, + 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) + 304, + 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) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 320, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 336, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 352, + 4 + 384 * sizeof (short) / sizeof (int) + 368, + 4 + 384 * sizeof (short) / sizeof (int) + 384, + -1, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 400, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 416, + 4 + 384 * sizeof (short) / sizeof (int) + 432, + 4 + 384 * sizeof (short) / sizeof (int) + 448, + 4 + 384 * sizeof (short) / sizeof (int) + 464, + 4 + 384 * sizeof (short) / sizeof (int) + 480, + 4 + 384 * sizeof (short) / sizeof (int) + 496, + 4 + 384 * sizeof (short) / sizeof (int) + 512, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 528, + 4 + 384 * sizeof (short) / sizeof (int) + 544, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 560, + 4 + 384 * sizeof (short) / sizeof (int) + 576, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 592, + 4 + 384 * sizeof (short) / sizeof (int) + 608, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 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) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 624, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 4 + 384 * sizeof (short) / sizeof (int) + 304, + 4 + 384 * sizeof (short) / sizeof (int) + 640, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x07FFFFFE, 0x07FFFFFE, + 0x00000000, 0x04200400, 0xFF7FFFFF, 0xFF7FFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x0003FFC3, 0x0000401F, + 0x00000000, 0x00000000, 0x00000000, 0x38000000, + 0xFFFFD740, 0xFFFFFFFB, 0xFFFF7FFF, 0xFFBFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFC03, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x000FFFFF, 0xFFFE0000, 0x027FFFFF, 0xFFFFFFFE, + 0x000000FF, 0x00000000, 0xFFFF0000, 0x000707FF, + 0x00000000, 0x07FFFFFE, 0x000007FF, 0xFFFEC000, + 0xFFFFFFFF, 0xFFFFFFFF, 0x002FFFFF, 0x9C00C060, + 0xFFFD0000, 0x0000FFFF, 0xFFFFE000, 0x00003FFF, + 0xFFFFFFFF, 0x0002003F, 0xFFFFFC00, 0x043007FF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFF0, 0x23FFFFFF, 0xFF010000, 0xF8000003, + 0xFFF99FE0, 0x23C5FDFF, 0xB0004000, 0x00030003, + 0xFFF987E0, 0x036DFDFF, 0x5E000000, 0x001C0000, + 0xFFFBBFE0, 0x23EDFDFF, 0x00010000, 0x00000003, + 0xFFF99FE0, 0x23EDFDFF, 0xB0000000, 0x00020003, + 0xD63DC7E8, 0x03FFC718, 0x00000000, 0x00000000, + 0xFFFDDFE0, 0x03EFFDFF, 0x00000000, 0x00000003, + 0xFFFDDFE0, 0x23EFFDFF, 0x40000000, 0x00000003, + 0xFFFDDFE0, 0x03FFFDFF, 0x00000000, 0x00000003, + 0xFC7FFFE0, 0x2FFBFFFF, 0x0000007F, 0x00000000, + 0xFFFFFFFE, 0x0005FFFF, 0x0000007F, 0x00000000, + 0xFEF02596, 0x2005ECAE, 0x3000005F, 0x00000000, + 0x00000001, 0x00000000, 0xFFFFFEFF, 0x000007FF, + 0x00000F00, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0x000006FB, 0x003F0000, 0x00000000, + 0x00000000, 0xFFFFFFFF, 0xFFFF003F, 0x17FFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x83FFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF07, 0xFFFFFFFF, 0x03FFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x3D7F3DFF, 0xFFFFFFFF, + 0xFFFF3DFF, 0x7F3DFFFF, 0xFF7FFF3D, 0xFFFFFFFF, + 0xFF3DFFFF, 0xFFFFFFFF, 0x07FFFFFF, 0x00000000, + 0x0000FFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x001FFFFF, + 0xFFFFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x007F9FFF, + 0x07FFFFFE, 0xFFFFFFFF, 0xFFFFFFFF, 0x0001C7FF, + 0x0003DFFF, 0x0003FFFF, 0x0003FFFF, 0x0001DFFF, + 0xFFFFFFFF, 0x000FFFFF, 0x10800000, 0x00000000, + 0x00000000, 0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF, + 0xFFFFFFFF, 0x000001FF, 0x00000000, 0x00000000, + 0x1FFFFFFF, 0x00000000, 0xFFFF0000, 0x001F3FFF, + 0xFFFFFFFF, 0x000003FF, 0x000000FE, 0x00000000, + 0x007FFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFE0, 0x000FFFFF, 0x00000FE0, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x0FFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, + 0x3F3FFFFF, 0xFFFFFFFF, 0xAAFF3F3F, 0x3FFFFFFF, + 0xFFFFFFFF, 0x5FDFFFFF, 0x0FCF1FDC, 0x1FDC1FFF, + 0x00000000, 0x00000000, 0x00000000, 0x80020000, + 0x001F0000, 0x00000000, 0x00000000, 0x00000000, + 0x3F2FFC84, 0xF3FFFD50, 0x000043E0, 0xFFFFFFFF, + 0x0000001F, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFF7FFF, 0x7FFFFFFF, 0x00F01FFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x0000001F, + 0xFFFFFFFF, 0xFFFF003F, 0xFFFFFFFF, 0x0000803F, + 0x007FFFFF, 0x7F7F7F7F, 0x7F7F7F7F, 0x00000000, + 0x000000E0, 0x1F3E03FE, 0xFFFFFFFE, 0xFFFFFFFF, + 0xE07FFFFF, 0xFFFFFFFE, 0xFFFFFFFF, 0xF7FFFFFF, + 0xFFFFFFE0, 0xFFFE1FFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00007FFF, 0x00FFFFFF, 0x00000000, 0xFFFF0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x003FFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0FFFFFFF, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00001FFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x07800000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFF7BB, 0x00000007, 0xFFFFFFFF, 0x000FFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0000000F, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFF3FFF, 0xFFFFFFFF, 0xFFFF07FF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x03FFFFFF, 0x00000000, + 0xA0F8007F, 0x5F7FFDFF, 0xFFFFFFDB, 0xFFFFFFFF, + 0xFFFFFFFF, 0x0003FFFF, 0xFFF80000, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x3FFFFFFF, 0xFFFFFFF0, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0x3FFFFFFF, 0xFFFF0000, 0xFFFFFFFF, + 0xFFFCFFFF, 0xFFFFFFFF, 0x000000FF, 0x03FF0000, + 0x00000000, 0x00000000, 0x00000000, 0xAA8A0000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x1FFFFFFF, + 0x00000000, 0x07FFFFFE, 0x07FFFFFE, 0xFFFFFFC0, + 0x3FFFFFFF, 0x7FFFFFFF, 0x1CFCFCFC, 0x00000000, + 0xFFFFEFFF, 0xB7FFFF7F, 0x3FFF3FFF, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x07FFFFFF, + 0x00000000, 0x00000000, 0xFFFFFFFF, 0x001FFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x7FFFFFFF, 0xFFFF0000, 0x000007FF, 0x00000000, + 0x3FFFFFFF, 0xFFFFFFFF, 0x003EFF0F, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFD3F, 0x91BFFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x003FFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFEEF0001, 0x000FFFFF, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00007FFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0x00000007, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFDFFFFF, 0xFFFFFFFF, + 0xDFFFFFFF, 0xEBFFDE64, 0xFFFFFFEF, 0xFFFFFFFF, + 0xDFDFE7BF, 0x7BFFFFFF, 0xFFFDFC5F, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFF3F, 0xF7FFFFFD, 0xF7FFFFFF, + 0xFFDFFFFF, 0xFFDFFFFF, 0xFFFF7FFF, 0xFFFF7FFF, + 0xFFFFFDFF, 0xFFFFFDFF, 0x00000FF7, 0x00000000, + 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0xFFFFFFFF, 0xFFFFFFFF, 0x007FFFFF, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x3FFFFFFF, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/pr_zero_width.c b/lib/unictype/pr_zero_width.c new file mode 100644 index 000000000..7decbdae9 --- /dev/null +++ b/lib/unictype/pr_zero_width.c @@ -0,0 +1,35 @@ +/* Properties of Unicode characters. + Copyright (C) 2002, 2006-2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2002. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "bitmap.h" + +/* Define u_property_zero_width table. */ +#include "pr_zero_width.h" + +bool +uc_is_property_zero_width (ucs4_t uc) +{ + return bitmap_lookup (&u_property_zero_width, uc); +} + +const uc_property_t UC_PROPERTY_ZERO_WIDTH = + { &uc_is_property_zero_width }; diff --git a/lib/unictype/pr_zero_width.h b/lib/unictype/pr_zero_width.h new file mode 100644 index 000000000..a498064e7 --- /dev/null +++ b/lib/unictype/pr_zero_width.h @@ -0,0 +1,452 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[15]; + short level2[3 << 7]; + /*unsigned*/ int level3[7 << 4]; + } +u_property_zero_width = +{ + { 15 }, + { + 16 * sizeof (int) / sizeof (short) + 0, + 16 * sizeof (int) / sizeof (short) + 128, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 * sizeof (int) / sizeof (short) + 256 + }, + { + 16 + 384 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 16, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 32, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 48, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 64, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 80, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + 16 + 384 * sizeof (short) / sizeof (int) + 96, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00002000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x0000000F, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x20000000, 0x00000000, + 0x00008000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00300000, 0x00000000, 0x00000000, + 0x0000F800, 0x00007C00, 0x00000000, 0x0000FC0F, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x80000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x0E000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x07F80000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000002, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/scripts.c b/lib/unictype/scripts.c new file mode 100644 index 000000000..64edfe849 --- /dev/null +++ b/lib/unictype/scripts.c @@ -0,0 +1,75 @@ +/* Scripts of Unicode characters. + Copyright (C) 2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2007. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include + +#include "scripts.h" +#include "scripts_byname.h" + +const uc_script_t * +uc_script (ucs4_t uc) +{ + unsigned int index1 = uc >> script_header_0; + if (index1 < script_header_1) + { + int lookup1 = u_script.level1[index1]; + if (lookup1 >= 0) + { + unsigned int index2 = (uc >> script_header_2) & script_header_3; + int lookup2 = u_script.level2[lookup1 + index2]; + if (lookup2 >= 0) + { + unsigned int index3 = (uc & script_header_4); + unsigned char lookup3 = u_script.level3[lookup2 + index3]; + + if (lookup3 != 0xff) + return &scripts[lookup3]; + } + } + } + return NULL; +} + +const uc_script_t * +uc_script_byname (const char *script_name) +{ + const struct named_script *found; + + found = uc_script_lookup (script_name, strlen (script_name)); + if (found != NULL) + return &scripts[found->index]; + else + return NULL; +} + +bool +uc_is_script (ucs4_t uc, const uc_script_t *script) +{ + return uc_script (uc) == script; +} + +void +uc_all_scripts (const uc_script_t **scriptsp, size_t *countp) +{ + *scriptsp = scripts; + *countp = sizeof (scripts) / sizeof (scripts[0]); +} diff --git a/lib/unictype/scripts.h b/lib/unictype/scripts.h new file mode 100644 index 000000000..8cd1179a2 --- /dev/null +++ b/lib/unictype/scripts.h @@ -0,0 +1,3400 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Unicode scripts. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +static const uc_interval_t script_common_intervals[] = +{ + { 0x0000, 1, 0 }, { 0x0040, 0, 1 }, + { 0x005B, 1, 0 }, { 0x0060, 0, 1 }, + { 0x007B, 1, 0 }, { 0x00A9, 0, 1 }, + { 0x00AB, 1, 0 }, { 0x00B9, 0, 1 }, + { 0x00BB, 1, 0 }, { 0x00BF, 0, 1 }, + { 0x00D7, 1, 1 }, + { 0x00F7, 1, 1 }, + { 0x02B9, 1, 0 }, { 0x02DF, 0, 1 }, + { 0x02E5, 1, 0 }, { 0x02FF, 0, 1 }, + { 0x037E, 1, 1 }, + { 0x0387, 1, 1 }, + { 0x0589, 1, 1 }, + { 0x0600, 1, 0 }, { 0x0603, 0, 1 }, + { 0x060C, 1, 1 }, + { 0x061B, 1, 1 }, + { 0x061F, 1, 1 }, + { 0x0640, 1, 1 }, + { 0x0660, 1, 0 }, { 0x0669, 0, 1 }, + { 0x06DD, 1, 1 }, + { 0x0964, 1, 0 }, { 0x0965, 0, 1 }, + { 0x0970, 1, 1 }, + { 0x0E3F, 1, 1 }, + { 0x10FB, 1, 1 }, + { 0x16EB, 1, 0 }, { 0x16ED, 0, 1 }, + { 0x1735, 1, 0 }, { 0x1736, 0, 1 }, + { 0x1802, 1, 0 }, { 0x1803, 0, 1 }, + { 0x1805, 1, 1 }, + { 0x2000, 1, 0 }, { 0x200B, 0, 1 }, + { 0x200E, 1, 0 }, { 0x2063, 0, 1 }, + { 0x206A, 1, 0 }, { 0x2070, 0, 1 }, + { 0x2074, 1, 0 }, { 0x207E, 0, 1 }, + { 0x2080, 1, 0 }, { 0x208E, 0, 1 }, + { 0x20A0, 1, 0 }, { 0x20B5, 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 }, + { 0x2153, 1, 0 }, { 0x2183, 0, 1 }, + { 0x2190, 1, 0 }, { 0x23E7, 0, 1 }, + { 0x2400, 1, 0 }, { 0x2426, 0, 1 }, + { 0x2440, 1, 0 }, { 0x244A, 0, 1 }, + { 0x2460, 1, 0 }, { 0x269C, 0, 1 }, + { 0x26A0, 1, 0 }, { 0x26B2, 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, 1 }, + { 0x2758, 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 }, + { 0x27D0, 1, 0 }, { 0x27EB, 0, 1 }, + { 0x27F0, 1, 0 }, { 0x27FF, 0, 1 }, + { 0x2900, 1, 0 }, { 0x2B1A, 0, 1 }, + { 0x2B20, 1, 0 }, { 0x2B23, 0, 1 }, + { 0x2E00, 1, 0 }, { 0x2E17, 0, 1 }, + { 0x2E1C, 1, 0 }, { 0x2E1D, 0, 1 }, + { 0x2FF0, 1, 0 }, { 0x2FFB, 0, 1 }, + { 0x3000, 1, 0 }, { 0x3004, 0, 1 }, + { 0x3006, 1, 1 }, + { 0x3008, 1, 0 }, { 0x3020, 0, 1 }, + { 0x3030, 1, 0 }, { 0x3037, 0, 1 }, + { 0x303C, 1, 0 }, { 0x303F, 0, 1 }, + { 0x309B, 1, 0 }, { 0x309C, 0, 1 }, + { 0x30A0, 1, 1 }, + { 0x30FB, 1, 0 }, { 0x30FC, 0, 1 }, + { 0x3190, 1, 0 }, { 0x319F, 0, 1 }, + { 0x31C0, 1, 0 }, { 0x31CF, 0, 1 }, + { 0x3220, 1, 0 }, { 0x3243, 0, 1 }, + { 0x3250, 1, 0 }, { 0x325F, 0, 1 }, + { 0x327E, 1, 0 }, { 0x32FE, 0, 1 }, + { 0x3300, 1, 0 }, { 0x33FF, 0, 1 }, + { 0x4DC0, 1, 0 }, { 0x4DFF, 0, 1 }, + { 0xA700, 1, 0 }, { 0xA71A, 0, 1 }, + { 0xA720, 1, 0 }, { 0xA721, 0, 1 }, + { 0xFD3E, 1, 0 }, { 0xFD3F, 0, 1 }, + { 0xFDFD, 1, 1 }, + { 0xFE10, 1, 0 }, { 0xFE19, 0, 1 }, + { 0xFE30, 1, 0 }, { 0xFE52, 0, 1 }, + { 0xFE54, 1, 0 }, { 0xFE66, 0, 1 }, + { 0xFE68, 1, 0 }, { 0xFE6B, 0, 1 }, + { 0xFEFF, 1, 1 }, + { 0xFF01, 1, 0 }, { 0xFF20, 0, 1 }, + { 0xFF3B, 1, 0 }, { 0xFF40, 0, 1 }, + { 0xFF5B, 1, 0 }, { 0xFF65, 0, 1 }, + { 0xFF70, 1, 1 }, + { 0xFF9E, 1, 0 }, { 0xFF9F, 0, 1 }, + { 0xFFE0, 1, 0 }, { 0xFFE6, 0, 1 }, + { 0xFFE8, 1, 0 }, { 0xFFEE, 0, 1 }, + { 0xFFF9, 1, 0 }, { 0xFFFD, 0, 1 }, + { 0x10100, 1, 0 }, { 0x10102, 0, 1 }, + { 0x10107, 1, 0 }, { 0x10133, 0, 1 }, + { 0x10137, 1, 0 }, { 0x1013F, 0, 1 }, + { 0x1D000, 1, 0 }, { 0x1D0F5, 0, 1 }, + { 0x1D100, 1, 0 }, { 0x1D126, 0, 1 }, + { 0x1D12A, 1, 0 }, { 0x1D166, 0, 1 }, + { 0x1D16A, 1, 0 }, { 0x1D17A, 0, 1 }, + { 0x1D183, 1, 0 }, { 0x1D184, 0, 1 }, + { 0x1D18C, 1, 0 }, { 0x1D1A9, 0, 1 }, + { 0x1D1AE, 1, 0 }, { 0x1D1DD, 0, 1 }, + { 0x1D300, 1, 0 }, { 0x1D356, 0, 1 }, + { 0x1D360, 1, 0 }, { 0x1D371, 0, 1 }, + { 0x1D400, 1, 0 }, { 0x1D454, 0, 1 }, + { 0x1D456, 1, 0 }, { 0x1D49C, 0, 1 }, + { 0x1D49E, 1, 0 }, { 0x1D49F, 0, 1 }, + { 0x1D4A2, 1, 1 }, + { 0x1D4A5, 1, 0 }, { 0x1D4A6, 0, 1 }, + { 0x1D4A9, 1, 0 }, { 0x1D4AC, 0, 1 }, + { 0x1D4AE, 1, 0 }, { 0x1D4B9, 0, 1 }, + { 0x1D4BB, 1, 1 }, + { 0x1D4BD, 1, 0 }, { 0x1D4C3, 0, 1 }, + { 0x1D4C5, 1, 0 }, { 0x1D505, 0, 1 }, + { 0x1D507, 1, 0 }, { 0x1D50A, 0, 1 }, + { 0x1D50D, 1, 0 }, { 0x1D514, 0, 1 }, + { 0x1D516, 1, 0 }, { 0x1D51C, 0, 1 }, + { 0x1D51E, 1, 0 }, { 0x1D539, 0, 1 }, + { 0x1D53B, 1, 0 }, { 0x1D53E, 0, 1 }, + { 0x1D540, 1, 0 }, { 0x1D544, 0, 1 }, + { 0x1D546, 1, 1 }, + { 0x1D54A, 1, 0 }, { 0x1D550, 0, 1 }, + { 0x1D552, 1, 0 }, { 0x1D6A5, 0, 1 }, + { 0x1D6A8, 1, 0 }, { 0x1D7CB, 0, 1 }, + { 0x1D7CE, 1, 0 }, { 0x1D7FF, 0, 1 }, + { 0xE0001, 1, 1 }, + { 0xE0020, 1, 0 }, { 0xE007F, 0, 1 } +}; +static const uc_interval_t script_latin_intervals[] = +{ + { 0x0041, 1, 0 }, { 0x005A, 0, 1 }, + { 0x0061, 1, 0 }, { 0x007A, 0, 1 }, + { 0x00AA, 1, 1 }, + { 0x00BA, 1, 1 }, + { 0x00C0, 1, 0 }, { 0x00D6, 0, 1 }, + { 0x00D8, 1, 0 }, { 0x00F6, 0, 1 }, + { 0x00F8, 1, 0 }, { 0x02B8, 0, 1 }, + { 0x02E0, 1, 0 }, { 0x02E4, 0, 1 }, + { 0x1D00, 1, 0 }, { 0x1D25, 0, 1 }, + { 0x1D2C, 1, 0 }, { 0x1D5C, 0, 1 }, + { 0x1D62, 1, 0 }, { 0x1D65, 0, 1 }, + { 0x1D6B, 1, 0 }, { 0x1D77, 0, 1 }, + { 0x1D79, 1, 0 }, { 0x1DBE, 0, 1 }, + { 0x1E00, 1, 0 }, { 0x1E9B, 0, 1 }, + { 0x1EA0, 1, 0 }, { 0x1EF9, 0, 1 }, + { 0x2071, 1, 1 }, + { 0x207F, 1, 1 }, + { 0x2090, 1, 0 }, { 0x2094, 0, 1 }, + { 0x212A, 1, 0 }, { 0x212B, 0, 1 }, + { 0x2132, 1, 1 }, + { 0x214E, 1, 1 }, + { 0x2184, 1, 1 }, + { 0x2C60, 1, 0 }, { 0x2C6C, 0, 1 }, + { 0x2C74, 1, 0 }, { 0x2C77, 0, 1 }, + { 0xFB00, 1, 0 }, { 0xFB06, 0, 1 }, + { 0xFF21, 1, 0 }, { 0xFF3A, 0, 1 }, + { 0xFF41, 1, 0 }, { 0xFF5A, 0, 1 } +}; +static const uc_interval_t script_greek_intervals[] = +{ + { 0x0374, 1, 0 }, { 0x0375, 0, 1 }, + { 0x037A, 1, 0 }, { 0x037D, 0, 1 }, + { 0x0384, 1, 0 }, { 0x0386, 0, 1 }, + { 0x0388, 1, 0 }, { 0x038A, 0, 1 }, + { 0x038C, 1, 1 }, + { 0x038E, 1, 0 }, { 0x03A1, 0, 1 }, + { 0x03A3, 1, 0 }, { 0x03CE, 0, 1 }, + { 0x03D0, 1, 0 }, { 0x03E1, 0, 1 }, + { 0x03F0, 1, 0 }, { 0x03FF, 0, 1 }, + { 0x1D26, 1, 0 }, { 0x1D2A, 0, 1 }, + { 0x1D5D, 1, 0 }, { 0x1D61, 0, 1 }, + { 0x1D66, 1, 0 }, { 0x1D6A, 0, 1 }, + { 0x1DBF, 1, 1 }, + { 0x1F00, 1, 0 }, { 0x1F15, 0, 1 }, + { 0x1F18, 1, 0 }, { 0x1F1D, 0, 1 }, + { 0x1F20, 1, 0 }, { 0x1F45, 0, 1 }, + { 0x1F48, 1, 0 }, { 0x1F4D, 0, 1 }, + { 0x1F50, 1, 0 }, { 0x1F57, 0, 1 }, + { 0x1F59, 1, 1 }, + { 0x1F5B, 1, 1 }, + { 0x1F5D, 1, 1 }, + { 0x1F5F, 1, 0 }, { 0x1F7D, 0, 1 }, + { 0x1F80, 1, 0 }, { 0x1FB4, 0, 1 }, + { 0x1FB6, 1, 0 }, { 0x1FC4, 0, 1 }, + { 0x1FC6, 1, 0 }, { 0x1FD3, 0, 1 }, + { 0x1FD6, 1, 0 }, { 0x1FDB, 0, 1 }, + { 0x1FDD, 1, 0 }, { 0x1FEF, 0, 1 }, + { 0x1FF2, 1, 0 }, { 0x1FF4, 0, 1 }, + { 0x1FF6, 1, 0 }, { 0x1FFE, 0, 1 }, + { 0x2126, 1, 1 }, + { 0x10140, 1, 0 }, { 0x1018A, 0, 1 }, + { 0x1D200, 1, 0 }, { 0x1D245, 0, 1 } +}; +static const uc_interval_t script_cyrillic_intervals[] = +{ + { 0x0400, 1, 0 }, { 0x0486, 0, 1 }, + { 0x0488, 1, 0 }, { 0x0513, 0, 1 }, + { 0x1D2B, 1, 1 }, + { 0x1D78, 1, 1 } +}; +static const uc_interval_t script_armenian_intervals[] = +{ + { 0x0531, 1, 0 }, { 0x0556, 0, 1 }, + { 0x0559, 1, 0 }, { 0x055F, 0, 1 }, + { 0x0561, 1, 0 }, { 0x0587, 0, 1 }, + { 0x058A, 1, 1 }, + { 0xFB13, 1, 0 }, { 0xFB17, 0, 1 } +}; +static const uc_interval_t script_hebrew_intervals[] = +{ + { 0x0591, 1, 0 }, { 0x05C7, 0, 1 }, + { 0x05D0, 1, 0 }, { 0x05EA, 0, 1 }, + { 0x05F0, 1, 0 }, { 0x05F4, 0, 1 }, + { 0xFB1D, 1, 0 }, { 0xFB36, 0, 1 }, + { 0xFB38, 1, 0 }, { 0xFB3C, 0, 1 }, + { 0xFB3E, 1, 1 }, + { 0xFB40, 1, 0 }, { 0xFB41, 0, 1 }, + { 0xFB43, 1, 0 }, { 0xFB44, 0, 1 }, + { 0xFB46, 1, 0 }, { 0xFB4F, 0, 1 } +}; +static const uc_interval_t script_arabic_intervals[] = +{ + { 0x060B, 1, 1 }, + { 0x060D, 1, 0 }, { 0x0615, 0, 1 }, + { 0x061E, 1, 1 }, + { 0x0621, 1, 0 }, { 0x063A, 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 }, { 0x076D, 0, 1 }, + { 0xFB50, 1, 0 }, { 0xFBB1, 0, 1 }, + { 0xFBD3, 1, 0 }, { 0xFD3D, 0, 1 }, + { 0xFD50, 1, 0 }, { 0xFD8F, 0, 1 }, + { 0xFD92, 1, 0 }, { 0xFDC7, 0, 1 }, + { 0xFDF0, 1, 0 }, { 0xFDFC, 0, 1 }, + { 0xFE70, 1, 0 }, { 0xFE74, 0, 1 }, + { 0xFE76, 1, 0 }, { 0xFEFC, 0, 1 } +}; +static const uc_interval_t script_syriac_intervals[] = +{ + { 0x0700, 1, 0 }, { 0x070D, 0, 1 }, + { 0x070F, 1, 0 }, { 0x074A, 0, 1 }, + { 0x074D, 1, 0 }, { 0x074F, 0, 1 } +}; +static const uc_interval_t script_thaana_intervals[] = +{ + { 0x0780, 1, 0 }, { 0x07B1, 0, 1 } +}; +static const uc_interval_t script_devanagari_intervals[] = +{ + { 0x0901, 1, 0 }, { 0x0939, 0, 1 }, + { 0x093C, 1, 0 }, { 0x094D, 0, 1 }, + { 0x0950, 1, 0 }, { 0x0954, 0, 1 }, + { 0x0958, 1, 0 }, { 0x0963, 0, 1 }, + { 0x0966, 1, 0 }, { 0x096F, 0, 1 }, + { 0x097B, 1, 0 }, { 0x097F, 0, 1 } +}; +static const uc_interval_t script_bengali_intervals[] = +{ + { 0x0981, 1, 0 }, { 0x0983, 0, 1 }, + { 0x0985, 1, 0 }, { 0x098C, 0, 1 }, + { 0x098F, 1, 0 }, { 0x0990, 0, 1 }, + { 0x0993, 1, 0 }, { 0x09A8, 0, 1 }, + { 0x09AA, 1, 0 }, { 0x09B0, 0, 1 }, + { 0x09B2, 1, 1 }, + { 0x09B6, 1, 0 }, { 0x09B9, 0, 1 }, + { 0x09BC, 1, 0 }, { 0x09C4, 0, 1 }, + { 0x09C7, 1, 0 }, { 0x09C8, 0, 1 }, + { 0x09CB, 1, 0 }, { 0x09CE, 0, 1 }, + { 0x09D7, 1, 1 }, + { 0x09DC, 1, 0 }, { 0x09DD, 0, 1 }, + { 0x09DF, 1, 0 }, { 0x09E3, 0, 1 }, + { 0x09E6, 1, 0 }, { 0x09FA, 0, 1 } +}; +static const uc_interval_t script_gurmukhi_intervals[] = +{ + { 0x0A01, 1, 0 }, { 0x0A03, 0, 1 }, + { 0x0A05, 1, 0 }, { 0x0A0A, 0, 1 }, + { 0x0A0F, 1, 0 }, { 0x0A10, 0, 1 }, + { 0x0A13, 1, 0 }, { 0x0A28, 0, 1 }, + { 0x0A2A, 1, 0 }, { 0x0A30, 0, 1 }, + { 0x0A32, 1, 0 }, { 0x0A33, 0, 1 }, + { 0x0A35, 1, 0 }, { 0x0A36, 0, 1 }, + { 0x0A38, 1, 0 }, { 0x0A39, 0, 1 }, + { 0x0A3C, 1, 1 }, + { 0x0A3E, 1, 0 }, { 0x0A42, 0, 1 }, + { 0x0A47, 1, 0 }, { 0x0A48, 0, 1 }, + { 0x0A4B, 1, 0 }, { 0x0A4D, 0, 1 }, + { 0x0A59, 1, 0 }, { 0x0A5C, 0, 1 }, + { 0x0A5E, 1, 1 }, + { 0x0A66, 1, 0 }, { 0x0A74, 0, 1 } +}; +static const uc_interval_t script_gujarati_intervals[] = +{ + { 0x0A81, 1, 0 }, { 0x0A83, 0, 1 }, + { 0x0A85, 1, 0 }, { 0x0A8D, 0, 1 }, + { 0x0A8F, 1, 0 }, { 0x0A91, 0, 1 }, + { 0x0A93, 1, 0 }, { 0x0AA8, 0, 1 }, + { 0x0AAA, 1, 0 }, { 0x0AB0, 0, 1 }, + { 0x0AB2, 1, 0 }, { 0x0AB3, 0, 1 }, + { 0x0AB5, 1, 0 }, { 0x0AB9, 0, 1 }, + { 0x0ABC, 1, 0 }, { 0x0AC5, 0, 1 }, + { 0x0AC7, 1, 0 }, { 0x0AC9, 0, 1 }, + { 0x0ACB, 1, 0 }, { 0x0ACD, 0, 1 }, + { 0x0AD0, 1, 1 }, + { 0x0AE0, 1, 0 }, { 0x0AE3, 0, 1 }, + { 0x0AE6, 1, 0 }, { 0x0AEF, 0, 1 }, + { 0x0AF1, 1, 1 } +}; +static const uc_interval_t script_oriya_intervals[] = +{ + { 0x0B01, 1, 0 }, { 0x0B03, 0, 1 }, + { 0x0B05, 1, 0 }, { 0x0B0C, 0, 1 }, + { 0x0B0F, 1, 0 }, { 0x0B10, 0, 1 }, + { 0x0B13, 1, 0 }, { 0x0B28, 0, 1 }, + { 0x0B2A, 1, 0 }, { 0x0B30, 0, 1 }, + { 0x0B32, 1, 0 }, { 0x0B33, 0, 1 }, + { 0x0B35, 1, 0 }, { 0x0B39, 0, 1 }, + { 0x0B3C, 1, 0 }, { 0x0B43, 0, 1 }, + { 0x0B47, 1, 0 }, { 0x0B48, 0, 1 }, + { 0x0B4B, 1, 0 }, { 0x0B4D, 0, 1 }, + { 0x0B56, 1, 0 }, { 0x0B57, 0, 1 }, + { 0x0B5C, 1, 0 }, { 0x0B5D, 0, 1 }, + { 0x0B5F, 1, 0 }, { 0x0B61, 0, 1 }, + { 0x0B66, 1, 0 }, { 0x0B71, 0, 1 } +}; +static const uc_interval_t script_tamil_intervals[] = +{ + { 0x0B82, 1, 0 }, { 0x0B83, 0, 1 }, + { 0x0B85, 1, 0 }, { 0x0B8A, 0, 1 }, + { 0x0B8E, 1, 0 }, { 0x0B90, 0, 1 }, + { 0x0B92, 1, 0 }, { 0x0B95, 0, 1 }, + { 0x0B99, 1, 0 }, { 0x0B9A, 0, 1 }, + { 0x0B9C, 1, 1 }, + { 0x0B9E, 1, 0 }, { 0x0B9F, 0, 1 }, + { 0x0BA3, 1, 0 }, { 0x0BA4, 0, 1 }, + { 0x0BA8, 1, 0 }, { 0x0BAA, 0, 1 }, + { 0x0BAE, 1, 0 }, { 0x0BB9, 0, 1 }, + { 0x0BBE, 1, 0 }, { 0x0BC2, 0, 1 }, + { 0x0BC6, 1, 0 }, { 0x0BC8, 0, 1 }, + { 0x0BCA, 1, 0 }, { 0x0BCD, 0, 1 }, + { 0x0BD7, 1, 1 }, + { 0x0BE6, 1, 0 }, { 0x0BFA, 0, 1 } +}; +static const uc_interval_t script_telugu_intervals[] = +{ + { 0x0C01, 1, 0 }, { 0x0C03, 0, 1 }, + { 0x0C05, 1, 0 }, { 0x0C0C, 0, 1 }, + { 0x0C0E, 1, 0 }, { 0x0C10, 0, 1 }, + { 0x0C12, 1, 0 }, { 0x0C28, 0, 1 }, + { 0x0C2A, 1, 0 }, { 0x0C33, 0, 1 }, + { 0x0C35, 1, 0 }, { 0x0C39, 0, 1 }, + { 0x0C3E, 1, 0 }, { 0x0C44, 0, 1 }, + { 0x0C46, 1, 0 }, { 0x0C48, 0, 1 }, + { 0x0C4A, 1, 0 }, { 0x0C4D, 0, 1 }, + { 0x0C55, 1, 0 }, { 0x0C56, 0, 1 }, + { 0x0C60, 1, 0 }, { 0x0C61, 0, 1 }, + { 0x0C66, 1, 0 }, { 0x0C6F, 0, 1 } +}; +static const uc_interval_t script_kannada_intervals[] = +{ + { 0x0C82, 1, 0 }, { 0x0C83, 0, 1 }, + { 0x0C85, 1, 0 }, { 0x0C8C, 0, 1 }, + { 0x0C8E, 1, 0 }, { 0x0C90, 0, 1 }, + { 0x0C92, 1, 0 }, { 0x0CA8, 0, 1 }, + { 0x0CAA, 1, 0 }, { 0x0CB3, 0, 1 }, + { 0x0CB5, 1, 0 }, { 0x0CB9, 0, 1 }, + { 0x0CBC, 1, 0 }, { 0x0CC4, 0, 1 }, + { 0x0CC6, 1, 0 }, { 0x0CC8, 0, 1 }, + { 0x0CCA, 1, 0 }, { 0x0CCD, 0, 1 }, + { 0x0CD5, 1, 0 }, { 0x0CD6, 0, 1 }, + { 0x0CDE, 1, 1 }, + { 0x0CE0, 1, 0 }, { 0x0CE3, 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 }, + { 0x0D3E, 1, 0 }, { 0x0D43, 0, 1 }, + { 0x0D46, 1, 0 }, { 0x0D48, 0, 1 }, + { 0x0D4A, 1, 0 }, { 0x0D4D, 0, 1 }, + { 0x0D57, 1, 1 }, + { 0x0D60, 1, 0 }, { 0x0D61, 0, 1 }, + { 0x0D66, 1, 0 }, { 0x0D6F, 0, 1 } +}; +static const uc_interval_t script_sinhala_intervals[] = +{ + { 0x0D82, 1, 0 }, { 0x0D83, 0, 1 }, + { 0x0D85, 1, 0 }, { 0x0D96, 0, 1 }, + { 0x0D9A, 1, 0 }, { 0x0DB1, 0, 1 }, + { 0x0DB3, 1, 0 }, { 0x0DBB, 0, 1 }, + { 0x0DBD, 1, 1 }, + { 0x0DC0, 1, 0 }, { 0x0DC6, 0, 1 }, + { 0x0DCA, 1, 1 }, + { 0x0DCF, 1, 0 }, { 0x0DD4, 0, 1 }, + { 0x0DD6, 1, 1 }, + { 0x0DD8, 1, 0 }, { 0x0DDF, 0, 1 }, + { 0x0DF2, 1, 0 }, { 0x0DF4, 0, 1 } +}; +static const uc_interval_t script_thai_intervals[] = +{ + { 0x0E01, 1, 0 }, { 0x0E3A, 0, 1 }, + { 0x0E40, 1, 0 }, { 0x0E5B, 0, 1 } +}; +static const uc_interval_t script_lao_intervals[] = +{ + { 0x0E81, 1, 0 }, { 0x0E82, 0, 1 }, + { 0x0E84, 1, 1 }, + { 0x0E87, 1, 0 }, { 0x0E88, 0, 1 }, + { 0x0E8A, 1, 1 }, + { 0x0E8D, 1, 1 }, + { 0x0E94, 1, 0 }, { 0x0E97, 0, 1 }, + { 0x0E99, 1, 0 }, { 0x0E9F, 0, 1 }, + { 0x0EA1, 1, 0 }, { 0x0EA3, 0, 1 }, + { 0x0EA5, 1, 1 }, + { 0x0EA7, 1, 1 }, + { 0x0EAA, 1, 0 }, { 0x0EAB, 0, 1 }, + { 0x0EAD, 1, 0 }, { 0x0EB9, 0, 1 }, + { 0x0EBB, 1, 0 }, { 0x0EBD, 0, 1 }, + { 0x0EC0, 1, 0 }, { 0x0EC4, 0, 1 }, + { 0x0EC6, 1, 1 }, + { 0x0EC8, 1, 0 }, { 0x0ECD, 0, 1 }, + { 0x0ED0, 1, 0 }, { 0x0ED9, 0, 1 }, + { 0x0EDC, 1, 0 }, { 0x0EDD, 0, 1 } +}; +static const uc_interval_t script_tibetan_intervals[] = +{ + { 0x0F00, 1, 0 }, { 0x0F47, 0, 1 }, + { 0x0F49, 1, 0 }, { 0x0F6A, 0, 1 }, + { 0x0F71, 1, 0 }, { 0x0F8B, 0, 1 }, + { 0x0F90, 1, 0 }, { 0x0F97, 0, 1 }, + { 0x0F99, 1, 0 }, { 0x0FBC, 0, 1 }, + { 0x0FBE, 1, 0 }, { 0x0FCC, 0, 1 }, + { 0x0FCF, 1, 0 }, { 0x0FD1, 0, 1 } +}; +static const uc_interval_t script_myanmar_intervals[] = +{ + { 0x1000, 1, 0 }, { 0x1021, 0, 1 }, + { 0x1023, 1, 0 }, { 0x1027, 0, 1 }, + { 0x1029, 1, 0 }, { 0x102A, 0, 1 }, + { 0x102C, 1, 0 }, { 0x1032, 0, 1 }, + { 0x1036, 1, 0 }, { 0x1039, 0, 1 }, + { 0x1040, 1, 0 }, { 0x1059, 0, 1 } +}; +static const uc_interval_t script_georgian_intervals[] = +{ + { 0x10A0, 1, 0 }, { 0x10C5, 0, 1 }, + { 0x10D0, 1, 0 }, { 0x10FA, 0, 1 }, + { 0x10FC, 1, 1 }, + { 0x2D00, 1, 0 }, { 0x2D25, 0, 1 } +}; +static const uc_interval_t script_hangul_intervals[] = +{ + { 0x1100, 1, 0 }, { 0x1159, 0, 1 }, + { 0x115F, 1, 0 }, { 0x11A2, 0, 1 }, + { 0x11A8, 1, 0 }, { 0x11F9, 0, 1 }, + { 0x3131, 1, 0 }, { 0x318E, 0, 1 }, + { 0x3200, 1, 0 }, { 0x321E, 0, 1 }, + { 0x3260, 1, 0 }, { 0x327D, 0, 1 }, + { 0xAC00, 1, 0 }, { 0xD7A3, 0, 1 }, + { 0xFFA0, 1, 0 }, { 0xFFBE, 0, 1 }, + { 0xFFC2, 1, 0 }, { 0xFFC7, 0, 1 }, + { 0xFFCA, 1, 0 }, { 0xFFCF, 0, 1 }, + { 0xFFD2, 1, 0 }, { 0xFFD7, 0, 1 }, + { 0xFFDA, 1, 0 }, { 0xFFDC, 0, 1 } +}; +static const uc_interval_t script_ethiopic_intervals[] = +{ + { 0x1200, 1, 0 }, { 0x1248, 0, 1 }, + { 0x124A, 1, 0 }, { 0x124D, 0, 1 }, + { 0x1250, 1, 0 }, { 0x1256, 0, 1 }, + { 0x1258, 1, 1 }, + { 0x125A, 1, 0 }, { 0x125D, 0, 1 }, + { 0x1260, 1, 0 }, { 0x1288, 0, 1 }, + { 0x128A, 1, 0 }, { 0x128D, 0, 1 }, + { 0x1290, 1, 0 }, { 0x12B0, 0, 1 }, + { 0x12B2, 1, 0 }, { 0x12B5, 0, 1 }, + { 0x12B8, 1, 0 }, { 0x12BE, 0, 1 }, + { 0x12C0, 1, 1 }, + { 0x12C2, 1, 0 }, { 0x12C5, 0, 1 }, + { 0x12C8, 1, 0 }, { 0x12D6, 0, 1 }, + { 0x12D8, 1, 0 }, { 0x1310, 0, 1 }, + { 0x1312, 1, 0 }, { 0x1315, 0, 1 }, + { 0x1318, 1, 0 }, { 0x135A, 0, 1 }, + { 0x135F, 1, 0 }, { 0x137C, 0, 1 }, + { 0x1380, 1, 0 }, { 0x1399, 0, 1 }, + { 0x2D80, 1, 0 }, { 0x2D96, 0, 1 }, + { 0x2DA0, 1, 0 }, { 0x2DA6, 0, 1 }, + { 0x2DA8, 1, 0 }, { 0x2DAE, 0, 1 }, + { 0x2DB0, 1, 0 }, { 0x2DB6, 0, 1 }, + { 0x2DB8, 1, 0 }, { 0x2DBE, 0, 1 }, + { 0x2DC0, 1, 0 }, { 0x2DC6, 0, 1 }, + { 0x2DC8, 1, 0 }, { 0x2DCE, 0, 1 }, + { 0x2DD0, 1, 0 }, { 0x2DD6, 0, 1 }, + { 0x2DD8, 1, 0 }, { 0x2DDE, 0, 1 } +}; +static const uc_interval_t script_cherokee_intervals[] = +{ + { 0x13A0, 1, 0 }, { 0x13F4, 0, 1 } +}; +static const uc_interval_t script_canadian_aboriginal_intervals[] = +{ + { 0x1401, 1, 0 }, { 0x1676, 0, 1 } +}; +static const uc_interval_t script_ogham_intervals[] = +{ + { 0x1680, 1, 0 }, { 0x169C, 0, 1 } +}; +static const uc_interval_t script_runic_intervals[] = +{ + { 0x16A0, 1, 0 }, { 0x16EA, 0, 1 }, + { 0x16EE, 1, 0 }, { 0x16F0, 0, 1 } +}; +static const uc_interval_t script_khmer_intervals[] = +{ + { 0x1780, 1, 0 }, { 0x17DD, 0, 1 }, + { 0x17E0, 1, 0 }, { 0x17E9, 0, 1 }, + { 0x17F0, 1, 0 }, { 0x17F9, 0, 1 }, + { 0x19E0, 1, 0 }, { 0x19FF, 0, 1 } +}; +static const uc_interval_t script_mongolian_intervals[] = +{ + { 0x1800, 1, 0 }, { 0x1801, 0, 1 }, + { 0x1804, 1, 1 }, + { 0x1806, 1, 0 }, { 0x180E, 0, 1 }, + { 0x1810, 1, 0 }, { 0x1819, 0, 1 }, + { 0x1820, 1, 0 }, { 0x1877, 0, 1 }, + { 0x1880, 1, 0 }, { 0x18A9, 0, 1 } +}; +static const uc_interval_t script_hiragana_intervals[] = +{ + { 0x3041, 1, 0 }, { 0x3096, 0, 1 }, + { 0x309D, 1, 0 }, { 0x309F, 0, 1 } +}; +static const uc_interval_t script_katakana_intervals[] = +{ + { 0x30A1, 1, 0 }, { 0x30FA, 0, 1 }, + { 0x30FD, 1, 0 }, { 0x30FF, 0, 1 }, + { 0x31F0, 1, 0 }, { 0x31FF, 0, 1 }, + { 0xFF66, 1, 0 }, { 0xFF6F, 0, 1 }, + { 0xFF71, 1, 0 }, { 0xFF9D, 0, 1 } +}; +static const uc_interval_t script_bopomofo_intervals[] = +{ + { 0x3105, 1, 0 }, { 0x312C, 0, 1 }, + { 0x31A0, 1, 0 }, { 0x31B7, 0, 1 } +}; +static const uc_interval_t script_han_intervals[] = +{ + { 0x2E80, 1, 0 }, { 0x2E99, 0, 1 }, + { 0x2E9B, 1, 0 }, { 0x2EF3, 0, 1 }, + { 0x2F00, 1, 0 }, { 0x2FD5, 0, 1 }, + { 0x3005, 1, 1 }, + { 0x3007, 1, 1 }, + { 0x3021, 1, 0 }, { 0x3029, 0, 1 }, + { 0x3038, 1, 0 }, { 0x303B, 0, 1 }, + { 0x3400, 1, 0 }, { 0x4DB5, 0, 1 }, + { 0x4E00, 1, 0 }, { 0x9FBB, 0, 1 }, + { 0xF900, 1, 0 }, { 0xFA2D, 0, 1 }, + { 0xFA30, 1, 0 }, { 0xFA6A, 0, 1 }, + { 0xFA70, 1, 0 }, { 0xFAD9, 0, 1 }, + { 0x20000, 1, 0 }, { 0x2A6D6, 0, 1 }, + { 0x2F800, 1, 0 }, { 0x2FA1D, 0, 1 } +}; +static const uc_interval_t script_yi_intervals[] = +{ + { 0xA000, 1, 0 }, { 0xA48C, 0, 1 }, + { 0xA490, 1, 0 }, { 0xA4C6, 0, 1 } +}; +static const uc_interval_t script_old_italic_intervals[] = +{ + { 0x10300, 1, 0 }, { 0x1031E, 0, 1 }, + { 0x10320, 1, 0 }, { 0x10323, 0, 1 } +}; +static const uc_interval_t script_gothic_intervals[] = +{ + { 0x10330, 1, 0 }, { 0x1034A, 0, 1 } +}; +static const uc_interval_t script_deseret_intervals[] = +{ + { 0x10400, 1, 0 }, { 0x1044F, 0, 1 } +}; +static const uc_interval_t script_inherited_intervals[] = +{ + { 0x0300, 1, 0 }, { 0x036F, 0, 1 }, + { 0x064B, 1, 0 }, { 0x0655, 0, 1 }, + { 0x0670, 1, 1 }, + { 0x1DC0, 1, 0 }, { 0x1DCA, 0, 1 }, + { 0x1DFE, 1, 0 }, { 0x1DFF, 0, 1 }, + { 0x200C, 1, 0 }, { 0x200D, 0, 1 }, + { 0x20D0, 1, 0 }, { 0x20EF, 0, 1 }, + { 0x302A, 1, 0 }, { 0x302F, 0, 1 }, + { 0x3099, 1, 0 }, { 0x309A, 0, 1 }, + { 0xFE00, 1, 0 }, { 0xFE0F, 0, 1 }, + { 0xFE20, 1, 0 }, { 0xFE23, 0, 1 }, + { 0x1D167, 1, 0 }, { 0x1D169, 0, 1 }, + { 0x1D17B, 1, 0 }, { 0x1D182, 0, 1 }, + { 0x1D185, 1, 0 }, { 0x1D18B, 0, 1 }, + { 0x1D1AA, 1, 0 }, { 0x1D1AD, 0, 1 }, + { 0xE0100, 1, 0 }, { 0xE01EF, 0, 1 } +}; +static const uc_interval_t script_tagalog_intervals[] = +{ + { 0x1700, 1, 0 }, { 0x170C, 0, 1 }, + { 0x170E, 1, 0 }, { 0x1714, 0, 1 } +}; +static const uc_interval_t script_hanunoo_intervals[] = +{ + { 0x1720, 1, 0 }, { 0x1734, 0, 1 } +}; +static const uc_interval_t script_buhid_intervals[] = +{ + { 0x1740, 1, 0 }, { 0x1753, 0, 1 } +}; +static const uc_interval_t script_tagbanwa_intervals[] = +{ + { 0x1760, 1, 0 }, { 0x176C, 0, 1 }, + { 0x176E, 1, 0 }, { 0x1770, 0, 1 }, + { 0x1772, 1, 0 }, { 0x1773, 0, 1 } +}; +static const uc_interval_t script_limbu_intervals[] = +{ + { 0x1900, 1, 0 }, { 0x191C, 0, 1 }, + { 0x1920, 1, 0 }, { 0x192B, 0, 1 }, + { 0x1930, 1, 0 }, { 0x193B, 0, 1 }, + { 0x1940, 1, 1 }, + { 0x1944, 1, 0 }, { 0x194F, 0, 1 } +}; +static const uc_interval_t script_tai_le_intervals[] = +{ + { 0x1950, 1, 0 }, { 0x196D, 0, 1 }, + { 0x1970, 1, 0 }, { 0x1974, 0, 1 } +}; +static const uc_interval_t script_linear_b_intervals[] = +{ + { 0x10000, 1, 0 }, { 0x1000B, 0, 1 }, + { 0x1000D, 1, 0 }, { 0x10026, 0, 1 }, + { 0x10028, 1, 0 }, { 0x1003A, 0, 1 }, + { 0x1003C, 1, 0 }, { 0x1003D, 0, 1 }, + { 0x1003F, 1, 0 }, { 0x1004D, 0, 1 }, + { 0x10050, 1, 0 }, { 0x1005D, 0, 1 }, + { 0x10080, 1, 0 }, { 0x100FA, 0, 1 } +}; +static const uc_interval_t script_ugaritic_intervals[] = +{ + { 0x10380, 1, 0 }, { 0x1039D, 0, 1 }, + { 0x1039F, 1, 1 } +}; +static const uc_interval_t script_shavian_intervals[] = +{ + { 0x10450, 1, 0 }, { 0x1047F, 0, 1 } +}; +static const uc_interval_t script_osmanya_intervals[] = +{ + { 0x10480, 1, 0 }, { 0x1049D, 0, 1 }, + { 0x104A0, 1, 0 }, { 0x104A9, 0, 1 } +}; +static const uc_interval_t script_cypriot_intervals[] = +{ + { 0x10800, 1, 0 }, { 0x10805, 0, 1 }, + { 0x10808, 1, 1 }, + { 0x1080A, 1, 0 }, { 0x10835, 0, 1 }, + { 0x10837, 1, 0 }, { 0x10838, 0, 1 }, + { 0x1083C, 1, 1 }, + { 0x1083F, 1, 1 } +}; +static const uc_interval_t script_braille_intervals[] = +{ + { 0x2800, 1, 0 }, { 0x28FF, 0, 1 } +}; +static const uc_interval_t script_buginese_intervals[] = +{ + { 0x1A00, 1, 0 }, { 0x1A1B, 0, 1 }, + { 0x1A1E, 1, 0 }, { 0x1A1F, 0, 1 } +}; +static const uc_interval_t script_coptic_intervals[] = +{ + { 0x03E2, 1, 0 }, { 0x03EF, 0, 1 }, + { 0x2C80, 1, 0 }, { 0x2CEA, 0, 1 }, + { 0x2CF9, 1, 0 }, { 0x2CFF, 0, 1 } +}; +static const uc_interval_t script_new_tai_lue_intervals[] = +{ + { 0x1980, 1, 0 }, { 0x19A9, 0, 1 }, + { 0x19B0, 1, 0 }, { 0x19C9, 0, 1 }, + { 0x19D0, 1, 0 }, { 0x19D9, 0, 1 }, + { 0x19DE, 1, 0 }, { 0x19DF, 0, 1 } +}; +static const uc_interval_t script_glagolitic_intervals[] = +{ + { 0x2C00, 1, 0 }, { 0x2C2E, 0, 1 }, + { 0x2C30, 1, 0 }, { 0x2C5E, 0, 1 } +}; +static const uc_interval_t script_tifinagh_intervals[] = +{ + { 0x2D30, 1, 0 }, { 0x2D65, 0, 1 }, + { 0x2D6F, 1, 1 } +}; +static const uc_interval_t script_syloti_nagri_intervals[] = +{ + { 0xA800, 1, 0 }, { 0xA82B, 0, 1 } +}; +static const uc_interval_t script_old_persian_intervals[] = +{ + { 0x103A0, 1, 0 }, { 0x103C3, 0, 1 }, + { 0x103C8, 1, 0 }, { 0x103D5, 0, 1 } +}; +static const uc_interval_t script_kharoshthi_intervals[] = +{ + { 0x10A00, 1, 0 }, { 0x10A03, 0, 1 }, + { 0x10A05, 1, 0 }, { 0x10A06, 0, 1 }, + { 0x10A0C, 1, 0 }, { 0x10A13, 0, 1 }, + { 0x10A15, 1, 0 }, { 0x10A17, 0, 1 }, + { 0x10A19, 1, 0 }, { 0x10A33, 0, 1 }, + { 0x10A38, 1, 0 }, { 0x10A3A, 0, 1 }, + { 0x10A3F, 1, 0 }, { 0x10A47, 0, 1 }, + { 0x10A50, 1, 0 }, { 0x10A58, 0, 1 } +}; +static const uc_interval_t script_balinese_intervals[] = +{ + { 0x1B00, 1, 0 }, { 0x1B4B, 0, 1 }, + { 0x1B50, 1, 0 }, { 0x1B7C, 0, 1 } +}; +static const uc_interval_t script_cuneiform_intervals[] = +{ + { 0x12000, 1, 0 }, { 0x1236E, 0, 1 }, + { 0x12400, 1, 0 }, { 0x12462, 0, 1 }, + { 0x12470, 1, 0 }, { 0x12473, 0, 1 } +}; +static const uc_interval_t script_phoenician_intervals[] = +{ + { 0x10900, 1, 0 }, { 0x10919, 0, 1 }, + { 0x1091F, 1, 1 } +}; +static const uc_interval_t script_phags_pa_intervals[] = +{ + { 0xA840, 1, 0 }, { 0xA877, 0, 1 } +}; +static const uc_interval_t script_nko_intervals[] = +{ + { 0x07C0, 1, 0 }, { 0x07FA, 0, 1 } +}; +static const uc_script_t scripts[66] = +{ + { + sizeof (script_common_intervals) / sizeof (uc_interval_t), + script_common_intervals, + "Common" + }, + { + sizeof (script_latin_intervals) / sizeof (uc_interval_t), + script_latin_intervals, + "Latin" + }, + { + sizeof (script_greek_intervals) / sizeof (uc_interval_t), + script_greek_intervals, + "Greek" + }, + { + sizeof (script_cyrillic_intervals) / sizeof (uc_interval_t), + script_cyrillic_intervals, + "Cyrillic" + }, + { + sizeof (script_armenian_intervals) / sizeof (uc_interval_t), + script_armenian_intervals, + "Armenian" + }, + { + sizeof (script_hebrew_intervals) / sizeof (uc_interval_t), + script_hebrew_intervals, + "Hebrew" + }, + { + sizeof (script_arabic_intervals) / sizeof (uc_interval_t), + script_arabic_intervals, + "Arabic" + }, + { + sizeof (script_syriac_intervals) / sizeof (uc_interval_t), + script_syriac_intervals, + "Syriac" + }, + { + sizeof (script_thaana_intervals) / sizeof (uc_interval_t), + script_thaana_intervals, + "Thaana" + }, + { + sizeof (script_devanagari_intervals) / sizeof (uc_interval_t), + script_devanagari_intervals, + "Devanagari" + }, + { + sizeof (script_bengali_intervals) / sizeof (uc_interval_t), + script_bengali_intervals, + "Bengali" + }, + { + sizeof (script_gurmukhi_intervals) / sizeof (uc_interval_t), + script_gurmukhi_intervals, + "Gurmukhi" + }, + { + sizeof (script_gujarati_intervals) / sizeof (uc_interval_t), + script_gujarati_intervals, + "Gujarati" + }, + { + sizeof (script_oriya_intervals) / sizeof (uc_interval_t), + script_oriya_intervals, + "Oriya" + }, + { + sizeof (script_tamil_intervals) / sizeof (uc_interval_t), + script_tamil_intervals, + "Tamil" + }, + { + sizeof (script_telugu_intervals) / sizeof (uc_interval_t), + script_telugu_intervals, + "Telugu" + }, + { + sizeof (script_kannada_intervals) / sizeof (uc_interval_t), + script_kannada_intervals, + "Kannada" + }, + { + sizeof (script_malayalam_intervals) / sizeof (uc_interval_t), + script_malayalam_intervals, + "Malayalam" + }, + { + sizeof (script_sinhala_intervals) / sizeof (uc_interval_t), + script_sinhala_intervals, + "Sinhala" + }, + { + sizeof (script_thai_intervals) / sizeof (uc_interval_t), + script_thai_intervals, + "Thai" + }, + { + sizeof (script_lao_intervals) / sizeof (uc_interval_t), + script_lao_intervals, + "Lao" + }, + { + sizeof (script_tibetan_intervals) / sizeof (uc_interval_t), + script_tibetan_intervals, + "Tibetan" + }, + { + sizeof (script_myanmar_intervals) / sizeof (uc_interval_t), + script_myanmar_intervals, + "Myanmar" + }, + { + sizeof (script_georgian_intervals) / sizeof (uc_interval_t), + script_georgian_intervals, + "Georgian" + }, + { + sizeof (script_hangul_intervals) / sizeof (uc_interval_t), + script_hangul_intervals, + "Hangul" + }, + { + sizeof (script_ethiopic_intervals) / sizeof (uc_interval_t), + script_ethiopic_intervals, + "Ethiopic" + }, + { + sizeof (script_cherokee_intervals) / sizeof (uc_interval_t), + script_cherokee_intervals, + "Cherokee" + }, + { + sizeof (script_canadian_aboriginal_intervals) / sizeof (uc_interval_t), + script_canadian_aboriginal_intervals, + "Canadian_Aboriginal" + }, + { + sizeof (script_ogham_intervals) / sizeof (uc_interval_t), + script_ogham_intervals, + "Ogham" + }, + { + sizeof (script_runic_intervals) / sizeof (uc_interval_t), + script_runic_intervals, + "Runic" + }, + { + sizeof (script_khmer_intervals) / sizeof (uc_interval_t), + script_khmer_intervals, + "Khmer" + }, + { + sizeof (script_mongolian_intervals) / sizeof (uc_interval_t), + script_mongolian_intervals, + "Mongolian" + }, + { + sizeof (script_hiragana_intervals) / sizeof (uc_interval_t), + script_hiragana_intervals, + "Hiragana" + }, + { + sizeof (script_katakana_intervals) / sizeof (uc_interval_t), + script_katakana_intervals, + "Katakana" + }, + { + sizeof (script_bopomofo_intervals) / sizeof (uc_interval_t), + script_bopomofo_intervals, + "Bopomofo" + }, + { + sizeof (script_han_intervals) / sizeof (uc_interval_t), + script_han_intervals, + "Han" + }, + { + sizeof (script_yi_intervals) / sizeof (uc_interval_t), + script_yi_intervals, + "Yi" + }, + { + sizeof (script_old_italic_intervals) / sizeof (uc_interval_t), + script_old_italic_intervals, + "Old_Italic" + }, + { + sizeof (script_gothic_intervals) / sizeof (uc_interval_t), + script_gothic_intervals, + "Gothic" + }, + { + sizeof (script_deseret_intervals) / sizeof (uc_interval_t), + script_deseret_intervals, + "Deseret" + }, + { + sizeof (script_inherited_intervals) / sizeof (uc_interval_t), + script_inherited_intervals, + "Inherited" + }, + { + sizeof (script_tagalog_intervals) / sizeof (uc_interval_t), + script_tagalog_intervals, + "Tagalog" + }, + { + sizeof (script_hanunoo_intervals) / sizeof (uc_interval_t), + script_hanunoo_intervals, + "Hanunoo" + }, + { + sizeof (script_buhid_intervals) / sizeof (uc_interval_t), + script_buhid_intervals, + "Buhid" + }, + { + sizeof (script_tagbanwa_intervals) / sizeof (uc_interval_t), + script_tagbanwa_intervals, + "Tagbanwa" + }, + { + sizeof (script_limbu_intervals) / sizeof (uc_interval_t), + script_limbu_intervals, + "Limbu" + }, + { + sizeof (script_tai_le_intervals) / sizeof (uc_interval_t), + script_tai_le_intervals, + "Tai_Le" + }, + { + sizeof (script_linear_b_intervals) / sizeof (uc_interval_t), + script_linear_b_intervals, + "Linear_B" + }, + { + sizeof (script_ugaritic_intervals) / sizeof (uc_interval_t), + script_ugaritic_intervals, + "Ugaritic" + }, + { + sizeof (script_shavian_intervals) / sizeof (uc_interval_t), + script_shavian_intervals, + "Shavian" + }, + { + sizeof (script_osmanya_intervals) / sizeof (uc_interval_t), + script_osmanya_intervals, + "Osmanya" + }, + { + sizeof (script_cypriot_intervals) / sizeof (uc_interval_t), + script_cypriot_intervals, + "Cypriot" + }, + { + sizeof (script_braille_intervals) / sizeof (uc_interval_t), + script_braille_intervals, + "Braille" + }, + { + sizeof (script_buginese_intervals) / sizeof (uc_interval_t), + script_buginese_intervals, + "Buginese" + }, + { + sizeof (script_coptic_intervals) / sizeof (uc_interval_t), + script_coptic_intervals, + "Coptic" + }, + { + sizeof (script_new_tai_lue_intervals) / sizeof (uc_interval_t), + script_new_tai_lue_intervals, + "New_Tai_Lue" + }, + { + sizeof (script_glagolitic_intervals) / sizeof (uc_interval_t), + script_glagolitic_intervals, + "Glagolitic" + }, + { + sizeof (script_tifinagh_intervals) / sizeof (uc_interval_t), + script_tifinagh_intervals, + "Tifinagh" + }, + { + sizeof (script_syloti_nagri_intervals) / sizeof (uc_interval_t), + script_syloti_nagri_intervals, + "Syloti_Nagri" + }, + { + sizeof (script_old_persian_intervals) / sizeof (uc_interval_t), + script_old_persian_intervals, + "Old_Persian" + }, + { + sizeof (script_kharoshthi_intervals) / sizeof (uc_interval_t), + script_kharoshthi_intervals, + "Kharoshthi" + }, + { + sizeof (script_balinese_intervals) / sizeof (uc_interval_t), + script_balinese_intervals, + "Balinese" + }, + { + sizeof (script_cuneiform_intervals) / sizeof (uc_interval_t), + script_cuneiform_intervals, + "Cuneiform" + }, + { + sizeof (script_phoenician_intervals) / sizeof (uc_interval_t), + script_phoenician_intervals, + "Phoenician" + }, + { + sizeof (script_phags_pa_intervals) / sizeof (uc_interval_t), + script_phags_pa_intervals, + "Phags_Pa" + }, + { + sizeof (script_nko_intervals) / sizeof (uc_interval_t), + script_nko_intervals, + "Nko" + } +}; +#define script_header_0 16 +#define script_header_1 15 +#define script_header_2 7 +#define script_header_3 511 +#define script_header_4 127 +static const +struct + { + int level1[15]; + short level2[4 << 9]; + unsigned char level3[127 << 7]; + } +u_script = +{ + { + 0, 512, 1024, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 1536 + }, + { + 0, 128, 256, 256, 256, 384, 512, 640, + 768, 896, 1024, 1152, 1280, 1408, 1536, 1664, + -1, -1, 1792, 1920, 2048, 2176, 2304, 2432, + 2560, 2688, 2816, 2944, 3072, 3200, 3328, 3456, + 3584, 3712, 3840, 3968, 4096, 4224, 4352, 4480, + 4608, 4736, 4736, 4736, 4864, 4992, 5120, 5248, + 5376, 5504, 5632, 5760, 5888, -1, 6016, -1, + -1, -1, 6144, 6272, 256, 6400, 6528, 6656, + 6784, 6912, 7040, 7168, 7296, 7296, 7296, 7424, + 7552, 7296, 7296, 7296, 7296, 7680, 7808, 7936, + 8064, 8064, 7296, 7296, 7296, 7296, 8192, -1, + 8320, 8448, 8576, 8704, 8832, 8960, 9088, 9216, + 9344, 9472, 9600, 9728, 9856, 9984, 7296, 7296, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 10112, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 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, + 10368, 10368, 10368, 10368, 10368, 10368, 10368, 10368, + 10368, 10496, -1, -1, -1, -1, 10624, -1, + 10752, -1, -1, -1, -1, -1, -1, -1, + 10880, 10880, 10880, 10880, 10880, 10880, 10880, 10880, + 10880, 10880, 10880, 10880, 10880, 10880, 10880, 10880, + 10880, 10880, 10880, 10880, 10880, 10880, 10880, 10880, + 10880, 10880, 10880, 10880, 10880, 10880, 10880, 10880, + 10880, 10880, 10880, 10880, 10880, 10880, 10880, 10880, + 10880, 10880, 10880, 10880, 10880, 10880, 10880, 10880, + 10880, 10880, 10880, 10880, 10880, 10880, 10880, 10880, + 10880, 10880, 10880, 10880, 10880, 10880, 10880, 10880, + 10880, 10880, 10880, 10880, 10880, 10880, 10880, 10880, + 10880, 10880, 10880, 10880, 10880, 10880, 10880, 10880, + 10880, 10880, 10880, 10880, 10880, 10880, 10880, 11008, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -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, 11136, 11264, 11392, 11520, + 11648, 11648, 11776, 11904, 12032, 12160, 12288, 12416, + 12544, 12672, 12800, 12928, -1, -1, 13056, 13184, + 13312, 13440, -1, -1, -1, -1, -1, -1, + 13568, -1, 13696, -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, -1, -1, -1, -1, + 13952, 13952, 13952, 13952, 13952, 13952, 14080, -1, + 14208, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 7296, 14336, 14464, 14592, 14720, -1, 14848, -1, + 14976, 15104, 15232, 7296, 7296, 15360, 7296, 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, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -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, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 9088, 9088, 9088, + 9088, 9088, 9088, 9088, 9088, 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, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -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, 15744, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 15872, -1, 16000, 16128, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -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, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 0, 0, 0, 0, 0, + 0, 1, 1, 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, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1, 0, 0, 0, 0, 0, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 0, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 0, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 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, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 1, 1, 1, 1, 1, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 255, 255, 255, 255, 2, 2, 255, 255, + 255, 255, 2, 2, 2, 2, 0, 255, + 255, 255, 255, 255, 2, 2, 2, 0, + 2, 2, 2, 255, 2, 255, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 255, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 255, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 54, 54, 54, 54, 54, 54, + 54, 54, 54, 54, 54, 54, 54, 54, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 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, 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, 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, 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, + 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 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, 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, + 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, 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, 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, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 255, + 255, 4, 4, 4, 4, 4, 4, 4, + 255, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, + 255, 0, 4, 255, 255, 255, 255, 255, + 255, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, + 255, 255, 255, 255, 255, 255, 255, 255, + 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, + 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, 255, 255, + 255, 255, 255, 6, 0, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 255, 255, + 255, 255, 255, 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, 255, 255, 255, 255, 255, + 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, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 6, 6, 6, 6, 6, 6, + 40, 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, 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, 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, + 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, + 7, 7, 7, 7, 7, 7, 7, 7, + 7, 7, 7, 7, 7, 7, 255, 7, + 7, 7, 7, 7, 7, 7, 7, 7, + 7, 7, 7, 7, 7, 7, 7, 7, + 7, 7, 7, 7, 7, 7, 7, 7, + 7, 7, 7, 7, 7, 7, 7, 7, + 7, 7, 7, 7, 7, 7, 7, 7, + 7, 7, 7, 7, 7, 7, 7, 7, + 7, 7, 7, 7, 7, 7, 7, 7, + 7, 7, 7, 255, 255, 7, 7, 7, + 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, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 65, 65, 65, 65, 65, 65, 65, 65, + 65, 65, 65, 65, 65, 65, 65, 65, + 65, 65, 65, 65, 65, 65, 65, 65, + 65, 65, 65, 65, 65, 65, 65, 65, + 65, 65, 65, 65, 65, 65, 65, 65, + 65, 65, 65, 65, 65, 65, 65, 65, + 65, 65, 65, 65, 65, 65, 65, 65, + 65, 65, 65, 255, 255, 255, 255, 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, 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, 9, + 9, 9, 255, 255, 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, 255, 255, 255, + 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, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 9, 9, 9, 9, 9, + 255, 10, 10, 10, 255, 10, 10, 10, + 10, 10, 10, 10, 10, 255, 255, 10, + 10, 255, 255, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, + 10, 255, 10, 10, 10, 10, 10, 10, + 10, 255, 10, 255, 255, 255, 10, 10, + 10, 10, 255, 255, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 255, 255, 10, + 10, 255, 255, 10, 10, 10, 10, 255, + 255, 255, 255, 255, 255, 255, 255, 10, + 255, 255, 255, 255, 10, 10, 255, 10, + 10, 10, 10, 10, 255, 255, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 10, 10, 10, 10, 10, + 10, 10, 10, 255, 255, 255, 255, 255, + 255, 11, 11, 11, 255, 11, 11, 11, + 11, 11, 11, 255, 255, 255, 255, 11, + 11, 255, 255, 11, 11, 11, 11, 11, + 11, 11, 11, 11, 11, 11, 11, 11, + 11, 11, 11, 11, 11, 11, 11, 11, + 11, 255, 11, 11, 11, 11, 11, 11, + 11, 255, 11, 11, 255, 11, 11, 255, + 11, 11, 255, 255, 11, 255, 11, 11, + 11, 11, 11, 255, 255, 255, 255, 11, + 11, 255, 255, 11, 11, 11, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 11, 11, 11, 11, 255, 11, 255, + 255, 255, 255, 255, 255, 255, 11, 11, + 11, 11, 11, 11, 11, 11, 11, 11, + 11, 11, 11, 11, 11, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 12, 12, 12, 255, 12, 12, 12, + 12, 12, 12, 12, 12, 12, 255, 12, + 12, 12, 255, 12, 12, 12, 12, 12, + 12, 12, 12, 12, 12, 12, 12, 12, + 12, 12, 12, 12, 12, 12, 12, 12, + 12, 255, 12, 12, 12, 12, 12, 12, + 12, 255, 12, 12, 255, 12, 12, 12, + 12, 12, 255, 255, 12, 12, 12, 12, + 12, 12, 12, 12, 12, 12, 255, 12, + 12, 12, 255, 12, 12, 12, 255, 255, + 12, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 12, 12, 12, 12, 255, 255, 12, 12, + 12, 12, 12, 12, 12, 12, 12, 12, + 255, 12, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 13, 13, 13, 255, 13, 13, 13, + 13, 13, 13, 13, 13, 255, 255, 13, + 13, 255, 255, 13, 13, 13, 13, 13, + 13, 13, 13, 13, 13, 13, 13, 13, + 13, 13, 13, 13, 13, 13, 13, 13, + 13, 255, 13, 13, 13, 13, 13, 13, + 13, 255, 13, 13, 255, 13, 13, 13, + 13, 13, 255, 255, 13, 13, 13, 13, + 13, 13, 13, 13, 255, 255, 255, 13, + 13, 255, 255, 13, 13, 13, 255, 255, + 255, 255, 255, 255, 255, 255, 13, 13, + 255, 255, 255, 255, 13, 13, 255, 13, + 13, 13, 255, 255, 255, 255, 13, 13, + 13, 13, 13, 13, 13, 13, 13, 13, + 13, 13, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 14, 14, 255, 14, 14, 14, + 14, 14, 14, 255, 255, 255, 14, 14, + 14, 255, 14, 14, 14, 14, 255, 255, + 255, 14, 14, 255, 14, 255, 14, 14, + 255, 255, 255, 14, 14, 255, 255, 255, + 14, 14, 14, 255, 255, 255, 14, 14, + 14, 14, 14, 14, 14, 14, 14, 14, + 14, 14, 255, 255, 255, 255, 14, 14, + 14, 14, 14, 255, 255, 255, 14, 14, + 14, 255, 14, 14, 14, 14, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 14, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 14, 14, + 14, 14, 14, 14, 14, 14, 14, 14, + 14, 14, 14, 14, 14, 14, 14, 14, + 14, 14, 14, 255, 255, 255, 255, 255, + 255, 15, 15, 15, 255, 15, 15, 15, + 15, 15, 15, 15, 15, 255, 15, 15, + 15, 255, 15, 15, 15, 15, 15, 15, + 15, 15, 15, 15, 15, 15, 15, 15, + 15, 15, 15, 15, 15, 15, 15, 15, + 15, 255, 15, 15, 15, 15, 15, 15, + 15, 15, 15, 15, 255, 15, 15, 15, + 15, 15, 255, 255, 255, 255, 15, 15, + 15, 15, 15, 15, 15, 255, 15, 15, + 15, 255, 15, 15, 15, 15, 255, 255, + 255, 255, 255, 255, 255, 15, 15, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 15, 15, 255, 255, 255, 255, 15, 15, + 15, 15, 15, 15, 15, 15, 15, 15, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 16, 16, 255, 16, 16, 16, + 16, 16, 16, 16, 16, 255, 16, 16, + 16, 255, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, + 16, 255, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 255, 16, 16, 16, + 16, 16, 255, 255, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 255, 16, 16, + 16, 255, 16, 16, 16, 16, 255, 255, + 255, 255, 255, 255, 255, 16, 16, 255, + 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, 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, 255, 255, 255, 255, 17, 17, + 17, 17, 17, 17, 255, 255, 17, 17, + 17, 255, 17, 17, 17, 17, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 17, + 255, 255, 255, 255, 255, 255, 255, 255, + 17, 17, 255, 255, 255, 255, 17, 17, + 17, 17, 17, 17, 17, 17, 17, 17, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 18, 18, 255, 18, 18, 18, + 18, 18, 18, 18, 18, 18, 18, 18, + 18, 18, 18, 18, 18, 18, 18, 255, + 255, 255, 18, 18, 18, 18, 18, 18, + 18, 18, 18, 18, 18, 18, 18, 18, + 18, 18, 18, 18, 18, 18, 18, 18, + 18, 18, 255, 18, 18, 18, 18, 18, + 18, 18, 18, 18, 255, 18, 255, 255, + 18, 18, 18, 18, 18, 18, 18, 255, + 255, 255, 18, 255, 255, 255, 255, 18, + 18, 18, 18, 18, 18, 255, 18, 255, + 18, 18, 18, 18, 18, 18, 18, 18, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 18, 18, 18, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 19, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 255, 255, 255, 255, 0, + 19, 19, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 19, 19, 19, 19, + 19, 19, 19, 19, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 20, 20, 255, 20, 255, 255, 20, + 20, 255, 20, 255, 255, 20, 255, 255, + 255, 255, 255, 255, 20, 20, 20, 20, + 255, 20, 20, 20, 20, 20, 20, 20, + 255, 20, 20, 20, 255, 20, 255, 20, + 255, 255, 20, 20, 255, 20, 20, 20, + 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 255, 20, 20, 20, 255, 255, + 20, 20, 20, 20, 20, 255, 20, 255, + 20, 20, 20, 20, 20, 20, 255, 255, + 20, 20, 20, 20, 20, 20, 20, 20, + 20, 20, 255, 255, 20, 20, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 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, 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, 21, 21, + 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, + 21, 21, 21, 21, 21, 21, 21, 21, + 21, 21, 21, 21, 21, 21, 21, 21, + 21, 21, 21, 255, 255, 255, 255, 255, + 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, + 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, 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, 255, 255, 21, + 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, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 255, 22, 22, 22, 22, 22, + 255, 22, 22, 255, 22, 22, 22, 22, + 22, 22, 22, 255, 255, 255, 22, 22, + 22, 22, 255, 255, 255, 255, 255, 255, + 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 23, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 23, 23, 23, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 23, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 0, 23, 255, 255, 255, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 255, 255, 255, 255, 255, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 255, 255, 255, 255, 255, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 255, 255, 255, 255, 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, 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, 25, 25, + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 255, 25, 25, 25, 25, 255, 255, + 25, 25, 25, 25, 25, 25, 25, 255, + 25, 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, 25, 25, 25, 25, 25, + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 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, 25, 25, 25, 25, 25, + 25, 255, 25, 25, 25, 25, 255, 255, + 25, 25, 25, 25, 25, 25, 25, 255, + 25, 255, 25, 25, 25, 25, 255, 255, + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 25, 25, 25, 25, 25, 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, 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, 25, 25, + 25, 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, 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, 25, 25, + 25, 25, 25, 25, 25, 25, 25, 25, + 25, 25, 25, 255, 255, 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, 25, 25, 25, 255, 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, 255, 255, 255, 255, 255, 255, + 26, 26, 26, 26, 26, 26, 26, 26, + 26, 26, 26, 26, 26, 26, 26, 26, + 26, 26, 26, 26, 26, 26, 26, 26, + 26, 26, 26, 26, 26, 26, 26, 26, + 26, 26, 26, 26, 26, 26, 26, 26, + 26, 26, 26, 26, 26, 26, 26, 26, + 26, 26, 26, 26, 26, 26, 26, 26, + 26, 26, 26, 26, 26, 26, 26, 26, + 26, 26, 26, 26, 26, 26, 26, 26, + 26, 26, 26, 26, 26, 26, 26, 26, + 26, 26, 26, 26, 26, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 27, + 27, 27, 27, 27, 27, 27, 27, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 28, 28, 28, 28, 28, 28, 28, 28, + 28, 28, 28, 28, 28, 28, 28, 28, + 28, 28, 28, 28, 28, 28, 28, 28, + 28, 28, 28, 28, 28, 255, 255, 255, + 29, 29, 29, 29, 29, 29, 29, 29, + 29, 29, 29, 29, 29, 29, 29, 29, + 29, 29, 29, 29, 29, 29, 29, 29, + 29, 29, 29, 29, 29, 29, 29, 29, + 29, 29, 29, 29, 29, 29, 29, 29, + 29, 29, 29, 29, 29, 29, 29, 29, + 29, 29, 29, 29, 29, 29, 29, 29, + 29, 29, 29, 29, 29, 29, 29, 29, + 29, 29, 29, 29, 29, 29, 29, 29, + 29, 29, 29, 0, 0, 0, 29, 29, + 29, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 41, 41, 41, 41, 41, 41, 41, 41, + 41, 41, 41, 41, 41, 255, 41, 41, + 41, 41, 41, 41, 41, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 42, 42, 42, 42, 42, 42, 42, 42, + 42, 42, 42, 42, 42, 42, 42, 42, + 42, 42, 42, 42, 42, 0, 0, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 43, 43, 43, 43, 43, 43, 43, 43, + 43, 43, 43, 43, 43, 43, 43, 43, + 43, 43, 43, 43, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 44, 44, 44, 44, 44, 44, 44, 44, + 44, 44, 44, 44, 44, 255, 44, 44, + 44, 255, 44, 44, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 30, 255, 255, + 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 255, 255, 255, 255, 255, 255, + 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 255, 255, 255, 255, 255, 255, + 31, 31, 0, 0, 31, 0, 31, 31, + 31, 31, 31, 31, 31, 31, 31, 255, + 31, 31, 31, 31, 31, 31, 31, 31, + 31, 31, 255, 255, 255, 255, 255, 255, + 31, 31, 31, 31, 31, 31, 31, 31, + 31, 31, 31, 31, 31, 31, 31, 31, + 31, 31, 31, 31, 31, 31, 31, 31, + 31, 31, 31, 31, 31, 31, 31, 31, + 31, 31, 31, 31, 31, 31, 31, 31, + 31, 31, 31, 31, 31, 31, 31, 31, + 31, 31, 31, 31, 31, 31, 31, 31, + 31, 31, 31, 31, 31, 31, 31, 31, + 31, 31, 31, 31, 31, 31, 31, 31, + 31, 31, 31, 31, 31, 31, 31, 31, + 31, 31, 31, 31, 31, 31, 31, 31, + 255, 255, 255, 255, 255, 255, 255, 255, + 31, 31, 31, 31, 31, 31, 31, 31, + 31, 31, 31, 31, 31, 31, 31, 31, + 31, 31, 31, 31, 31, 31, 31, 31, + 31, 31, 31, 31, 31, 31, 31, 31, + 31, 31, 31, 31, 31, 31, 31, 31, + 31, 31, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 45, 45, 45, 45, 45, 45, 45, 45, + 45, 45, 45, 45, 45, 45, 45, 45, + 45, 45, 45, 45, 45, 45, 45, 45, + 45, 45, 45, 45, 45, 255, 255, 255, + 45, 45, 45, 45, 45, 45, 45, 45, + 45, 45, 45, 45, 255, 255, 255, 255, + 45, 45, 45, 45, 45, 45, 45, 45, + 45, 45, 45, 45, 255, 255, 255, 255, + 45, 255, 255, 255, 45, 45, 45, 45, + 45, 45, 45, 45, 45, 45, 45, 45, + 46, 46, 46, 46, 46, 46, 46, 46, + 46, 46, 46, 46, 46, 46, 46, 46, + 46, 46, 46, 46, 46, 46, 46, 46, + 46, 46, 46, 46, 46, 46, 255, 255, + 46, 46, 46, 46, 46, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 55, 55, 55, 55, 55, 55, 55, 55, + 55, 55, 55, 55, 55, 55, 55, 55, + 55, 55, 55, 55, 55, 55, 55, 55, + 55, 55, 55, 55, 55, 55, 55, 55, + 55, 55, 55, 55, 55, 55, 55, 55, + 55, 55, 255, 255, 255, 255, 255, 255, + 55, 55, 55, 55, 55, 55, 55, 55, + 55, 55, 55, 55, 55, 55, 55, 55, + 55, 55, 55, 55, 55, 55, 55, 55, + 55, 55, 255, 255, 255, 255, 255, 255, + 55, 55, 55, 55, 55, 55, 55, 55, + 55, 55, 255, 255, 255, 255, 55, 55, + 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 30, 30, 30, + 30, 30, 30, 30, 30, 30, 30, 30, + 53, 53, 53, 53, 53, 53, 53, 53, + 53, 53, 53, 53, 53, 53, 53, 53, + 53, 53, 53, 53, 53, 53, 53, 53, + 53, 53, 53, 53, 255, 255, 53, 53, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 61, 61, 61, 61, 61, 61, 61, 61, + 61, 61, 61, 61, 61, 61, 61, 61, + 61, 61, 61, 61, 61, 61, 61, 61, + 61, 61, 61, 61, 61, 61, 61, 61, + 61, 61, 61, 61, 61, 61, 61, 61, + 61, 61, 61, 61, 61, 61, 61, 61, + 61, 61, 61, 61, 61, 61, 61, 61, + 61, 61, 61, 61, 61, 61, 61, 61, + 61, 61, 61, 61, 61, 61, 61, 61, + 61, 61, 61, 61, 255, 255, 255, 255, + 61, 61, 61, 61, 61, 61, 61, 61, + 61, 61, 61, 61, 61, 61, 61, 61, + 61, 61, 61, 61, 61, 61, 61, 61, + 61, 61, 61, 61, 61, 61, 61, 61, + 61, 61, 61, 61, 61, 61, 61, 61, + 61, 61, 61, 61, 61, 255, 255, 255, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 2, 2, + 2, 2, 2, 3, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 2, 2, 2, + 2, 2, 1, 1, 1, 1, 2, 2, + 2, 2, 2, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 3, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 2, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 40, 40, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 255, 255, 255, 255, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 255, 255, 255, 255, 255, 255, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 255, 255, + 2, 2, 2, 2, 2, 2, 255, 255, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 255, 255, + 2, 2, 2, 2, 2, 2, 255, 255, + 2, 2, 2, 2, 2, 2, 2, 2, + 255, 2, 255, 2, 255, 2, 255, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 255, 255, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 255, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 255, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 255, 255, 2, 2, + 2, 2, 2, 2, 255, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 255, 255, 2, 2, 2, 255, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 255, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 40, 40, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, + 0, 1, 255, 255, 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, 255, + 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, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2, 0, + 0, 0, 1, 1, 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, 1, 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, 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, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 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, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 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, + 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, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 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, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 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, 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, 255, + 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, 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, 255, 255, 255, 255, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 52, 52, 52, 52, 52, 52, 52, 52, + 52, 52, 52, 52, 52, 52, 52, 52, + 52, 52, 52, 52, 52, 52, 52, 52, + 52, 52, 52, 52, 52, 52, 52, 52, + 52, 52, 52, 52, 52, 52, 52, 52, + 52, 52, 52, 52, 52, 52, 52, 52, + 52, 52, 52, 52, 52, 52, 52, 52, + 52, 52, 52, 52, 52, 52, 52, 52, + 52, 52, 52, 52, 52, 52, 52, 52, + 52, 52, 52, 52, 52, 52, 52, 52, + 52, 52, 52, 52, 52, 52, 52, 52, + 52, 52, 52, 52, 52, 52, 52, 52, + 52, 52, 52, 52, 52, 52, 52, 52, + 52, 52, 52, 52, 52, 52, 52, 52, + 52, 52, 52, 52, 52, 52, 52, 52, + 52, 52, 52, 52, 52, 52, 52, 52, + 0, 0, 0, 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, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 56, 56, 56, 56, 56, 56, 56, 56, + 56, 56, 56, 56, 56, 56, 56, 56, + 56, 56, 56, 56, 56, 56, 56, 56, + 56, 56, 56, 56, 56, 56, 56, 56, + 56, 56, 56, 56, 56, 56, 56, 56, + 56, 56, 56, 56, 56, 56, 56, 255, + 56, 56, 56, 56, 56, 56, 56, 56, + 56, 56, 56, 56, 56, 56, 56, 56, + 56, 56, 56, 56, 56, 56, 56, 56, + 56, 56, 56, 56, 56, 56, 56, 56, + 56, 56, 56, 56, 56, 56, 56, 56, + 56, 56, 56, 56, 56, 56, 56, 255, + 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 255, 255, 255, + 255, 255, 255, 255, 1, 1, 1, 1, + 255, 255, 255, 255, 255, 255, 255, 255, + 54, 54, 54, 54, 54, 54, 54, 54, + 54, 54, 54, 54, 54, 54, 54, 54, + 54, 54, 54, 54, 54, 54, 54, 54, + 54, 54, 54, 54, 54, 54, 54, 54, + 54, 54, 54, 54, 54, 54, 54, 54, + 54, 54, 54, 54, 54, 54, 54, 54, + 54, 54, 54, 54, 54, 54, 54, 54, + 54, 54, 54, 54, 54, 54, 54, 54, + 54, 54, 54, 54, 54, 54, 54, 54, + 54, 54, 54, 54, 54, 54, 54, 54, + 54, 54, 54, 54, 54, 54, 54, 54, + 54, 54, 54, 54, 54, 54, 54, 54, + 54, 54, 54, 54, 54, 54, 54, 54, + 54, 54, 54, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 54, 54, 54, 54, 54, 54, 54, + 23, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 23, 23, 23, 23, 23, + 23, 23, 23, 23, 23, 23, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 57, 57, 57, 57, 57, 57, 57, 57, + 57, 57, 57, 57, 57, 57, 57, 57, + 57, 57, 57, 57, 57, 57, 57, 57, + 57, 57, 57, 57, 57, 57, 57, 57, + 57, 57, 57, 57, 57, 57, 57, 57, + 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, + 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, 255, 255, 255, 255, 255, + 25, 25, 25, 25, 25, 25, 25, 255, + 25, 25, 25, 25, 25, 25, 25, 255, + 25, 25, 25, 25, 25, 25, 25, 255, + 25, 25, 25, 25, 25, 25, 25, 255, + 25, 25, 25, 25, 25, 25, 25, 255, + 25, 25, 25, 25, 25, 25, 25, 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, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 255, 255, 255, 255, 0, 0, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 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, 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, 35, 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, + 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, + 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, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 255, 255, 255, 255, + 0, 0, 0, 0, 0, 35, 0, 35, + 0, 0, 0, 0, 0, 0, 0, 0, + 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, + 0, 0, 0, 0, 0, 0, 0, 0, + 35, 35, 35, 35, 0, 0, 0, 0, + 255, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 255, + 255, 40, 40, 0, 0, 32, 32, 32, + 0, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 0, 0, 33, 33, 33, + 255, 255, 255, 255, 255, 34, 34, 34, + 34, 34, 34, 34, 34, 34, 34, 34, + 34, 34, 34, 34, 34, 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, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 255, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 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, + 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, + 33, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 33, 33, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 255, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 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, + 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, 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, + 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, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 36, 36, 255, 255, 255, + 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 36, 36, 36, 36, 36, + 36, 36, 36, 36, 36, 36, 36, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 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, 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, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 58, 58, 58, 58, 58, 58, 58, 58, + 58, 58, 58, 58, 58, 58, 58, 58, + 58, 58, 58, 58, 58, 58, 58, 58, + 58, 58, 58, 58, 58, 58, 58, 58, + 58, 58, 58, 58, 58, 58, 58, 58, + 58, 58, 58, 58, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 255, 255, 255, 255, 255, 255, 255, 255, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 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, 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, 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, + 35, 35, 35, 35, 35, 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, + 1, 1, 1, 1, 1, 1, 1, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 4, 4, 4, 4, 4, + 255, 255, 255, 255, 255, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 255, + 5, 5, 5, 5, 5, 255, 5, 255, + 5, 5, 255, 5, 5, 255, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, + 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, 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, 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, + 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, 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, 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, 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, + 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, 6, 6, 6, 6, 0, 0, + 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, 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, 6, + 255, 255, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 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, 255, 255, 255, 255, 255, 255, 255, + 6, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 0, 255, 255, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 255, 255, 255, 255, 255, 255, + 40, 40, 40, 40, 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, 255, 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, 255, + 6, 6, 6, 6, 6, 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, 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, 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, 6, 6, 6, 6, 6, 6, 6, + 6, 6, 6, 6, 6, 255, 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, 1, 1, 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, 0, 0, + 0, 1, 1, 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, 0, 0, + 0, 0, 0, 0, 0, 0, 33, 33, + 33, 33, 33, 33, 33, 33, 33, 33, + 0, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 0, 0, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 24, + 24, 24, 24, 24, 24, 24, 24, 255, + 255, 255, 24, 24, 24, 24, 24, 24, + 255, 255, 24, 24, 24, 24, 24, 24, + 255, 255, 24, 24, 24, 24, 24, 24, + 255, 255, 24, 24, 24, 255, 255, 255, + 0, 0, 0, 0, 0, 0, 0, 255, + 0, 0, 0, 0, 0, 0, 0, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 0, 0, 0, 0, 0, 255, 255, + 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 255, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 255, + 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 255, 47, 47, 255, 47, + 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 255, 255, + 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 47, 47, 47, 47, 47, + 47, 47, 47, 255, 255, 255, 255, 255, + 0, 0, 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, 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, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 37, 37, 37, 37, 37, 37, 37, 37, + 37, 37, 37, 37, 37, 37, 37, 37, + 37, 37, 37, 37, 37, 37, 37, 37, + 37, 37, 37, 37, 37, 37, 37, 255, + 37, 37, 37, 37, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 38, 38, 38, 38, 38, 38, 38, 38, + 38, 38, 38, 38, 38, 38, 38, 38, + 38, 38, 38, 38, 38, 38, 38, 38, + 38, 38, 38, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 48, 48, 48, 48, 48, 48, 48, 48, + 48, 48, 48, 48, 48, 48, 48, 48, + 48, 48, 48, 48, 48, 48, 48, 48, + 48, 48, 48, 48, 48, 48, 255, 48, + 59, 59, 59, 59, 59, 59, 59, 59, + 59, 59, 59, 59, 59, 59, 59, 59, + 59, 59, 59, 59, 59, 59, 59, 59, + 59, 59, 59, 59, 59, 59, 59, 59, + 59, 59, 59, 59, 255, 255, 255, 255, + 59, 59, 59, 59, 59, 59, 59, 59, + 59, 59, 59, 59, 59, 59, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 39, 39, 39, 39, 39, 39, 39, 39, + 39, 39, 39, 39, 39, 39, 39, 39, + 39, 39, 39, 39, 39, 39, 39, 39, + 39, 39, 39, 39, 39, 39, 39, 39, + 39, 39, 39, 39, 39, 39, 39, 39, + 39, 39, 39, 39, 39, 39, 39, 39, + 39, 39, 39, 39, 39, 39, 39, 39, + 39, 39, 39, 39, 39, 39, 39, 39, + 39, 39, 39, 39, 39, 39, 39, 39, + 39, 39, 39, 39, 39, 39, 39, 39, + 49, 49, 49, 49, 49, 49, 49, 49, + 49, 49, 49, 49, 49, 49, 49, 49, + 49, 49, 49, 49, 49, 49, 49, 49, + 49, 49, 49, 49, 49, 49, 49, 49, + 49, 49, 49, 49, 49, 49, 49, 49, + 49, 49, 49, 49, 49, 49, 49, 49, + 50, 50, 50, 50, 50, 50, 50, 50, + 50, 50, 50, 50, 50, 50, 50, 50, + 50, 50, 50, 50, 50, 50, 50, 50, + 50, 50, 50, 50, 50, 50, 255, 255, + 50, 50, 50, 50, 50, 50, 50, 50, + 50, 50, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 51, 51, 51, 51, 51, 51, 255, 255, + 51, 255, 51, 51, 51, 51, 51, 51, + 51, 51, 51, 51, 51, 51, 51, 51, + 51, 51, 51, 51, 51, 51, 51, 51, + 51, 51, 51, 51, 51, 51, 51, 51, + 51, 51, 51, 51, 51, 51, 51, 51, + 51, 51, 51, 51, 51, 51, 255, 51, + 51, 255, 255, 255, 51, 255, 255, 51, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 63, 63, 63, 63, 63, 63, 63, 63, + 63, 63, 63, 63, 63, 63, 63, 63, + 63, 63, 63, 63, 63, 63, 63, 63, + 63, 63, 255, 255, 255, 255, 255, 63, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 60, 60, 60, 60, 255, 60, 60, 255, + 255, 255, 255, 255, 60, 60, 60, 60, + 60, 60, 60, 60, 255, 60, 60, 60, + 255, 60, 60, 60, 60, 60, 60, 60, + 60, 60, 60, 60, 60, 60, 60, 60, + 60, 60, 60, 60, 60, 60, 60, 60, + 60, 60, 60, 60, 255, 255, 255, 255, + 60, 60, 60, 255, 255, 255, 255, 60, + 60, 60, 60, 60, 60, 60, 60, 60, + 255, 255, 255, 255, 255, 255, 255, 255, + 60, 60, 60, 60, 60, 60, 60, 60, + 60, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 62, 62, 62, 62, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 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, 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, 40, + 40, 40, 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, 0, 0, 40, 40, 40, + 40, 40, 40, 40, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 40, 40, 40, 40, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 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, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 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, 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, + 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, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 255, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 255, 0, 0, + 255, 255, 0, 255, 255, 0, 0, 255, + 255, 0, 0, 0, 0, 255, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 255, 0, 255, 0, 0, 0, + 0, 0, 0, 0, 255, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 255, 0, + 0, 0, 0, 255, 255, 0, 0, 0, + 0, 0, 0, 0, 0, 255, 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, 255, 0, 0, 0, 0, 255, + 0, 0, 0, 0, 0, 255, 0, 255, + 255, 255, 0, 0, 0, 0, 0, 0, + 0, 255, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 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, 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, + 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, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 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, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 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, 255, 255, 255, 255, 255, + 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, 0, 0, + 0, 0, 0, 0, 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, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 40, 40, 40, 40, 40, 40, 40, 40, + 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 255 + } +}; diff --git a/lib/unictype/scripts_byname.gperf b/lib/unictype/scripts_byname.gperf new file mode 100644 index 000000000..056326caf --- /dev/null +++ b/lib/unictype/scripts_byname.gperf @@ -0,0 +1,78 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Unicode scripts. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +struct named_script { const char *name; unsigned int index; }; +%struct-type +%language=ANSI-C +%define hash-function-name scripts_hash +%define lookup-function-name uc_script_lookup +%readonly-tables +%global-table +%define word-array-name script_names +%% +Common, 0 +Latin, 1 +Greek, 2 +Cyrillic, 3 +Armenian, 4 +Hebrew, 5 +Arabic, 6 +Syriac, 7 +Thaana, 8 +Devanagari, 9 +Bengali, 10 +Gurmukhi, 11 +Gujarati, 12 +Oriya, 13 +Tamil, 14 +Telugu, 15 +Kannada, 16 +Malayalam, 17 +Sinhala, 18 +Thai, 19 +Lao, 20 +Tibetan, 21 +Myanmar, 22 +Georgian, 23 +Hangul, 24 +Ethiopic, 25 +Cherokee, 26 +Canadian_Aboriginal, 27 +Ogham, 28 +Runic, 29 +Khmer, 30 +Mongolian, 31 +Hiragana, 32 +Katakana, 33 +Bopomofo, 34 +Han, 35 +Yi, 36 +Old_Italic, 37 +Gothic, 38 +Deseret, 39 +Inherited, 40 +Tagalog, 41 +Hanunoo, 42 +Buhid, 43 +Tagbanwa, 44 +Limbu, 45 +Tai_Le, 46 +Linear_B, 47 +Ugaritic, 48 +Shavian, 49 +Osmanya, 50 +Cypriot, 51 +Braille, 52 +Buginese, 53 +Coptic, 54 +New_Tai_Lue, 55 +Glagolitic, 56 +Tifinagh, 57 +Syloti_Nagri, 58 +Old_Persian, 59 +Kharoshthi, 60 +Balinese, 61 +Cuneiform, 62 +Phoenician, 63 +Phags_Pa, 64 +Nko, 65 diff --git a/lib/unictype/sy_c_ident.c b/lib/unictype/sy_c_ident.c new file mode 100644 index 000000000..c6033c86f --- /dev/null +++ b/lib/unictype/sy_c_ident.c @@ -0,0 +1,31 @@ +/* Syntax properties of Unicode characters. + Copyright (C) 2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2007. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "sy_c_ident.h" +#define TABLE u_c_ident +#include "identsyntaxmap.h" + +int +uc_c_ident_category (ucs4_t uc) +{ + return identsyntax_lookup (uc); +} diff --git a/lib/unictype/sy_c_ident.h b/lib/unictype/sy_c_ident.h new file mode 100644 index 000000000..6073e9df9 --- /dev/null +++ b/lib/unictype/sy_c_ident.h @@ -0,0 +1,140 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Language syntax properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define identsyntax_header_0 12 +#define identsyntax_header_1 14 +#define identsyntax_header_2 7 +#define identsyntax_header_3 31 +#define identsyntax_header_4 127 +static const +struct + { + int level1[14]; + short level2[9 << 5]; + unsigned short level3[39 * 16]; + } +u_c_ident = +{ + { + 0, 32, 64, 96, 128, 160, 160, 160, + 160, 192, 224, 160, 160, 256 + }, + { + 0, 128, 256, 384, 512, 640, 768, 896, + 1024, 1152, 1280, 1408, 1536, 1664, -1, -1, + -1, -1, 1792, 1920, 2048, 2176, 2304, 2432, + 2560, 2688, 2816, -1, 2944, 3072, 3200, 3328, + -1, 3456, -1, -1, -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, 3584, 3712, 3840, + 3968, -1, 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, -1, -1, + 4352, 4480, 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, -1, -1, -1, -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, 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, 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, 4736, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 256, 256, 256, 256, 256, 256, 256, 256, + 256, 256, 256, 256, 256, 256, 256, 256, + 256, 256, 256, 256, 256, 256, 256, 4864, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1 + }, + { + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x5555, 0xaaa5, + 0x0002, 0x0000, 0x0000, 0x2a80, 0x0002, 0x0000, 0x0000, 0xaa80, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaa8a, 0x22aa, 0xaa8a, + 0x0000, 0x0000, 0x8000, 0x0000, 0x0000, 0x0000, 0x8000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa000, 0x000a, + 0x0000, 0x0000, 0x0000, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0xaaaa, 0xaaaa, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaaa8, 0x0000, 0x0228, + 0xaaa0, 0xaaaa, 0xaaa0, 0xaaaa, 0xa800, 0xaaaa, 0xaaaa, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaa8a, + 0x8aaa, 0x0880, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, + 0x0000, 0x8000, 0x8000, 0x888a, 0x0008, 0x0000, 0xaa00, 0xaaaa, + 0x0002, 0x0800, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0002, 0x0800, 0x0000, 0x0000, 0x0000, 0x0000, + 0xaaa0, 0xaaaa, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x2800, 0xa828, 0x0000, 0x0000, 0x0000, 0x0a00, 0xa000, 0xaaa0, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x0002, 0x0000, + 0x0000, 0x0000, 0x8000, 0xaaa2, 0x0002, 0x0000, 0x0000, 0x0000, + 0x0000, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x0000, 0x2020, + 0xaa82, 0xaaaa, 0x0000, 0x0000, 0x0000, 0xaa80, 0xaa80, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x0002, 0x0000, 0x0000, 0xaa80, + 0x0000, 0x0000, 0xaa80, 0xaaaa, 0x0000, 0xaaa0, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x800a, + 0x0000, 0x8000, 0x0000, 0xa800, 0x02aa, 0xa008, 0x0000, 0xaaa0, + 0x0202, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x02a0, + 0x0000, 0xa000, 0xaa80, 0x0000, 0x0a00, 0x0000, 0xaaaa, 0xaaaa, + 0x0202, 0x2800, 0x0028, 0x0000, 0x0000, 0x0008, 0x0a88, 0x0aa0, + 0x2800, 0xa028, 0xaaaa, 0x20aa, 0x0a00, 0x0000, 0xaaa0, 0xaaaa, + 0x028a, 0x2a80, 0x0028, 0x0000, 0x0000, 0x0008, 0x8208, 0x0aa0, + 0x2a80, 0xa028, 0xaaaa, 0x8802, 0x0aaa, 0x0000, 0xa8aa, 0xaaaa, + 0x0202, 0x2200, 0x0020, 0x0000, 0x0000, 0x0008, 0x0208, 0x02a0, + 0x2000, 0xa020, 0xaaa8, 0xaaaa, 0x0aa8, 0x0000, 0xaaaa, 0xaaaa, + 0x0202, 0x2800, 0x0028, 0x0000, 0x0000, 0x0008, 0x0a08, 0x02a0, + 0x2a00, 0xa028, 0xaaaa, 0x20aa, 0x0aa0, 0x0000, 0xaaaa, 0xaaaa, + 0x020a, 0x0a80, 0xa008, 0x0882, 0xa82a, 0x0a80, 0x2000, 0x0aa0, + 0x0a80, 0xa008, 0xaaaa, 0xaaaa, 0x2aaa, 0x0000, 0xaaaa, 0xaaaa, + 0x0202, 0x0800, 0x0008, 0x0000, 0x0000, 0x0008, 0x0200, 0x0aa0, + 0x0800, 0xa008, 0xaaaa, 0xaaaa, 0x0aa0, 0x0000, 0xaaaa, 0xaaaa, + 0x020a, 0x0800, 0x0008, 0x0000, 0x0000, 0x0008, 0x0200, 0x0aa0, + 0x0800, 0xa008, 0xaaaa, 0x8aaa, 0x0aa0, 0x0000, 0xaaaa, 0xaaaa, + 0x020a, 0x0800, 0x0008, 0x0000, 0x0000, 0x0008, 0x0000, 0x0aa0, + 0x0a00, 0xa008, 0xaaaa, 0xaaaa, 0x0aa0, 0x0000, 0xaaaa, 0xaaaa, + 0x0002, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaa80, + 0x0000, 0x0000, 0x0000, 0xaa00, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x2882, 0xa288, 0x00aa, 0x0002, 0x2202, 0x820a, 0x0000, 0xa020, + 0x8800, 0xa000, 0x0000, 0xa0a0, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0xaaa8, 0xaaaa, 0xaaaa, 0xaaa0, 0x0000, 0x0000, 0x2200, 0x0aa2, + 0x0000, 0x0002, 0x0000, 0x0000, 0x0000, 0xaaa0, 0x0002, 0x0000, + 0x0800, 0xaa00, 0x2000, 0x0002, 0x0000, 0xa000, 0x0002, 0xaaa2, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x0000, 0x0000, 0x0000, 0x0000, + 0xa000, 0xaaaa, 0x0000, 0x0000, 0x0000, 0x0000, 0x8000, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0xaa00, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaaa0, + 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, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x2aaa, + 0xaaa8, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x2aaa, + 0x2a8a, 0x000a, 0xa200, 0xa000, 0x88aa, 0x0008, 0x0020, 0xaaa8, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x0000, 0x0000, 0x0000, 0x0000, + 0xaa80, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x02aa, 0xaaaa, 0xaaaa, 0xaaaa, 0x0002, 0xaaa0, 0xaaaa, 0xaaaa, + 0x0002, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0xaa00, 0xa82a, 0x0002, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8000, 0xa82a, + 0x02aa, 0x0000, 0x0000, 0x0000, 0x0000, 0xa800, 0xaaaa, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0x0000, 0xa000, 0xaaaa, 0xaaaa, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0x0000, 0xaa00, 0xaaaa, 0xaaaa, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa + } +}; diff --git a/lib/unictype/sy_c_whitespace.c b/lib/unictype/sy_c_whitespace.c new file mode 100644 index 000000000..6d996a6fc --- /dev/null +++ b/lib/unictype/sy_c_whitespace.c @@ -0,0 +1,27 @@ +/* Syntax properties of Unicode characters. + Copyright (C) 2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2007. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +bool +uc_is_c_whitespace (ucs4_t uc) +{ + return (uc == ' ' || (uc <= 0x000D && uc >= 0x0009)); +} diff --git a/lib/unictype/sy_c_whitespace.h b/lib/unictype/sy_c_whitespace.h new file mode 100644 index 000000000..1beab040d --- /dev/null +++ b/lib/unictype/sy_c_whitespace.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Language syntax properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[1 << 4]; + } +u_c_whitespace = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00003E00, 0x00000001, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/lib/unictype/sy_java_ident.c b/lib/unictype/sy_java_ident.c new file mode 100644 index 000000000..b0770d6ed --- /dev/null +++ b/lib/unictype/sy_java_ident.c @@ -0,0 +1,31 @@ +/* Syntax properties of Unicode characters. + Copyright (C) 2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2007. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +#include "sy_java_ident.h" +#define TABLE u_java_ident +#include "identsyntaxmap.h" + +int +uc_java_ident_category (ucs4_t uc) +{ + return identsyntax_lookup (uc); +} diff --git a/lib/unictype/sy_java_ident.h b/lib/unictype/sy_java_ident.h new file mode 100644 index 000000000..c537ade16 --- /dev/null +++ b/lib/unictype/sy_java_ident.h @@ -0,0 +1,323 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Language syntax properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define identsyntax_header_0 12 +#define identsyntax_header_1 225 +#define identsyntax_header_2 7 +#define identsyntax_header_3 31 +#define identsyntax_header_4 127 +static const +struct + { + int level1[225]; + short level2[16 << 5]; + unsigned short level3[103 * 16]; + } +u_java_ident = +{ + { + 0, 32, 64, 96, 128, 160, 160, 160, + 160, 192, 224, 160, 160, 256, -1, 288, + 320, -1, 352, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 384, -1, -1, + 160, 160, 160, 160, 160, 160, 160, 160, + 160, 160, 416, -1, -1, -1, -1, 448, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 480 + }, + { + 0, 128, 256, 256, 256, 384, 512, 640, + 256, 768, 896, 1024, 1152, 1280, 1408, 1536, + -1, -1, 1664, 1792, 1920, 2048, 2176, 2304, + 2432, 2560, 2688, 2816, 2944, 3072, 3200, 3328, + 3456, 3584, 3712, 3840, 3968, 4096, 4224, 4352, + 4480, 256, 256, 256, 4608, 4736, 4864, 4992, + 5120, 5248, 5376, 5504, 5632, -1, 5760, -1, + -1, -1, 256, 5888, 256, 6016, 6144, 6272, + 6400, 6528, 6656, 6784, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 6912, 7040, 7168, 7296, -1, -1, -1, -1, + 7424, 7552, 7680, 7808, -1, -1, -1, -1, + 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, + 256, 256, 256, 256, 256, 256, 256, 256, + 256, 256, 256, 256, 256, 256, 256, 256, + 256, 256, 256, 7936, 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, 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, 256, 256, 256, 8064, + 256, 256, 256, 256, 256, 256, 256, 256, + 256, 8192, -1, -1, -1, -1, 8320, -1, + 8448, -1, -1, -1, -1, -1, -1, -1, + 256, 256, 256, 256, 256, 256, 256, 256, + 256, 256, 256, 256, 256, 256, 256, 256, + 256, 256, 256, 256, 256, 256, 256, 8576, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -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, 8704, 8832, 8960, 9088, + 256, 256, 9216, 9344, 9472, 9600, 9728, 9856, + 9984, 10112, 10240, -1, -1, -1, 10368, 10496, + 256, 10624, -1, -1, -1, -1, -1, -1, + 10752, -1, 10880, -1, 11008, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 256, 256, 256, 256, 256, 256, 11136, -1, + 11264, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 11392, 11520, 11648, -1, -1, -1, + 11776, 11904, 12032, 256, 256, 12160, 12288, 12416, + -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, 12544, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -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, 12672, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 12800, -1, 12928, 13056, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1 + }, + { + 0xffff, 0xfaab, 0xffff, 0xaaff, 0xa8aa, 0xaaaa, 0x5555, 0xaaa5, + 0x0002, 0x0000, 0x0000, 0x2a80, 0x0002, 0x0000, 0x0000, 0xea80, + 0xffff, 0xffff, 0xffff, 0xffff, 0xa00a, 0xae8a, 0xa2aa, 0xaa8a, + 0x0000, 0x0000, 0x8000, 0x0000, 0x0000, 0x0000, 0x8000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0aa0, 0x0000, 0xaaa0, 0xaaaa, 0xa800, 0x8aaa, 0xaaaa, 0xaaaa, + 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, + 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0xaaaa, 0xa00a, + 0x8aaa, 0x0880, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000, 0x0000, + 0x0000, 0x8000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2000, 0x0000, + 0x9560, 0x000a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0xaa00, 0xaaaa, 0xaaaa, 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, 0xa555, 0xaaaa, 0x0002, 0x0000, 0x0000, 0xaa80, + 0x0000, 0x5540, 0x5555, 0x9555, 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, + 0x5555, 0x0295, 0x0000, 0x0000, 0x0000, 0xa000, 0xaaaa, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0x0000, 0x5000, 0x5555, 0xaaa1, 0xaaaa, + 0x5555, 0x0005, 0x0000, 0x0000, 0x0000, 0x5540, 0xa055, 0xaa8a, + 0x0056, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x51a0, + 0x5555, 0xa555, 0xa954, 0x0000, 0x5a50, 0x5555, 0xaaaa, 0x002a, + 0x0256, 0x2800, 0x0028, 0x0000, 0x0000, 0x0008, 0x0a88, 0x51a0, + 0x6955, 0x8569, 0x6aaa, 0x20aa, 0x5a50, 0x5555, 0xaa00, 0xaaaa, + 0x0256, 0x2a80, 0x0028, 0x0000, 0x0000, 0x0008, 0x8208, 0x59a0, + 0x6a95, 0xa569, 0xaaaa, 0x8802, 0x5aaa, 0x5555, 0xa805, 0xaaaa, + 0x0256, 0x2000, 0x0020, 0x0000, 0x0000, 0x0008, 0x0208, 0x51a0, + 0x6555, 0xa565, 0xaaa8, 0xaaaa, 0x5a50, 0x5555, 0xaaa2, 0xaaaa, + 0x0256, 0x2800, 0x0028, 0x0000, 0x0000, 0x0008, 0x0208, 0x51a0, + 0x6a55, 0xa569, 0x5aaa, 0x20aa, 0x5aa0, 0x5555, 0xaaa2, 0xaaaa, + 0x021a, 0x0a80, 0xa008, 0x0882, 0xa82a, 0x0a80, 0x0000, 0x5aa0, + 0x5a95, 0xa559, 0x6aaa, 0xaaaa, 0x5aaa, 0x5555, 0xaaaa, 0xaaa2, + 0x0256, 0x0800, 0x0008, 0x0000, 0x0000, 0x0008, 0x0200, 0x5aa0, + 0x5955, 0xa559, 0x96aa, 0xaaaa, 0x5aa0, 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, 0x5aa0, + 0x5a55, 0xa559, 0x6aaa, 0xaaaa, 0x5aa0, 0x5555, 0xaaaa, 0xaaaa, + 0x025a, 0x0000, 0x8000, 0x000a, 0x0000, 0x0000, 0x0020, 0xa200, + 0x8000, 0x6a9a, 0x9955, 0x5555, 0xaaaa, 0xaaaa, 0xaa5a, 0xaaaa, + 0x0002, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5504, 0x2a95, + 0x4000, 0x9555, 0x5555, 0xaaa5, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x2882, 0xa288, 0x00aa, 0x0002, 0x2202, 0x020a, 0x5504, 0xa165, + 0x8800, 0xa555, 0x5555, 0xa0a5, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0xaaa8, 0xaaaa, 0xaaaa, 0xaaa5, 0x5555, 0xaaa5, 0x66aa, 0x5aa6, + 0x0000, 0x0002, 0x0000, 0x0000, 0x0000, 0xaa80, 0x5556, 0x5555, + 0x5955, 0xaa00, 0x5555, 0x5556, 0x5555, 0x5555, 0x5555, 0xa955, + 0x9aaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x5582, 0x5a95, 0xaaa5, + 0x5555, 0xaaa5, 0x5000, 0xaaa5, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x0000, 0x0000, 0x0000, 0x0000, + 0xa000, 0xaaaa, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa880, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x2aa0, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xaa80, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaaa0, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0xa008, 0x8000, 0xa008, 0x0000, 0x0000, 0x0000, 0x0000, + 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, 0xaaaa, 0xaaaa, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa800, 0xaaaa, + 0x0002, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2800, 0x8000, 0xaaaa, + 0x0002, 0x0000, 0x0000, 0xaa80, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0a80, 0xaaa8, 0xaaaa, + 0x0000, 0x0800, 0xa950, 0xaaaa, 0x0000, 0x0000, 0xa950, 0xaaaa, + 0x0000, 0x0000, 0xaa50, 0xaaaa, 0x0000, 0x0800, 0xaa58, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5f00, 0x5555, + 0x5555, 0x5555, 0x2a55, 0xa42a, 0x5555, 0xaaa5, 0xaaaa, 0xaaaa, + 0xaaaa, 0xa56a, 0x5555, 0xaaa5, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaaa4, 0xaaaa, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0xa800, 0x5555, 0xaa55, 0x5555, 0xaa55, + 0x5aaa, 0x5555, 0x0000, 0x0000, 0x0000, 0xa000, 0xa800, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaaa0, 0x5555, 0x5555, + 0x0001, 0xaaa5, 0x5555, 0xaaa5, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x0000, 0x0000, 0x4000, 0xaa55, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x0155, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x5500, 0x5555, + 0x0155, 0xaa00, 0x5555, 0xaaa5, 0xaaaa, 0x556a, 0xaa55, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x5555, 0xaa95, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x5aaa, + 0x0000, 0x0000, 0x0000, 0xaa00, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaaa0, + 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, 0xaaff, 0xfffa, 0xaaa2, 0x2aaa, + 0xaaaa, 0xaaaa, 0xa800, 0xaaaa, 0x0000, 0x0000, 0xa000, 0xaaaa, + 0xaaaa, 0xaaaa, 0x5555, 0xa955, 0x56a6, 0x5555, 0xaaaa, 0xaaaa, + 0x2a8a, 0x000a, 0xa200, 0xa002, 0x88aa, 0x2008, 0x0000, 0x00a0, + 0x02aa, 0x8aa0, 0xaaaa, 0xaaaa, 0x0000, 0x0000, 0x0000, 0x0000, + 0xa800, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x8000, 0x0000, 0xa800, 0x00aa, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xa800, 0xaaaa, 0xaaaa, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0x0000, 0xa000, 0xaaaa, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xa000, 0x2aaa, 0xaaaa, 0xaaaa, + 0x0000, 0x0000, 0x8000, 0xaaaa, 0x8000, 0x8000, 0x8000, 0x8000, + 0x8000, 0x8000, 0x8000, 0x8000, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x02aa, 0xaaaa, 0xaaaa, 0xaaaa, 0x0002, 0x5550, 0xa002, 0xa800, + 0x0002, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x8000, 0x0296, 0x0002, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0080, + 0x02aa, 0x0000, 0x0000, 0x0000, 0x0000, 0xa800, 0x0002, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x8000, 0xaaaa, 0xaaaa, 0x0000, 0x0000, 0x0000, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa000, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaa00, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x0000, 0xa800, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0xaaaa, 0xaaaa, 0x2aaa, 0xaa80, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x1010, 0x0040, 0x0000, 0x0000, 0x5540, 0xaaaa, 0xaaaa, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaa00, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0x0000, 0xaa00, 0xaaaa, 0xaaaa, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaa80, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0xaaa0, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x8000, 0xaaaa, 0x002a, 0x12aa, 0x0000, 0x0008, 0x8000, 0x8800, + 0x0820, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaaa0, 0xaaaa, + 0xaaaa, 0xaaaa, 0x002a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa000, + 0xaaaa, 0xaaaa, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x000a, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x0000, 0xa800, + 0x5555, 0x5555, 0xaaaa, 0xaaaa, 0xaa55, 0xaaaa, 0xa82a, 0xaaaa, + 0xaaaa, 0x02aa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaa2, 0x0800, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xe800, + 0xa8aa, 0xaaaa, 0x5555, 0xaaa5, 0x0002, 0x0000, 0x0000, 0x2a80, + 0x0002, 0x0000, 0x0000, 0xaa80, 0x0aaa, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8000, + 0x000a, 0x000a, 0x000a, 0xa80a, 0x82a0, 0xaaaa, 0xaaaa, 0xaafe, + 0x0000, 0x0200, 0x0000, 0x0000, 0x8000, 0x0000, 0x0000, 0x2080, + 0x0000, 0xa000, 0x0000, 0xa000, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xaa80, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xa800, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0x8000, 0xaaaa, 0xaaaa, 0x0000, 0x0000, + 0x0000, 0xaa80, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0xa000, 0x0000, 0x0000, 0x0000, 0x0000, + 0xaa00, 0x0000, 0xa002, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0xa000, 0x5555, 0xaaa5, 0xaaaa, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0xa000, 0x0008, 0x0000, 0x0000, 0x0000, 0x0000, 0x2000, 0x28a8, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x0000, 0x0000, 0xa000, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x9654, 0x55aa, 0x0200, 0x0002, 0x0000, 0x0000, 0xaa00, 0x6a95, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x8000, 0xaaaa, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xaa80, 0xaaaa, 0xaaaa, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0x56aa, 0x56a5, 0xffd5, 0x557f, + 0x5695, 0xaa55, 0xaaaa, 0xaaaa, 0xaaaa, 0xa55a, 0xaaaa, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0xa95a, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0800, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0800, 0x828a, 0x0802, 0x0000, 0x0220, + 0x0200, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x2000, 0x0280, 0x0800, 0x0800, 0x0000, 0x0000, 0x0000, 0x8020, + 0x8800, 0x000a, 0x0008, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0xa000, 0x0000, 0x0000, 0x0000, + 0x0008, 0x0000, 0x0000, 0x0080, 0x0000, 0x0000, 0x0000, 0x0080, + 0x0000, 0x0000, 0x0800, 0x0000, 0x0000, 0x0000, 0x0800, 0x0000, + 0x0000, 0x8000, 0x0000, 0x0000, 0x0000, 0x8000, 0x0000, 0x0000, + 0x0000, 0x0008, 0x0000, 0x0000, 0x0000, 0x0008, 0x0000, 0x0000, + 0x0080, 0x5a00, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, + 0x0000, 0x0000, 0x8000, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0x0000, 0x0000, 0x0000, 0xa000, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, 0xaaaa, + 0xaaae, 0xaaaa, 0xaaaa, 0xaaaa, 0xffff, 0xffff, 0xffff, 0xffff, + 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, + 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, + 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, + 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, + 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0x5555, 0xaaaa, 0xaaaa + } +}; diff --git a/lib/unictype/sy_java_whitespace.c b/lib/unictype/sy_java_whitespace.c new file mode 100644 index 000000000..4b56f3e35 --- /dev/null +++ b/lib/unictype/sy_java_whitespace.c @@ -0,0 +1,27 @@ +/* Syntax properties of Unicode characters. + Copyright (C) 2007 Free Software Foundation, Inc. + Written by Bruno Haible , 2007. + + This program is free software: you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program. If not, see . */ + +#include + +/* Specification. */ +#include "unictype.h" + +bool +uc_is_java_whitespace (ucs4_t uc) +{ + return (uc == ' ' || (uc <= 0x000D && uc >= 0x0009 && uc != 0x000B)); +} diff --git a/lib/unictype/sy_java_whitespace.h b/lib/unictype/sy_java_whitespace.h new file mode 100644 index 000000000..e2ae52b7b --- /dev/null +++ b/lib/unictype/sy_java_whitespace.h @@ -0,0 +1,156 @@ +/* DO NOT EDIT! GENERATED AUTOMATICALLY! */ +/* Language syntax properties of Unicode characters. */ +/* Generated automatically by gen-ctype.c for Unicode 5.0.0. */ +#define header_0 16 +#define header_2 9 +#define header_3 127 +#define header_4 15 +static const +struct + { + int header[1]; + int level1[1]; + short level2[1 << 7]; + /*unsigned*/ int level3[1 << 4]; + } +u_java_whitespace = +{ + { 1 }, + { 2 * sizeof (int) / sizeof (short) + 0 }, + { + 2 + 128 * sizeof (short) / sizeof (int) + 0, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1, + -1 + }, + { + 0x00003600, 0x00000001, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x00000000, 0x00000000 + } +}; diff --git a/modules/unictype/base b/modules/unictype/base new file mode 100644 index 000000000..e28769812 --- /dev/null +++ b/modules/unictype/base @@ -0,0 +1,23 @@ +Description: +Base layer for Unicode classification and properties. + +Files: +lib/unictype.h + +Depends-on: +unitypes +stdbool + +configure.ac: + +Makefile.am: + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/bidicategory-all b/modules/unictype/bidicategory-all new file mode 100644 index 000000000..9e7aaa755 --- /dev/null +++ b/modules/unictype/bidicategory-all @@ -0,0 +1,25 @@ +Description: +Complete API for Unicode character bidi categories. + +Files: + +Depends-on: +unictype/base +unictype/bidicategory-byname +unictype/bidicategory-name +unictype/bidicategory-of +unictype/bidicategory-test + +configure.ac: + +Makefile.am: + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/bidicategory-byname b/modules/unictype/bidicategory-byname new file mode 100644 index 000000000..8185a5013 --- /dev/null +++ b/modules/unictype/bidicategory-byname @@ -0,0 +1,23 @@ +Description: +Find a Unicode character bidi category, given its name. + +Files: +lib/unictype/bidi_byname.c + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/bidi_byname.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/bidicategory-name b/modules/unictype/bidicategory-name new file mode 100644 index 000000000..49c151a9b --- /dev/null +++ b/modules/unictype/bidicategory-name @@ -0,0 +1,23 @@ +Description: +Name of Unicode character bidi category. + +Files: +lib/unictype/bidi_name.c + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/bidi_name.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/bidicategory-of b/modules/unictype/bidicategory-of new file mode 100644 index 000000000..77bf27896 --- /dev/null +++ b/modules/unictype/bidicategory-of @@ -0,0 +1,24 @@ +Description: +Determine bidi category of a Unicode character. + +Files: +lib/unictype/bidi_of.c +lib/unictype/bidi_of.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/bidi_of.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/bidicategory-test b/modules/unictype/bidicategory-test new file mode 100644 index 000000000..6f5a2fdbf --- /dev/null +++ b/modules/unictype/bidicategory-test @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character belongs to a given bidi category. + +Files: +lib/unictype/bidi_test.c + +Depends-on: +unictype/base +unictype/bidicategory-of + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/bidi_test.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/block-all b/modules/unictype/block-all new file mode 100644 index 000000000..92de85620 --- /dev/null +++ b/modules/unictype/block-all @@ -0,0 +1,23 @@ +Description: +Complete API for blocks of Unicode characters. + +Files: + +Depends-on: +unictype/block-of +unictype/block-test +unictype/block-list + +configure.ac: + +Makefile.am: + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/block-list b/modules/unictype/block-list new file mode 100644 index 000000000..095f71e9d --- /dev/null +++ b/modules/unictype/block-list @@ -0,0 +1,24 @@ +Description: +List of Unicode character blocks. + +Files: +lib/unictype/blocks.c +lib/unictype/blocks.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/blocks.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/block-of b/modules/unictype/block-of new file mode 100644 index 000000000..d5bd19358 --- /dev/null +++ b/modules/unictype/block-of @@ -0,0 +1,22 @@ +Description: +Determine block of a Unicode character. + +Files: + +Depends-on: +unictype/base +unictype/block-list + +configure.ac: + +Makefile.am: + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/block-test b/modules/unictype/block-test new file mode 100644 index 000000000..14f047823 --- /dev/null +++ b/modules/unictype/block-test @@ -0,0 +1,23 @@ +Description: +Test whether a Unicode character belongs to a given Unicode block. + +Files: +lib/unictype/block_test.c + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/block_test.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-C b/modules/unictype/category-C new file mode 100644 index 000000000..d9986830c --- /dev/null +++ b/modules/unictype/category-C @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category C. + +Files: +lib/unictype/categ_C.c +lib/unictype/categ_C.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_C.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Cc b/modules/unictype/category-Cc new file mode 100644 index 000000000..a97ee1cb2 --- /dev/null +++ b/modules/unictype/category-Cc @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Cc. + +Files: +lib/unictype/categ_Cc.c +lib/unictype/categ_Cc.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Cc.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Cf b/modules/unictype/category-Cf new file mode 100644 index 000000000..b00396493 --- /dev/null +++ b/modules/unictype/category-Cf @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Cf. + +Files: +lib/unictype/categ_Cf.c +lib/unictype/categ_Cf.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Cf.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Cn b/modules/unictype/category-Cn new file mode 100644 index 000000000..93a65b3b0 --- /dev/null +++ b/modules/unictype/category-Cn @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Cn. + +Files: +lib/unictype/categ_Cn.c +lib/unictype/categ_Cn.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Cn.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Co b/modules/unictype/category-Co new file mode 100644 index 000000000..215769625 --- /dev/null +++ b/modules/unictype/category-Co @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Co. + +Files: +lib/unictype/categ_Co.c +lib/unictype/categ_Co.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Co.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Cs b/modules/unictype/category-Cs new file mode 100644 index 000000000..cc3d32efe --- /dev/null +++ b/modules/unictype/category-Cs @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Cs. + +Files: +lib/unictype/categ_Cs.c +lib/unictype/categ_Cs.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Cs.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-L b/modules/unictype/category-L new file mode 100644 index 000000000..56a5b574a --- /dev/null +++ b/modules/unictype/category-L @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category L. + +Files: +lib/unictype/categ_L.c +lib/unictype/categ_L.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_L.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Ll b/modules/unictype/category-Ll new file mode 100644 index 000000000..4b9e763a3 --- /dev/null +++ b/modules/unictype/category-Ll @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Ll. + +Files: +lib/unictype/categ_Ll.c +lib/unictype/categ_Ll.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Ll.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Lm b/modules/unictype/category-Lm new file mode 100644 index 000000000..8d3625f06 --- /dev/null +++ b/modules/unictype/category-Lm @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Lm. + +Files: +lib/unictype/categ_Lm.c +lib/unictype/categ_Lm.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Lm.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Lo b/modules/unictype/category-Lo new file mode 100644 index 000000000..8417a10f8 --- /dev/null +++ b/modules/unictype/category-Lo @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Lo. + +Files: +lib/unictype/categ_Lo.c +lib/unictype/categ_Lo.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Lo.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Lt b/modules/unictype/category-Lt new file mode 100644 index 000000000..4bbdee962 --- /dev/null +++ b/modules/unictype/category-Lt @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Lt. + +Files: +lib/unictype/categ_Lt.c +lib/unictype/categ_Lt.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Lt.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Lu b/modules/unictype/category-Lu new file mode 100644 index 000000000..ffd78dad2 --- /dev/null +++ b/modules/unictype/category-Lu @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Lu. + +Files: +lib/unictype/categ_Lu.c +lib/unictype/categ_Lu.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Lu.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-M b/modules/unictype/category-M new file mode 100644 index 000000000..73ecb1428 --- /dev/null +++ b/modules/unictype/category-M @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category M. + +Files: +lib/unictype/categ_M.c +lib/unictype/categ_M.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_M.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Mc b/modules/unictype/category-Mc new file mode 100644 index 000000000..a917309dc --- /dev/null +++ b/modules/unictype/category-Mc @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Mc. + +Files: +lib/unictype/categ_Mc.c +lib/unictype/categ_Mc.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Mc.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Me b/modules/unictype/category-Me new file mode 100644 index 000000000..f3bdb9afa --- /dev/null +++ b/modules/unictype/category-Me @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Me. + +Files: +lib/unictype/categ_Me.c +lib/unictype/categ_Me.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Me.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Mn b/modules/unictype/category-Mn new file mode 100644 index 000000000..567e2f129 --- /dev/null +++ b/modules/unictype/category-Mn @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Mn. + +Files: +lib/unictype/categ_Mn.c +lib/unictype/categ_Mn.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Mn.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-N b/modules/unictype/category-N new file mode 100644 index 000000000..48e33e541 --- /dev/null +++ b/modules/unictype/category-N @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category N. + +Files: +lib/unictype/categ_N.c +lib/unictype/categ_N.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_N.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Nd b/modules/unictype/category-Nd new file mode 100644 index 000000000..5efaa2135 --- /dev/null +++ b/modules/unictype/category-Nd @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Nd. + +Files: +lib/unictype/categ_Nd.c +lib/unictype/categ_Nd.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Nd.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Nl b/modules/unictype/category-Nl new file mode 100644 index 000000000..e9dd8a27e --- /dev/null +++ b/modules/unictype/category-Nl @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Nl. + +Files: +lib/unictype/categ_Nl.c +lib/unictype/categ_Nl.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Nl.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-No b/modules/unictype/category-No new file mode 100644 index 000000000..a59a89df6 --- /dev/null +++ b/modules/unictype/category-No @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category No. + +Files: +lib/unictype/categ_No.c +lib/unictype/categ_No.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_No.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-P b/modules/unictype/category-P new file mode 100644 index 000000000..608dd79a2 --- /dev/null +++ b/modules/unictype/category-P @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category P. + +Files: +lib/unictype/categ_P.c +lib/unictype/categ_P.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_P.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Pc b/modules/unictype/category-Pc new file mode 100644 index 000000000..7656bcc20 --- /dev/null +++ b/modules/unictype/category-Pc @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Pc. + +Files: +lib/unictype/categ_Pc.c +lib/unictype/categ_Pc.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Pc.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Pd b/modules/unictype/category-Pd new file mode 100644 index 000000000..b179d8a49 --- /dev/null +++ b/modules/unictype/category-Pd @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Pd. + +Files: +lib/unictype/categ_Pd.c +lib/unictype/categ_Pd.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Pd.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Pe b/modules/unictype/category-Pe new file mode 100644 index 000000000..ca3521a7d --- /dev/null +++ b/modules/unictype/category-Pe @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Pe. + +Files: +lib/unictype/categ_Pe.c +lib/unictype/categ_Pe.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Pe.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Pf b/modules/unictype/category-Pf new file mode 100644 index 000000000..d7449942f --- /dev/null +++ b/modules/unictype/category-Pf @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Pf. + +Files: +lib/unictype/categ_Pf.c +lib/unictype/categ_Pf.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Pf.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Pi b/modules/unictype/category-Pi new file mode 100644 index 000000000..b52882aa1 --- /dev/null +++ b/modules/unictype/category-Pi @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Pi. + +Files: +lib/unictype/categ_Pi.c +lib/unictype/categ_Pi.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Pi.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Po b/modules/unictype/category-Po new file mode 100644 index 000000000..1e0ef658a --- /dev/null +++ b/modules/unictype/category-Po @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Po. + +Files: +lib/unictype/categ_Po.c +lib/unictype/categ_Po.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Po.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Ps b/modules/unictype/category-Ps new file mode 100644 index 000000000..45957c4bd --- /dev/null +++ b/modules/unictype/category-Ps @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Ps. + +Files: +lib/unictype/categ_Ps.c +lib/unictype/categ_Ps.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Ps.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-S b/modules/unictype/category-S new file mode 100644 index 000000000..86f589d1f --- /dev/null +++ b/modules/unictype/category-S @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category S. + +Files: +lib/unictype/categ_S.c +lib/unictype/categ_S.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_S.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Sc b/modules/unictype/category-Sc new file mode 100644 index 000000000..c1f5b33c3 --- /dev/null +++ b/modules/unictype/category-Sc @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Sc. + +Files: +lib/unictype/categ_Sc.c +lib/unictype/categ_Sc.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Sc.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Sk b/modules/unictype/category-Sk new file mode 100644 index 000000000..3b9476e14 --- /dev/null +++ b/modules/unictype/category-Sk @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Sk. + +Files: +lib/unictype/categ_Sk.c +lib/unictype/categ_Sk.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Sk.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Sm b/modules/unictype/category-Sm new file mode 100644 index 000000000..1c2c4b4f7 --- /dev/null +++ b/modules/unictype/category-Sm @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Sm. + +Files: +lib/unictype/categ_Sm.c +lib/unictype/categ_Sm.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Sm.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-So b/modules/unictype/category-So new file mode 100644 index 000000000..fcc65f342 --- /dev/null +++ b/modules/unictype/category-So @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category So. + +Files: +lib/unictype/categ_So.c +lib/unictype/categ_So.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_So.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Z b/modules/unictype/category-Z new file mode 100644 index 000000000..13475d51f --- /dev/null +++ b/modules/unictype/category-Z @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Z. + +Files: +lib/unictype/categ_Z.c +lib/unictype/categ_Z.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Z.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Zl b/modules/unictype/category-Zl new file mode 100644 index 000000000..b50bf2772 --- /dev/null +++ b/modules/unictype/category-Zl @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Zl. + +Files: +lib/unictype/categ_Zl.c +lib/unictype/categ_Zl.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Zl.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Zp b/modules/unictype/category-Zp new file mode 100644 index 000000000..9bf8f7543 --- /dev/null +++ b/modules/unictype/category-Zp @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Zp. + +Files: +lib/unictype/categ_Zp.c +lib/unictype/categ_Zp.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Zp.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-Zs b/modules/unictype/category-Zs new file mode 100644 index 000000000..19fa62258 --- /dev/null +++ b/modules/unictype/category-Zs @@ -0,0 +1,24 @@ +Description: +Test whether a Unicode character is of general category Zs. + +Files: +lib/unictype/categ_Zs.c +lib/unictype/categ_Zs.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_Zs.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-all b/modules/unictype/category-all new file mode 100644 index 000000000..c1b14486c --- /dev/null +++ b/modules/unictype/category-all @@ -0,0 +1,65 @@ +Description: +Complete API for Unicode character categories. + +Files: + +Depends-on: +unictype/category-C +unictype/category-Cc +unictype/category-Cf +unictype/category-Cn +unictype/category-Co +unictype/category-Cs +unictype/category-L +unictype/category-Ll +unictype/category-Lm +unictype/category-Lo +unictype/category-Lt +unictype/category-Lu +unictype/category-M +unictype/category-Mc +unictype/category-Me +unictype/category-Mn +unictype/category-N +unictype/category-Nd +unictype/category-Nl +unictype/category-No +unictype/category-P +unictype/category-Pc +unictype/category-Pd +unictype/category-Pe +unictype/category-Pf +unictype/category-Pi +unictype/category-Po +unictype/category-Ps +unictype/category-S +unictype/category-Sc +unictype/category-Sk +unictype/category-Sm +unictype/category-So +unictype/category-Z +unictype/category-Zl +unictype/category-Zp +unictype/category-Zs +unictype/category-and +unictype/category-and-not +unictype/category-byname +unictype/category-name +unictype/category-of +unictype/category-or +unictype/category-test +unictype/category-test-withtable + +configure.ac: + +Makefile.am: + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-and b/modules/unictype/category-and new file mode 100644 index 000000000..5d0a9b9ef --- /dev/null +++ b/modules/unictype/category-and @@ -0,0 +1,25 @@ +Description: +Intersection of categories of Unicode characters. + +Files: +lib/unictype/categ_and.c + +Depends-on: +unictype/base +unictype/category-none +unictype/category-test-withtable + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_and.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-and-not b/modules/unictype/category-and-not new file mode 100644 index 000000000..58925cf36 --- /dev/null +++ b/modules/unictype/category-and-not @@ -0,0 +1,25 @@ +Description: +Set-difference of categories of Unicode characters. + +Files: +lib/unictype/categ_and_not.c + +Depends-on: +unictype/base +unictype/category-none +unictype/category-test-withtable + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_and_not.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-byname b/modules/unictype/category-byname new file mode 100644 index 000000000..bbc567912 --- /dev/null +++ b/modules/unictype/category-byname @@ -0,0 +1,61 @@ +Description: +Find a Unicode character category, given its name. + +Files: +lib/unictype/categ_byname.c + +Depends-on: +unictype/base +unictype/category-C +unictype/category-Cc +unictype/category-Cf +unictype/category-Cn +unictype/category-Co +unictype/category-Cs +unictype/category-L +unictype/category-Ll +unictype/category-Lm +unictype/category-Lo +unictype/category-Lt +unictype/category-Lu +unictype/category-M +unictype/category-Mc +unictype/category-Me +unictype/category-Mn +unictype/category-N +unictype/category-Nd +unictype/category-Nl +unictype/category-No +unictype/category-P +unictype/category-Pc +unictype/category-Pd +unictype/category-Pe +unictype/category-Pf +unictype/category-Pi +unictype/category-Po +unictype/category-Ps +unictype/category-S +unictype/category-Sc +unictype/category-Sk +unictype/category-Sm +unictype/category-So +unictype/category-Z +unictype/category-Zl +unictype/category-Zp +unictype/category-Zs +unictype/category-none + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_byname.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-name b/modules/unictype/category-name new file mode 100644 index 000000000..ef0b1d667 --- /dev/null +++ b/modules/unictype/category-name @@ -0,0 +1,23 @@ +Description: +Name of Unicode character category. + +Files: +lib/unictype/categ_name.c + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_name.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-none b/modules/unictype/category-none new file mode 100644 index 000000000..0c76d796b --- /dev/null +++ b/modules/unictype/category-none @@ -0,0 +1,23 @@ +Description: +Empty category of Unicode characters. + +Files: +lib/unictype/categ_none.c + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_none.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-of b/modules/unictype/category-of new file mode 100644 index 000000000..d58947aac --- /dev/null +++ b/modules/unictype/category-of @@ -0,0 +1,25 @@ +Description: +Determine category of a Unicode character. + +Files: +lib/unictype/categ_of.c +lib/unictype/categ_of.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_of.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-or b/modules/unictype/category-or new file mode 100644 index 000000000..072ab8a7e --- /dev/null +++ b/modules/unictype/category-or @@ -0,0 +1,24 @@ +Description: +Union of categories of Unicode characters. + +Files: +lib/unictype/categ_or.c + +Depends-on: +unictype/base +unictype/category-test-withtable + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_or.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-test b/modules/unictype/category-test new file mode 100644 index 000000000..78b5b49ba --- /dev/null +++ b/modules/unictype/category-test @@ -0,0 +1,25 @@ +Description: +Test whether a Unicode character belongs to a given category. + +Files: +lib/unictype/categ_test.c +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/categ_test.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/category-test-withtable b/modules/unictype/category-test-withtable new file mode 100644 index 000000000..73b7a33f3 --- /dev/null +++ b/modules/unictype/category-test-withtable @@ -0,0 +1,22 @@ +Description: +Test whether a Unicode character belongs to a given bitmask of categories. + +Files: + +Depends-on: +unictype/base +unictype/category-of + +configure.ac: + +Makefile.am: + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/combining-class b/modules/unictype/combining-class new file mode 100644 index 000000000..17079025d --- /dev/null +++ b/modules/unictype/combining-class @@ -0,0 +1,24 @@ +Description: +Determine combining class of a Unicode character. + +Files: +lib/unictype/combining.c +lib/unictype/combining.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/combining.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/ctype-alnum b/modules/unictype/ctype-alnum new file mode 100644 index 000000000..fd7f52bb6 --- /dev/null +++ b/modules/unictype/ctype-alnum @@ -0,0 +1,26 @@ +Description: +Generalization of isalnum() and iswalnum(). + +Files: +lib/unictype/ctype_alnum.c +lib/unictype/ctype_alnum.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/ctype_alnum.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/ctype-alpha b/modules/unictype/ctype-alpha new file mode 100644 index 000000000..e0f474d1f --- /dev/null +++ b/modules/unictype/ctype-alpha @@ -0,0 +1,26 @@ +Description: +Generalization of isalpha() and iswalpha(). + +Files: +lib/unictype/ctype_alpha.c +lib/unictype/ctype_alpha.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/ctype_alpha.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/ctype-blank b/modules/unictype/ctype-blank new file mode 100644 index 000000000..72845ad53 --- /dev/null +++ b/modules/unictype/ctype-blank @@ -0,0 +1,26 @@ +Description: +Generalization of isblank() and iswblank(). + +Files: +lib/unictype/ctype_blank.c +lib/unictype/ctype_blank.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/ctype_blank.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/ctype-cntrl b/modules/unictype/ctype-cntrl new file mode 100644 index 000000000..7de3e0520 --- /dev/null +++ b/modules/unictype/ctype-cntrl @@ -0,0 +1,26 @@ +Description: +Generalization of iscntrl() and iswcntrl(). + +Files: +lib/unictype/ctype_cntrl.c +lib/unictype/ctype_cntrl.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/ctype_cntrl.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/ctype-digit b/modules/unictype/ctype-digit new file mode 100644 index 000000000..51814929d --- /dev/null +++ b/modules/unictype/ctype-digit @@ -0,0 +1,26 @@ +Description: +Generalization of isdigit() and iswdigit(). + +Files: +lib/unictype/ctype_digit.c +lib/unictype/ctype_digit.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/ctype_digit.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/ctype-graph b/modules/unictype/ctype-graph new file mode 100644 index 000000000..895970b84 --- /dev/null +++ b/modules/unictype/ctype-graph @@ -0,0 +1,26 @@ +Description: +Generalization of isgraph() and iswgraph(). + +Files: +lib/unictype/ctype_graph.c +lib/unictype/ctype_graph.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/ctype_graph.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/ctype-lower b/modules/unictype/ctype-lower new file mode 100644 index 000000000..126feb821 --- /dev/null +++ b/modules/unictype/ctype-lower @@ -0,0 +1,26 @@ +Description: +Generalization of islower() and iswlower(). + +Files: +lib/unictype/ctype_lower.c +lib/unictype/ctype_lower.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/ctype_lower.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/ctype-print b/modules/unictype/ctype-print new file mode 100644 index 000000000..b4e6f4f8c --- /dev/null +++ b/modules/unictype/ctype-print @@ -0,0 +1,26 @@ +Description: +Generalization of isprint() and iswprint(). + +Files: +lib/unictype/ctype_print.c +lib/unictype/ctype_print.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/ctype_print.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/ctype-punct b/modules/unictype/ctype-punct new file mode 100644 index 000000000..f4216a17b --- /dev/null +++ b/modules/unictype/ctype-punct @@ -0,0 +1,26 @@ +Description: +Generalization of ispunct() and iswpunct(). + +Files: +lib/unictype/ctype_punct.c +lib/unictype/ctype_punct.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/ctype_punct.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/ctype-space b/modules/unictype/ctype-space new file mode 100644 index 000000000..cc1ca30b5 --- /dev/null +++ b/modules/unictype/ctype-space @@ -0,0 +1,26 @@ +Description: +Generalization of isspace() and iswspace(). + +Files: +lib/unictype/ctype_space.c +lib/unictype/ctype_space.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/ctype_space.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/ctype-upper b/modules/unictype/ctype-upper new file mode 100644 index 000000000..37d476761 --- /dev/null +++ b/modules/unictype/ctype-upper @@ -0,0 +1,26 @@ +Description: +Generalization of isupper() and iswupper(). + +Files: +lib/unictype/ctype_upper.c +lib/unictype/ctype_upper.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/ctype_upper.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/ctype-xdigit b/modules/unictype/ctype-xdigit new file mode 100644 index 000000000..483e2b890 --- /dev/null +++ b/modules/unictype/ctype-xdigit @@ -0,0 +1,26 @@ +Description: +Generalization of isxdigit() and iswxdigit(). + +Files: +lib/unictype/ctype_xdigit.c +lib/unictype/ctype_xdigit.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/ctype_xdigit.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/decimal-digit b/modules/unictype/decimal-digit new file mode 100644 index 000000000..7802f436b --- /dev/null +++ b/modules/unictype/decimal-digit @@ -0,0 +1,24 @@ +Description: +Value of a decimal digit Unicode character. + +Files: +lib/unictype/decdigit.c +lib/unictype/decdigit.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/decdigit.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/digit b/modules/unictype/digit new file mode 100644 index 000000000..7c89e5b52 --- /dev/null +++ b/modules/unictype/digit @@ -0,0 +1,24 @@ +Description: +Value of a digit Unicode character. + +Files: +lib/unictype/digit.c +lib/unictype/digit.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/digit.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/mirror b/modules/unictype/mirror new file mode 100644 index 000000000..99d2d619d --- /dev/null +++ b/modules/unictype/mirror @@ -0,0 +1,24 @@ +Description: +Mirrored Unicode characters. + +Files: +lib/unictype/mirror.c +lib/unictype/mirror.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/mirror.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/numeric b/modules/unictype/numeric new file mode 100644 index 000000000..1a65f0752 --- /dev/null +++ b/modules/unictype/numeric @@ -0,0 +1,24 @@ +Description: +Value of a numeric Unicode character. + +Files: +lib/unictype/numeric.c +lib/unictype/numeric.h + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/numeric.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-all b/modules/unictype/property-all new file mode 100644 index 000000000..01b01a785 --- /dev/null +++ b/modules/unictype/property-all @@ -0,0 +1,101 @@ +Description: +Complete API for Unicode character properties. + +Files: + +Depends-on: +unictype/property-alphabetic +unictype/property-ascii-hex-digit +unictype/property-bidi-arabic-digit +unictype/property-bidi-arabic-right-to-left +unictype/property-bidi-block-separator +unictype/property-bidi-boundary-neutral +unictype/property-bidi-common-separator +unictype/property-bidi-control +unictype/property-bidi-embedding-or-override +unictype/property-bidi-eur-num-separator +unictype/property-bidi-eur-num-terminator +unictype/property-bidi-european-digit +unictype/property-bidi-hebrew-right-to-left +unictype/property-bidi-left-to-right +unictype/property-bidi-non-spacing-mark +unictype/property-bidi-other-neutral +unictype/property-bidi-pdf +unictype/property-bidi-segment-separator +unictype/property-bidi-whitespace +unictype/property-byname +unictype/property-combining +unictype/property-composite +unictype/property-currency-symbol +unictype/property-dash +unictype/property-decimal-digit +unictype/property-default-ignorable-code-point +unictype/property-deprecated +unictype/property-diacritic +unictype/property-extender +unictype/property-format-control +unictype/property-grapheme-base +unictype/property-grapheme-extend +unictype/property-grapheme-link +unictype/property-hex-digit +unictype/property-hyphen +unictype/property-id-continue +unictype/property-id-start +unictype/property-ideographic +unictype/property-ids-binary-operator +unictype/property-ids-trinary-operator +unictype/property-ignorable-control +unictype/property-iso-control +unictype/property-join-control +unictype/property-left-of-pair +unictype/property-line-separator +unictype/property-logical-order-exception +unictype/property-lowercase +unictype/property-math +unictype/property-non-break +unictype/property-not-a-character +unictype/property-numeric +unictype/property-other-alphabetic +unictype/property-other-default-ignorable-code-point +unictype/property-other-grapheme-extend +unictype/property-other-id-continue +unictype/property-other-id-start +unictype/property-other-lowercase +unictype/property-other-math +unictype/property-other-uppercase +unictype/property-paired-punctuation +unictype/property-paragraph-separator +unictype/property-pattern-syntax +unictype/property-pattern-white-space +unictype/property-private-use +unictype/property-punctuation +unictype/property-quotation-mark +unictype/property-radical +unictype/property-sentence-terminal +unictype/property-soft-dotted +unictype/property-space +unictype/property-terminal-punctuation +unictype/property-test +unictype/property-titlecase +unictype/property-unassigned-code-value +unictype/property-unified-ideograph +unictype/property-uppercase +unictype/property-variation-selector +unictype/property-white-space +unictype/property-xid-continue +unictype/property-xid-start +unictype/property-zero-width + +configure.ac: + +Makefile.am: + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-alphabetic b/modules/unictype/property-alphabetic new file mode 100644 index 000000000..a98b6e448 --- /dev/null +++ b/modules/unictype/property-alphabetic @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "alphabetic". + +Files: +lib/unictype/pr_alphabetic.c +lib/unictype/pr_alphabetic.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_alphabetic.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-ascii-hex-digit b/modules/unictype/property-ascii-hex-digit new file mode 100644 index 000000000..1f2ae82f0 --- /dev/null +++ b/modules/unictype/property-ascii-hex-digit @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "ascii hex digit". + +Files: +lib/unictype/pr_ascii_hex_digit.c +lib/unictype/pr_ascii_hex_digit.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_ascii_hex_digit.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-bidi-arabic-digit b/modules/unictype/property-bidi-arabic-digit new file mode 100644 index 000000000..ad60f3ea7 --- /dev/null +++ b/modules/unictype/property-bidi-arabic-digit @@ -0,0 +1,27 @@ +Description: +Test whether a Unicode character is "bidi arabic digit". + +Files: +lib/unictype/pr_bidi_arabic_digit.c +lib/unictype/pr_bidi_arabic_digit.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +unictype/bidicategory-of +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_bidi_arabic_digit.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-bidi-arabic-right-to-left b/modules/unictype/property-bidi-arabic-right-to-left new file mode 100644 index 000000000..2a2a4268f --- /dev/null +++ b/modules/unictype/property-bidi-arabic-right-to-left @@ -0,0 +1,27 @@ +Description: +Test whether a Unicode character is "bidi arabic right to left". + +Files: +lib/unictype/pr_bidi_arabic_right_to_left.c +lib/unictype/pr_bidi_arabic_right_to_left.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +unictype/bidicategory-of +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_bidi_arabic_right_to_left.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-bidi-block-separator b/modules/unictype/property-bidi-block-separator new file mode 100644 index 000000000..f3b7579f9 --- /dev/null +++ b/modules/unictype/property-bidi-block-separator @@ -0,0 +1,27 @@ +Description: +Test whether a Unicode character is "bidi block separator". + +Files: +lib/unictype/pr_bidi_block_separator.c +lib/unictype/pr_bidi_block_separator.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +unictype/bidicategory-of +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_bidi_block_separator.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-bidi-boundary-neutral b/modules/unictype/property-bidi-boundary-neutral new file mode 100644 index 000000000..8267ad47a --- /dev/null +++ b/modules/unictype/property-bidi-boundary-neutral @@ -0,0 +1,27 @@ +Description: +Test whether a Unicode character is "bidi boundary neutral". + +Files: +lib/unictype/pr_bidi_boundary_neutral.c +lib/unictype/pr_bidi_boundary_neutral.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +unictype/bidicategory-of +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_bidi_boundary_neutral.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-bidi-common-separator b/modules/unictype/property-bidi-common-separator new file mode 100644 index 000000000..332ed7098 --- /dev/null +++ b/modules/unictype/property-bidi-common-separator @@ -0,0 +1,27 @@ +Description: +Test whether a Unicode character is "bidi common separator". + +Files: +lib/unictype/pr_bidi_common_separator.c +lib/unictype/pr_bidi_common_separator.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +unictype/bidicategory-of +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_bidi_common_separator.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-bidi-control b/modules/unictype/property-bidi-control new file mode 100644 index 000000000..8c01433d6 --- /dev/null +++ b/modules/unictype/property-bidi-control @@ -0,0 +1,27 @@ +Description: +Test whether a Unicode character is "bidi control". + +Files: +lib/unictype/pr_bidi_control.c +lib/unictype/pr_bidi_control.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +unictype/bidicategory-of +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_bidi_control.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-bidi-embedding-or-override b/modules/unictype/property-bidi-embedding-or-override new file mode 100644 index 000000000..ad9d606ce --- /dev/null +++ b/modules/unictype/property-bidi-embedding-or-override @@ -0,0 +1,27 @@ +Description: +Test whether a Unicode character is "bidi embedding or override". + +Files: +lib/unictype/pr_bidi_embedding_or_override.c +lib/unictype/pr_bidi_embedding_or_override.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +unictype/bidicategory-of +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_bidi_embedding_or_override.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-bidi-eur-num-separator b/modules/unictype/property-bidi-eur-num-separator new file mode 100644 index 000000000..6b04ba671 --- /dev/null +++ b/modules/unictype/property-bidi-eur-num-separator @@ -0,0 +1,27 @@ +Description: +Test whether a Unicode character is "bidi eur num separator". + +Files: +lib/unictype/pr_bidi_eur_num_separator.c +lib/unictype/pr_bidi_eur_num_separator.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +unictype/bidicategory-of +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_bidi_eur_num_separator.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-bidi-eur-num-terminator b/modules/unictype/property-bidi-eur-num-terminator new file mode 100644 index 000000000..34b75de91 --- /dev/null +++ b/modules/unictype/property-bidi-eur-num-terminator @@ -0,0 +1,27 @@ +Description: +Test whether a Unicode character is "bidi eur num terminator". + +Files: +lib/unictype/pr_bidi_eur_num_terminator.c +lib/unictype/pr_bidi_eur_num_terminator.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +unictype/bidicategory-of +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_bidi_eur_num_terminator.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-bidi-european-digit b/modules/unictype/property-bidi-european-digit new file mode 100644 index 000000000..fedd47590 --- /dev/null +++ b/modules/unictype/property-bidi-european-digit @@ -0,0 +1,27 @@ +Description: +Test whether a Unicode character is "bidi european digit". + +Files: +lib/unictype/pr_bidi_european_digit.c +lib/unictype/pr_bidi_european_digit.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +unictype/bidicategory-of +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_bidi_european_digit.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-bidi-hebrew-right-to-left b/modules/unictype/property-bidi-hebrew-right-to-left new file mode 100644 index 000000000..12c793913 --- /dev/null +++ b/modules/unictype/property-bidi-hebrew-right-to-left @@ -0,0 +1,27 @@ +Description: +Test whether a Unicode character is "bidi hebrew right to left". + +Files: +lib/unictype/pr_bidi_hebrew_right_to_left.c +lib/unictype/pr_bidi_hebrew_right_to_left.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +unictype/bidicategory-of +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_bidi_hebrew_right_to_left.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-bidi-left-to-right b/modules/unictype/property-bidi-left-to-right new file mode 100644 index 000000000..7db4923f0 --- /dev/null +++ b/modules/unictype/property-bidi-left-to-right @@ -0,0 +1,27 @@ +Description: +Test whether a Unicode character is "bidi left to right". + +Files: +lib/unictype/pr_bidi_left_to_right.c +lib/unictype/pr_bidi_left_to_right.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +unictype/bidicategory-of +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_bidi_left_to_right.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-bidi-non-spacing-mark b/modules/unictype/property-bidi-non-spacing-mark new file mode 100644 index 000000000..973471388 --- /dev/null +++ b/modules/unictype/property-bidi-non-spacing-mark @@ -0,0 +1,27 @@ +Description: +Test whether a Unicode character is "bidi non spacing mark". + +Files: +lib/unictype/pr_bidi_non_spacing_mark.c +lib/unictype/pr_bidi_non_spacing_mark.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +unictype/bidicategory-of +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_bidi_non_spacing_mark.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-bidi-other-neutral b/modules/unictype/property-bidi-other-neutral new file mode 100644 index 000000000..c50c77836 --- /dev/null +++ b/modules/unictype/property-bidi-other-neutral @@ -0,0 +1,27 @@ +Description: +Test whether a Unicode character is "bidi other neutral". + +Files: +lib/unictype/pr_bidi_other_neutral.c +lib/unictype/pr_bidi_other_neutral.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +unictype/bidicategory-of +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_bidi_other_neutral.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-bidi-pdf b/modules/unictype/property-bidi-pdf new file mode 100644 index 000000000..7a5449445 --- /dev/null +++ b/modules/unictype/property-bidi-pdf @@ -0,0 +1,27 @@ +Description: +Test whether a Unicode character is "bidi pdf". + +Files: +lib/unictype/pr_bidi_pdf.c +lib/unictype/pr_bidi_pdf.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +unictype/bidicategory-of +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_bidi_pdf.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-bidi-segment-separator b/modules/unictype/property-bidi-segment-separator new file mode 100644 index 000000000..4ebd5825e --- /dev/null +++ b/modules/unictype/property-bidi-segment-separator @@ -0,0 +1,27 @@ +Description: +Test whether a Unicode character is "bidi segment separator". + +Files: +lib/unictype/pr_bidi_segment_separator.c +lib/unictype/pr_bidi_segment_separator.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +unictype/bidicategory-of +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_bidi_segment_separator.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-bidi-whitespace b/modules/unictype/property-bidi-whitespace new file mode 100644 index 000000000..adeebc74d --- /dev/null +++ b/modules/unictype/property-bidi-whitespace @@ -0,0 +1,27 @@ +Description: +Test whether a Unicode character is "bidi whitespace". + +Files: +lib/unictype/pr_bidi_whitespace.c +lib/unictype/pr_bidi_whitespace.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +unictype/bidicategory-of +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_bidi_whitespace.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-byname b/modules/unictype/property-byname new file mode 100644 index 000000000..fe5d600ee --- /dev/null +++ b/modules/unictype/property-byname @@ -0,0 +1,112 @@ +Description: +Find a Unicode character property, given its name. + +Files: +lib/unictype/pr_byname.c +lib/unictype/pr_byname.gperf + +Depends-on: +unictype/base +unictype/property-alphabetic +unictype/property-ascii-hex-digit +unictype/property-bidi-arabic-digit +unictype/property-bidi-arabic-right-to-left +unictype/property-bidi-block-separator +unictype/property-bidi-boundary-neutral +unictype/property-bidi-common-separator +unictype/property-bidi-control +unictype/property-bidi-embedding-or-override +unictype/property-bidi-eur-num-separator +unictype/property-bidi-eur-num-terminator +unictype/property-bidi-european-digit +unictype/property-bidi-hebrew-right-to-left +unictype/property-bidi-left-to-right +unictype/property-bidi-non-spacing-mark +unictype/property-bidi-other-neutral +unictype/property-bidi-pdf +unictype/property-bidi-segment-separator +unictype/property-bidi-whitespace +unictype/property-combining +unictype/property-composite +unictype/property-currency-symbol +unictype/property-dash +unictype/property-decimal-digit +unictype/property-default-ignorable-code-point +unictype/property-deprecated +unictype/property-diacritic +unictype/property-extender +unictype/property-format-control +unictype/property-grapheme-base +unictype/property-grapheme-extend +unictype/property-grapheme-link +unictype/property-hex-digit +unictype/property-hyphen +unictype/property-id-continue +unictype/property-id-start +unictype/property-ideographic +unictype/property-ids-binary-operator +unictype/property-ids-trinary-operator +unictype/property-ignorable-control +unictype/property-iso-control +unictype/property-join-control +unictype/property-left-of-pair +unictype/property-line-separator +unictype/property-logical-order-exception +unictype/property-lowercase +unictype/property-math +unictype/property-non-break +unictype/property-not-a-character +unictype/property-numeric +unictype/property-other-alphabetic +unictype/property-other-default-ignorable-code-point +unictype/property-other-grapheme-extend +unictype/property-other-id-continue +unictype/property-other-id-start +unictype/property-other-lowercase +unictype/property-other-math +unictype/property-other-uppercase +unictype/property-paired-punctuation +unictype/property-paragraph-separator +unictype/property-pattern-syntax +unictype/property-pattern-white-space +unictype/property-private-use +unictype/property-punctuation +unictype/property-quotation-mark +unictype/property-radical +unictype/property-sentence-terminal +unictype/property-soft-dotted +unictype/property-space +unictype/property-terminal-punctuation +unictype/property-titlecase +unictype/property-unassigned-code-value +unictype/property-unified-ideograph +unictype/property-uppercase +unictype/property-variation-selector +unictype/property-white-space +unictype/property-xid-continue +unictype/property-xid-start +unictype/property-zero-width +gperf + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_byname.c + +unictype/pr_byname.h: unictype/pr_byname.gperf + $(GPERF) -m 10 $(srcdir)/unictype/pr_byname.gperf > $@-t + mv $@-t $@ +BUILT_SOURCES += unictype/pr_byname.h +MOSTLYCLEANFILES += unictype/pr_byname.h-t +MAINTAINERCLEANFILES += unictype/pr_byname.h +EXTRA_DIST += unictype/pr_byname.h + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-combining b/modules/unictype/property-combining new file mode 100644 index 000000000..be2e9241b --- /dev/null +++ b/modules/unictype/property-combining @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "combining". + +Files: +lib/unictype/pr_combining.c +lib/unictype/pr_combining.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_combining.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-composite b/modules/unictype/property-composite new file mode 100644 index 000000000..a31b2952c --- /dev/null +++ b/modules/unictype/property-composite @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "composite". + +Files: +lib/unictype/pr_composite.c +lib/unictype/pr_composite.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_composite.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-currency-symbol b/modules/unictype/property-currency-symbol new file mode 100644 index 000000000..ddefdbbb3 --- /dev/null +++ b/modules/unictype/property-currency-symbol @@ -0,0 +1,28 @@ +Description: +Test whether a Unicode character is "currency symbol". + +Files: +lib/unictype/pr_currency_symbol.c +lib/unictype/pr_currency_symbol.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +unictype/category-test +unictype/category-Sc +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_currency_symbol.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-dash b/modules/unictype/property-dash new file mode 100644 index 000000000..73be13f61 --- /dev/null +++ b/modules/unictype/property-dash @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "dash". + +Files: +lib/unictype/pr_dash.c +lib/unictype/pr_dash.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_dash.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-decimal-digit b/modules/unictype/property-decimal-digit new file mode 100644 index 000000000..3d627a593 --- /dev/null +++ b/modules/unictype/property-decimal-digit @@ -0,0 +1,28 @@ +Description: +Test whether a Unicode character is "decimal digit". + +Files: +lib/unictype/pr_decimal_digit.c +lib/unictype/pr_decimal_digit.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +unictype/category-test +unictype/category-Nd +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_decimal_digit.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-default-ignorable-code-point b/modules/unictype/property-default-ignorable-code-point new file mode 100644 index 000000000..5cb4d9874 --- /dev/null +++ b/modules/unictype/property-default-ignorable-code-point @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "default ignorable code point". + +Files: +lib/unictype/pr_default_ignorable_code_point.c +lib/unictype/pr_default_ignorable_code_point.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_default_ignorable_code_point.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-deprecated b/modules/unictype/property-deprecated new file mode 100644 index 000000000..09f81d303 --- /dev/null +++ b/modules/unictype/property-deprecated @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "deprecated". + +Files: +lib/unictype/pr_deprecated.c +lib/unictype/pr_deprecated.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_deprecated.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-diacritic b/modules/unictype/property-diacritic new file mode 100644 index 000000000..3c7228f31 --- /dev/null +++ b/modules/unictype/property-diacritic @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "diacritic". + +Files: +lib/unictype/pr_diacritic.c +lib/unictype/pr_diacritic.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_diacritic.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-extender b/modules/unictype/property-extender new file mode 100644 index 000000000..90db26164 --- /dev/null +++ b/modules/unictype/property-extender @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "extender". + +Files: +lib/unictype/pr_extender.c +lib/unictype/pr_extender.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_extender.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-format-control b/modules/unictype/property-format-control new file mode 100644 index 000000000..399d5ee28 --- /dev/null +++ b/modules/unictype/property-format-control @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "format control". + +Files: +lib/unictype/pr_format_control.c +lib/unictype/pr_format_control.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_format_control.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-grapheme-base b/modules/unictype/property-grapheme-base new file mode 100644 index 000000000..29397a8f2 --- /dev/null +++ b/modules/unictype/property-grapheme-base @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "grapheme base". + +Files: +lib/unictype/pr_grapheme_base.c +lib/unictype/pr_grapheme_base.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_grapheme_base.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-grapheme-extend b/modules/unictype/property-grapheme-extend new file mode 100644 index 000000000..7f50ee546 --- /dev/null +++ b/modules/unictype/property-grapheme-extend @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "grapheme extend". + +Files: +lib/unictype/pr_grapheme_extend.c +lib/unictype/pr_grapheme_extend.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_grapheme_extend.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-grapheme-link b/modules/unictype/property-grapheme-link new file mode 100644 index 000000000..1074327bb --- /dev/null +++ b/modules/unictype/property-grapheme-link @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "grapheme link". + +Files: +lib/unictype/pr_grapheme_link.c +lib/unictype/pr_grapheme_link.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_grapheme_link.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-hex-digit b/modules/unictype/property-hex-digit new file mode 100644 index 000000000..3f256d033 --- /dev/null +++ b/modules/unictype/property-hex-digit @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "hex digit". + +Files: +lib/unictype/pr_hex_digit.c +lib/unictype/pr_hex_digit.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_hex_digit.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-hyphen b/modules/unictype/property-hyphen new file mode 100644 index 000000000..6244d518e --- /dev/null +++ b/modules/unictype/property-hyphen @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "hyphen". + +Files: +lib/unictype/pr_hyphen.c +lib/unictype/pr_hyphen.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_hyphen.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-id-continue b/modules/unictype/property-id-continue new file mode 100644 index 000000000..3880d3b17 --- /dev/null +++ b/modules/unictype/property-id-continue @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "id continue". + +Files: +lib/unictype/pr_id_continue.c +lib/unictype/pr_id_continue.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_id_continue.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-id-start b/modules/unictype/property-id-start new file mode 100644 index 000000000..5bae11dee --- /dev/null +++ b/modules/unictype/property-id-start @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "id start". + +Files: +lib/unictype/pr_id_start.c +lib/unictype/pr_id_start.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_id_start.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-ideographic b/modules/unictype/property-ideographic new file mode 100644 index 000000000..75dca3326 --- /dev/null +++ b/modules/unictype/property-ideographic @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "ideographic". + +Files: +lib/unictype/pr_ideographic.c +lib/unictype/pr_ideographic.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_ideographic.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-ids-binary-operator b/modules/unictype/property-ids-binary-operator new file mode 100644 index 000000000..f12bc934c --- /dev/null +++ b/modules/unictype/property-ids-binary-operator @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "ids binary operator". + +Files: +lib/unictype/pr_ids_binary_operator.c +lib/unictype/pr_ids_binary_operator.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_ids_binary_operator.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-ids-trinary-operator b/modules/unictype/property-ids-trinary-operator new file mode 100644 index 000000000..0ac5d32d1 --- /dev/null +++ b/modules/unictype/property-ids-trinary-operator @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "ids trinary operator". + +Files: +lib/unictype/pr_ids_trinary_operator.c +lib/unictype/pr_ids_trinary_operator.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_ids_trinary_operator.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-ignorable-control b/modules/unictype/property-ignorable-control new file mode 100644 index 000000000..229126950 --- /dev/null +++ b/modules/unictype/property-ignorable-control @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "ignorable control". + +Files: +lib/unictype/pr_ignorable_control.c +lib/unictype/pr_ignorable_control.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_ignorable_control.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-iso-control b/modules/unictype/property-iso-control new file mode 100644 index 000000000..e0fd89584 --- /dev/null +++ b/modules/unictype/property-iso-control @@ -0,0 +1,28 @@ +Description: +Test whether a Unicode character is "iso control". + +Files: +lib/unictype/pr_iso_control.c +lib/unictype/pr_iso_control.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +unictype/category-test +unictype/category-Cc +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_iso_control.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-join-control b/modules/unictype/property-join-control new file mode 100644 index 000000000..7b24cbc52 --- /dev/null +++ b/modules/unictype/property-join-control @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "join control". + +Files: +lib/unictype/pr_join_control.c +lib/unictype/pr_join_control.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_join_control.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-left-of-pair b/modules/unictype/property-left-of-pair new file mode 100644 index 000000000..ae47ceab2 --- /dev/null +++ b/modules/unictype/property-left-of-pair @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "left of pair". + +Files: +lib/unictype/pr_left_of_pair.c +lib/unictype/pr_left_of_pair.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_left_of_pair.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-line-separator b/modules/unictype/property-line-separator new file mode 100644 index 000000000..8a8325707 --- /dev/null +++ b/modules/unictype/property-line-separator @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "line separator". + +Files: +lib/unictype/pr_line_separator.c +lib/unictype/pr_line_separator.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_line_separator.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-logical-order-exception b/modules/unictype/property-logical-order-exception new file mode 100644 index 000000000..fdbf56beb --- /dev/null +++ b/modules/unictype/property-logical-order-exception @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "logical order exception". + +Files: +lib/unictype/pr_logical_order_exception.c +lib/unictype/pr_logical_order_exception.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_logical_order_exception.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-lowercase b/modules/unictype/property-lowercase new file mode 100644 index 000000000..f100343b7 --- /dev/null +++ b/modules/unictype/property-lowercase @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "lowercase". + +Files: +lib/unictype/pr_lowercase.c +lib/unictype/pr_lowercase.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_lowercase.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-math b/modules/unictype/property-math new file mode 100644 index 000000000..119cdd9f2 --- /dev/null +++ b/modules/unictype/property-math @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "math". + +Files: +lib/unictype/pr_math.c +lib/unictype/pr_math.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_math.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-non-break b/modules/unictype/property-non-break new file mode 100644 index 000000000..6ff647678 --- /dev/null +++ b/modules/unictype/property-non-break @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "non break". + +Files: +lib/unictype/pr_non_break.c +lib/unictype/pr_non_break.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_non_break.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-not-a-character b/modules/unictype/property-not-a-character new file mode 100644 index 000000000..2c0465f97 --- /dev/null +++ b/modules/unictype/property-not-a-character @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "not a character". + +Files: +lib/unictype/pr_not_a_character.c +lib/unictype/pr_not_a_character.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_not_a_character.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-numeric b/modules/unictype/property-numeric new file mode 100644 index 000000000..69bce9893 --- /dev/null +++ b/modules/unictype/property-numeric @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "numeric". + +Files: +lib/unictype/pr_numeric.c +lib/unictype/pr_numeric.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_numeric.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-other-alphabetic b/modules/unictype/property-other-alphabetic new file mode 100644 index 000000000..8b18c0c88 --- /dev/null +++ b/modules/unictype/property-other-alphabetic @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "other alphabetic". + +Files: +lib/unictype/pr_other_alphabetic.c +lib/unictype/pr_other_alphabetic.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_other_alphabetic.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-other-default-ignorable-code-point b/modules/unictype/property-other-default-ignorable-code-point new file mode 100644 index 000000000..ec3a7f335 --- /dev/null +++ b/modules/unictype/property-other-default-ignorable-code-point @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "other default ignorable code point". + +Files: +lib/unictype/pr_other_default_ignorable_code_point.c +lib/unictype/pr_other_default_ignorable_code_point.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_other_default_ignorable_code_point.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-other-grapheme-extend b/modules/unictype/property-other-grapheme-extend new file mode 100644 index 000000000..150c89f03 --- /dev/null +++ b/modules/unictype/property-other-grapheme-extend @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "other grapheme extend". + +Files: +lib/unictype/pr_other_grapheme_extend.c +lib/unictype/pr_other_grapheme_extend.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_other_grapheme_extend.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-other-id-continue b/modules/unictype/property-other-id-continue new file mode 100644 index 000000000..942e82dd3 --- /dev/null +++ b/modules/unictype/property-other-id-continue @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "other id continue". + +Files: +lib/unictype/pr_other_id_continue.c +lib/unictype/pr_other_id_continue.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_other_id_continue.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-other-id-start b/modules/unictype/property-other-id-start new file mode 100644 index 000000000..1335167dd --- /dev/null +++ b/modules/unictype/property-other-id-start @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "other id start". + +Files: +lib/unictype/pr_other_id_start.c +lib/unictype/pr_other_id_start.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_other_id_start.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-other-lowercase b/modules/unictype/property-other-lowercase new file mode 100644 index 000000000..05e2374fb --- /dev/null +++ b/modules/unictype/property-other-lowercase @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "other lowercase". + +Files: +lib/unictype/pr_other_lowercase.c +lib/unictype/pr_other_lowercase.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_other_lowercase.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-other-math b/modules/unictype/property-other-math new file mode 100644 index 000000000..e20025d54 --- /dev/null +++ b/modules/unictype/property-other-math @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "other math". + +Files: +lib/unictype/pr_other_math.c +lib/unictype/pr_other_math.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_other_math.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-other-uppercase b/modules/unictype/property-other-uppercase new file mode 100644 index 000000000..689891cba --- /dev/null +++ b/modules/unictype/property-other-uppercase @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "other uppercase". + +Files: +lib/unictype/pr_other_uppercase.c +lib/unictype/pr_other_uppercase.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_other_uppercase.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-paired-punctuation b/modules/unictype/property-paired-punctuation new file mode 100644 index 000000000..898c99d8b --- /dev/null +++ b/modules/unictype/property-paired-punctuation @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "paired punctuation". + +Files: +lib/unictype/pr_paired_punctuation.c +lib/unictype/pr_paired_punctuation.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_paired_punctuation.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-paragraph-separator b/modules/unictype/property-paragraph-separator new file mode 100644 index 000000000..72d047141 --- /dev/null +++ b/modules/unictype/property-paragraph-separator @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "paragraph separator". + +Files: +lib/unictype/pr_paragraph_separator.c +lib/unictype/pr_paragraph_separator.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_paragraph_separator.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-pattern-syntax b/modules/unictype/property-pattern-syntax new file mode 100644 index 000000000..d739eab66 --- /dev/null +++ b/modules/unictype/property-pattern-syntax @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "pattern syntax". + +Files: +lib/unictype/pr_pattern_syntax.c +lib/unictype/pr_pattern_syntax.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_pattern_syntax.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-pattern-white-space b/modules/unictype/property-pattern-white-space new file mode 100644 index 000000000..4ea34bcee --- /dev/null +++ b/modules/unictype/property-pattern-white-space @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "pattern white space". + +Files: +lib/unictype/pr_pattern_white_space.c +lib/unictype/pr_pattern_white_space.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_pattern_white_space.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-private-use b/modules/unictype/property-private-use new file mode 100644 index 000000000..9ca92c2fb --- /dev/null +++ b/modules/unictype/property-private-use @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "private use". + +Files: +lib/unictype/pr_private_use.c +lib/unictype/pr_private_use.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_private_use.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-punctuation b/modules/unictype/property-punctuation new file mode 100644 index 000000000..c4404ee8d --- /dev/null +++ b/modules/unictype/property-punctuation @@ -0,0 +1,28 @@ +Description: +Test whether a Unicode character is "punctuation". + +Files: +lib/unictype/pr_punctuation.c +lib/unictype/pr_punctuation.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +unictype/category-test +unictype/category-P +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_punctuation.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-quotation-mark b/modules/unictype/property-quotation-mark new file mode 100644 index 000000000..e2ded77a1 --- /dev/null +++ b/modules/unictype/property-quotation-mark @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "quotation mark". + +Files: +lib/unictype/pr_quotation_mark.c +lib/unictype/pr_quotation_mark.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_quotation_mark.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-radical b/modules/unictype/property-radical new file mode 100644 index 000000000..c7e48dcb0 --- /dev/null +++ b/modules/unictype/property-radical @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "radical". + +Files: +lib/unictype/pr_radical.c +lib/unictype/pr_radical.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_radical.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-sentence-terminal b/modules/unictype/property-sentence-terminal new file mode 100644 index 000000000..12106c1c6 --- /dev/null +++ b/modules/unictype/property-sentence-terminal @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "sentence terminal". + +Files: +lib/unictype/pr_sentence_terminal.c +lib/unictype/pr_sentence_terminal.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_sentence_terminal.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-soft-dotted b/modules/unictype/property-soft-dotted new file mode 100644 index 000000000..cd08545d2 --- /dev/null +++ b/modules/unictype/property-soft-dotted @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "soft dotted". + +Files: +lib/unictype/pr_soft_dotted.c +lib/unictype/pr_soft_dotted.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_soft_dotted.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-space b/modules/unictype/property-space new file mode 100644 index 000000000..d8ecf08ab --- /dev/null +++ b/modules/unictype/property-space @@ -0,0 +1,28 @@ +Description: +Test whether a Unicode character is "space". + +Files: +lib/unictype/pr_space.c +lib/unictype/pr_space.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +unictype/category-test +unictype/category-Zs +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_space.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-terminal-punctuation b/modules/unictype/property-terminal-punctuation new file mode 100644 index 000000000..e05c92587 --- /dev/null +++ b/modules/unictype/property-terminal-punctuation @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "terminal punctuation". + +Files: +lib/unictype/pr_terminal_punctuation.c +lib/unictype/pr_terminal_punctuation.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_terminal_punctuation.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-test b/modules/unictype/property-test new file mode 100644 index 000000000..385c08214 --- /dev/null +++ b/modules/unictype/property-test @@ -0,0 +1,23 @@ +Description: +Test whether a Unicode character has a given property. + +Files: +lib/unictype/pr_test.c + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_test.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-titlecase b/modules/unictype/property-titlecase new file mode 100644 index 000000000..a0138d352 --- /dev/null +++ b/modules/unictype/property-titlecase @@ -0,0 +1,28 @@ +Description: +Test whether a Unicode character is "titlecase". + +Files: +lib/unictype/pr_titlecase.c +lib/unictype/pr_titlecase.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +unictype/category-test +unictype/category-Lt +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_titlecase.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-unassigned-code-value b/modules/unictype/property-unassigned-code-value new file mode 100644 index 000000000..638e4b6d8 --- /dev/null +++ b/modules/unictype/property-unassigned-code-value @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "unassigned code value". + +Files: +lib/unictype/pr_unassigned_code_value.c +lib/unictype/pr_unassigned_code_value.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_unassigned_code_value.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-unified-ideograph b/modules/unictype/property-unified-ideograph new file mode 100644 index 000000000..c76b1967c --- /dev/null +++ b/modules/unictype/property-unified-ideograph @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "unified ideograph". + +Files: +lib/unictype/pr_unified_ideograph.c +lib/unictype/pr_unified_ideograph.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_unified_ideograph.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-uppercase b/modules/unictype/property-uppercase new file mode 100644 index 000000000..3cfecc470 --- /dev/null +++ b/modules/unictype/property-uppercase @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "uppercase". + +Files: +lib/unictype/pr_uppercase.c +lib/unictype/pr_uppercase.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_uppercase.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-variation-selector b/modules/unictype/property-variation-selector new file mode 100644 index 000000000..069648d96 --- /dev/null +++ b/modules/unictype/property-variation-selector @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "variation selector". + +Files: +lib/unictype/pr_variation_selector.c +lib/unictype/pr_variation_selector.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_variation_selector.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-white-space b/modules/unictype/property-white-space new file mode 100644 index 000000000..f83170483 --- /dev/null +++ b/modules/unictype/property-white-space @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "white space". + +Files: +lib/unictype/pr_white_space.c +lib/unictype/pr_white_space.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_white_space.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-xid-continue b/modules/unictype/property-xid-continue new file mode 100644 index 000000000..eed2f1c81 --- /dev/null +++ b/modules/unictype/property-xid-continue @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "xid continue". + +Files: +lib/unictype/pr_xid_continue.c +lib/unictype/pr_xid_continue.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_xid_continue.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-xid-start b/modules/unictype/property-xid-start new file mode 100644 index 000000000..d048a1d72 --- /dev/null +++ b/modules/unictype/property-xid-start @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "xid start". + +Files: +lib/unictype/pr_xid_start.c +lib/unictype/pr_xid_start.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_xid_start.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/property-zero-width b/modules/unictype/property-zero-width new file mode 100644 index 000000000..e1d202542 --- /dev/null +++ b/modules/unictype/property-zero-width @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character is "zero width". + +Files: +lib/unictype/pr_zero_width.c +lib/unictype/pr_zero_width.h +lib/unictype/bitmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/pr_zero_width.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/scripts b/modules/unictype/scripts new file mode 100644 index 000000000..54e93e954 --- /dev/null +++ b/modules/unictype/scripts @@ -0,0 +1,34 @@ +Description: +Scripts of Unicode characters. + +Files: +lib/unictype/scripts.c +lib/unictype/scripts.h +lib/unictype/scripts_byname.gperf + +Depends-on: +unictype/base +gperf + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/scripts.c + +unictype/scripts_byname.h: unictype/scripts_byname.gperf + $(GPERF) -m 10 $(srcdir)/unictype/scripts_byname.gperf > $@-t + mv $@-t $@ +BUILT_SOURCES += unictype/scripts_byname.h +MOSTLYCLEANFILES += unictype/scripts_byname.h-t +MAINTAINERCLEANFILES += unictype/scripts_byname.h +EXTRA_DIST += unictype/scripts_byname.h + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/scripts-all b/modules/unictype/scripts-all new file mode 100644 index 000000000..f209d622e --- /dev/null +++ b/modules/unictype/scripts-all @@ -0,0 +1,21 @@ +Description: +Complete API for scripts of Unicode characters. + +Files: + +Depends-on: +unictype/scripts + +configure.ac: + +Makefile.am: + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/syntax-c-ident b/modules/unictype/syntax-c-ident new file mode 100644 index 000000000..2c60d9fb0 --- /dev/null +++ b/modules/unictype/syntax-c-ident @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character can occur in identifiers in the C language. + +Files: +lib/unictype/sy_c_ident.c +lib/unictype/sy_c_ident.h +lib/unictype/identsyntaxmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/sy_c_ident.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/syntax-c-whitespace b/modules/unictype/syntax-c-whitespace new file mode 100644 index 000000000..8c5be57b3 --- /dev/null +++ b/modules/unictype/syntax-c-whitespace @@ -0,0 +1,23 @@ +Description: +Test whether a Unicode character is whitespace in the C language syntax. + +Files: +lib/unictype/sy_c_whitespace.c + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/sy_c_whitespace.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/syntax-java-ident b/modules/unictype/syntax-java-ident new file mode 100644 index 000000000..226dd7f66 --- /dev/null +++ b/modules/unictype/syntax-java-ident @@ -0,0 +1,26 @@ +Description: +Test whether a Unicode character can occur in identifiers in the Java language. + +Files: +lib/unictype/sy_java_ident.c +lib/unictype/sy_java_ident.h +lib/unictype/identsyntaxmap.h + +Depends-on: +unictype/base +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/sy_java_ident.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + diff --git a/modules/unictype/syntax-java-whitespace b/modules/unictype/syntax-java-whitespace new file mode 100644 index 000000000..85b0c5b39 --- /dev/null +++ b/modules/unictype/syntax-java-whitespace @@ -0,0 +1,23 @@ +Description: +Test whether a Unicode character is whitespace in the Java language syntax. + +Files: +lib/unictype/sy_java_whitespace.c + +Depends-on: +unictype/base + +configure.ac: + +Makefile.am: +lib_SOURCES += unictype/sy_java_whitespace.c + +Include: +"unictype.h" + +License: +LGPL + +Maintainer: +Bruno Haible + -- 2.11.0